Nothing Special   »   [go: up one dir, main page]

FB2 0805 en PDF

Download as pdf or txt
Download as pdf or txt
You are on page 1of 1238

Digital and Analog

NCK I/Os A4

Several Operator Panel


Fronts and NCUs B3

Operation via PC/PG B4

Remote Diagnostics F3

SINUMERIK 840D sl/840D/840Di/ Manual and Handwheel


Travel H1
SINUMERIK 810D
Compensations K3

Mode Groups, Channels,


Extended Functions Axis Replacement K5
(Part 2)
Kinematic Transformations M1

Measurement M5
Description of Functions
Software Cams, Position
Switching Signals N3

Punching and Nibbling N4

Positioning Axes P2

Oscillation P5

Rotary Axes R2

Synchronous Spindles S3

Synchronized Actions S. FBSY

Valid for Memory Configuration S7

Control Software Version Indexing Axes T1


SINUMERIK 840D sl 1.3
SINUMERIK 840D powerline 7.3 Tool Change W3
SINUMERIK 840DE powerline 7.3
SINUMERIK 840Di 2.3 Grinding-specific Tool
SINUMERIK 840DiE (export version) 2.3 Offset and Tool Monitoring W4
SINUMERIK 810D powerline 7.3
SINUMERIK 810DE powerline (exp.) 7.3 Index
SINAMICS 2.3

08/2005 Edition
SINUMERIK® Documentation

Printing history

Brief details of this edition and previous editions are listed below.

The status of each edition is shown by the code in the “Remarks” columns.

Status code in the “Remarks” column:

A . . . . . New documentation.
B . . . . . Unrevised reprint with new Order No.
C . . . . . Revised edition with new status.
If the technical subject matter shown on the page has changed compared to the
previous edition status, this is indicated by the changed edition status in the
header of the respective page.

Edition Order No. Comments


06.94 6FC5297-0AC30-0BP0 A
08.94 6FC5297-0AC30-0BP1 C
02.95 6FC5297-2AC30-0BP0 C
04.95 6FC5297-2AC30-0BP1 C
03.96 6FC5297-3AC30-0BP0 C
08.97 6FC5297-4AC30-0BP0 C
12.97 6FC5297-4AC30-0BP1 C
12.98 6FC5297-5AC30-0BP0 C
08.99 6FC5297-5AC30-0BP1 C
04.00 6FC5297-5AC30-0BP2 C
10.00 6FC5297-6AC30-0BP0 C
09.01 6FC5297-6AC30-0BP1 C
11.02 6FC5297-6AC30-0BP2 C
03.04 6FC5297-7AC30-0BP0 C
10.04 6FC5297-7AC30-0BP1 C
08.05 6FC5397-1BP10-0BA0 A

Trademarks
SIMATICr, SIMATIC HMIr, SIMATIC NETr, SIROTECr, SINUMERIKr, SIMODRIVEr and SINAMICSr
are Siemens trademarks. Other product names used in this documentation may be trademarks, which, if
used by third parties, could infringe the rights of their owners.

Other functions not described in this documentation may be


executable in the control. However, no claim can be made regarding
the availability of these functions when the equipment is first supplied
Further information is available in the Internet under: or in the event of servicing.
http://www.siemens.com/motioncontrol
We have checked that the contents of this document correspond to
This publication was produced with Interleaf V 7 the hardware and software described. Nevertheless, differences
might exist and we cannot, therefore, guarantee that they are
completely identical. The information contained in this document is,
however, reviewed regularly and any necessary changes will be
included in the next edition. We welcome suggestions for
improvement.

Copyright© Siemens AG, 2005. Subject to change without prior notice.

Order No. 6FC5397-1BP10-0BA0 Siemens Aktiengesellschaft


Printed in Germany
06.05

Preface

SINUMERIK The SINUMERIK documentation is subdivided into parts:


documentation
S General Documentation
S User Documentation
S Manufacturer/Service documentation
Please contact your local Siemens office for more detailed information about
other SINUMERIK 840D sl/840D/840Di/810D publications and publications that
apply to all SINUMERIK controls (e.g. universal interface, measuring cycles,
etc.).
An overview of publications, which is updated monthly and also provides infor-
mation about the language versions available, can be found on the Internet at:
http://www.siemens.com/motioncontrol
Follow menu items “Support” → “Technical Documentation” → “Overview of
Documents”.
The Internet version of DOConCD (DOConWEB) is available at:
http://www.automation.siemens.com/doconweb

Target audience This document is designed for machine tool manufacturers. It contains a de-
tailed description of the functions offered by SINUMERIK controls.

Standard version This Programming Guide describes the functionality afforded by standard func-
tions. Extensions or changes made by the machine tool manufacturer are docu-
mented by the machine tool manufacturer.
Other functions not described in this documentation might be executable in the
control. This does not, however, represent an obligation to supply such func-
tions with a new control or when servicing.

Hotline If you have any questions on the control, please get in touch with our hotline:

A&D Technical Support Phone: +49 (180) 5050 222


Fax: +49 (180) 5050-223
E-mail: mailto:adsupport@siemens.com
Internet: http://www.siemens.com/automation/support-request

If you have any questions about the documentation (suggestions for improve-
ment, corrections), please send a fax to the following number:
Fax: +49 (9131) 98-63315
E-mail: mailto:motioncontrol.docu@siemens.com

Fax form: Refer to the reply form at the end of this manual

Internet address http://www.siemens.com/motioncontrol

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition v
06.05

Objective The function descriptions provide the information required for configuration and
installation.

Target groups The information contained in the function descriptions is designed for:

S Design engineers
S PLC programmers creating the PLC user program with the signals listed
S Start-up engineers once the system has been configured and set up
S Maintenance personnel inspecting and interpreting status signals and
alarms

Structure of the This Function Manual is structured as follows:


manual
S General table of contents (overview) of the manual
S Descriptions of functions in alphanumeric order of the Description of Func-
tion codes

S Appendix with keyword index

Note
In addition to the keyword index, the Basic Machine Description of Functions
(Part 1) also contains a list of abbreviations and terms.

The following information is provided on each page:


Part of Description of Functions / Publication / Chapter – Page

If you require information about a function, you will find the function and the
code under which it is classified in the inside cover title of the manual.

If you need information about a certain term, please go to the section headed
Index in the Appendix and look for the term concerned. The Description of
Functions code, the chapter number and the number of the page on which you
can find the information you need are listed in this section.

Chapters 4 and 5 of each Description of Functions contain definitions for “Acti-


vation, data format, input limits”, etc. for the various signals and data.

Copyright © Siemens AG, 2005.


vi SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

Safety information This manual contains information which you should observe in order to ensure
your own personal safety, as well to avoid material damage. Notes relating to
your personal safety are highlighted in the manual by means of a warning
triangle, no warning triangle appears in conjunction with notes that relate to
property damage. The warnings appear in decreasing order of risk as given
below.

Danger
! indicates that death or severe personal injury will result if proper precautions
are not taken.

Warning
! indicates that death or severe personal injury may result if proper precautions
are not taken.

Caution
! with a warning triangle indicates that minor personal injury can result if proper
precautions are not taken.

Caution
without a warning triangle means that material damage can occur if the
appropriate precautions are not taken.

Notice
indicates that an unwanted result or situation can result if the appropriate
advice is not taken into account.

Correct usage

Please note the following:

Warning
! The unit may be used only for the applications described in the catalog or the
technical description, and only in combination with the equipment, components
and devices of other manufacturers where recommended or permitted by
Siemens. Correct transport, storage, installation and assembly, as well as
careful operation and maintenance, are required to ensure that the product
operates safely and without faults.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition vii
06.05

Further
information

Important
! This notice indicates important facts that must be taken into consideration.

Note
This symbol always appears in this documentation where further, explanatory
information is provided.

Machine Manufacturer
This pictorial symbol appears in this document to indicate that the machine
manufacturer can control or modify the function described. See machine
manufacturer’s specifications.

Ordering Data Option


In this documentation you will find the symbol shown on the left with a
reference to an ordering data option. The described function is only executable
on the control if the control has the designated option.

Technical information

Notations The following notations and abbreviations are used in this document:

S PLC interface signals –> IS “signal name” (signal data)


E.g.: – IS “MMC-CPU1 ready” (DB10, DBX108.2) i.e. the signal is stored in
data block 10, data byte 108, bit 2.
– IS “Feedrate/Spindle speed override” (DB31-48, DBB0) i.e. the sig-
nals for each axis/spindle are stored in data blocks 31 to 48, data block
byte 0.

S Machine data –> MD: MD_NAME (German name)


S Setting data –> SD: SD_NAME (German name)
S The symbol “8” means “corresponds to”
S NEW_CONF (cf) – Reconfiguration of the PLC interface
– “RESET” on control unit, or

S RESET (re) “RESET” key on control unit or

S Immediately (im) After entry of the value

Copyright © Siemens AG, 2005.


viii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

Data types The following data types are used in the control:

S DOUBLE
Real or integer values (decimal values or whole numbers)
Input limits from +/–4.19*10–307 to +/–1.67*10308

S DWORD
Integer values
Input limits from –2.147*109 to +2.147*109

S BOOLEAN
Possible input values: true or false / 0 or 1

S BYTE
Integer values from –128 to +127

S STRING
Consisting of max. 16 ASCII characters (upper case letters, numbers and
underscore)

Quantity The explanations of the PLC interface in the individual Descriptions of Functions
framework assume a theoretical maximum number of components:

S Mode groups (associated signals stored in DB11)


S Channels (associated signals stored in DB21, ...)
S Axes (associated signals stored in DB31, ...)
For details of the actual number of components which can be implemented with
each software version, please refer to
References: /BU/, “Order Document”, Catalog NC 60
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition ix
06.05

Notes

Copyright © Siemens AG, 2005.


x SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Digital and Analog NCK I/Os (A4)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/2-5
2.1 General functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/2-5
2.2 Digital inputs/outputs of the NCK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/2-11
2.2.1 Digital inputs of the NCK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/2-11
2.2.2 Digital outputs of the NCK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/2-13
2.3 Connecting and logic operations of fast NCK inputs/outputs . . . . . 2/A4/2-16
2.4 Analog inputs/outputs of the NCK . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/2-18
2.4.1 Analog inputs of the NCK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/2-18
2.4.2 Analog outputs of the NCK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/2-21
2.5 PLC I/Os directly addressable from NC (SW 5 and higher) . . . . . . 2/A4/2-24
2.6 Analog value representation of the analog input and output values
of the NCK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/2-30
2.7 Comparator inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/2-32
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/3-35
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/4-37
4.1 General machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/4-37
4.2 General setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/4-52
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/5-53
5.1 NCspecific signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/5-53
5.1.1 Overview of signals from PLC to NC (DB10) . . . . . . . . . . . . . . . . . . . 2/A4/5-53
5.1.2 Description of signals from PLC to NC (DB10) . . . . . . . . . . . . . . . . . 2/A4/5-56
5.1.3 Overview of signals from NC to PLC (DB10) . . . . . . . . . . . . . . . . . . . 2/A4/5-61
5.1.4 Description of signals from NC to PLC (DB10) . . . . . . . . . . . . . . . . . 2/A4/5-62
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/7-65
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/7-65
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/7-65
7.2 Machine Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/7-66

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/i
06.05

7.3 Setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/7-67


7.4 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/A4/7-67
J

Copyright © Siemens AG, 2005.


2/A4/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
1 Brief Description

Brief Description 1
General Signals can be read and output in the interpolation cycle via the “digital and
analog NCK I/Os”. The following functions can be executed with these signals,
for example:

S Several feed values in one block


S Several auxiliary functions in a block
S Rapid retraction on finished contour
S Axis-specific delete distance-to-go
S Program branches
S Rapid NC start
S Analog calipers
S Position switching signals
S Punching/nibbling functions
S Analog value control
S etc.

Table of Contents This Description of Functions describes the specifications for the digital and
analog I/Os.
The note “References” lists documentation relating to any function which utilizes
these I/Os.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/1-3
Digital and Analog NCK I/Os (A4) 06.05
1 Brief Description

Notes

Copyright © Siemens AG, 2005.


2/A4/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.1 General functionality

Detailed Description 2
2.1 General functionality

General The ability to control or influence time-critical NC functions is dependent on


high-speed NCK I/O interfaces or the facility to rapidly address particular PLC
I/Os (see Section 2.5).
On the SINUMERIK 840D, 840Di system, therefore,
a) digital and analog NCK inputs and outputs can be used (see Chapter 3).
b) specific PLC I/Os can be addressed directly (see Section 2.5).
The hardware inputs and outputs can be read and written via system variables
in the parts program or synchronized actions.
Via the PLC interface, both the signal states of the digital I/Os and the values of
the external analog I/Os can be changed by the PLC user program according to
the application.

840D hardware On the SINUMERIK 840D onboard NCU there are 4 digital NCK inputs (inputs
1 to 4) and 4 digital NCK outputs (outputs 1 to 4).
The digital onboard inputs and outputs are stored in the first address byte. With
the NCK outputs, the remaining signals of this byte (NCK outputs 5 to 8) can be
used via the PLC interface (digital NCK outputs without hardware).
Using the “NCU terminal block” that can be coupled to the drive bus, it is
possible to connect further digital NCK inputs/outputs and analog NCK
inputs/outputs (hereafter called external NCK I/Os). The “NCU terminal block”
is used as a carrier module for up to eight DP compact plug-in modules. Up to
two “NCU terminal blocks” can be connected per NCU.
The maximum degree of expansion of the external NCK I/Os is:

S 32 digital NCK inputs (digital inputs 9 to 40)

S 32 digital NCK outputs (digital outputs 9 to 40)

S 8 analog NCK inputs (analog inputs 1 to 8)

S 8 analog NCK outputs (analog outputs 1 to 8)


For further information about the hardware specification see:
References: /PHD/, SINUMERIK 840D, NCU Manual

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-5
Digital and Analog NCK I/Os (A4) 06.05
2.1 General functionality

840 Di hardware Digital inputs/outputs are provided for the SINUMERIK 840Di via the MCI Board
digital I/Os Extension module. The following connections are available:

S 2 handwheels
S 2 probes
S 4 digital inputs/outputs

Note
The MCI Board Extension module is an option for the SINUMERIK 840Di. The
PIN assignment of the cable distribution interface (X121) matches the cable
distributor assignment on the SINUMERIK 840D.

SINUMERIK 840Di Analog and digital inputs/outputs can be operated on the SINUMERIK 840Di by
analog and digital means of SIMATIC S7 bus interface and signal boards linked via the
inputs/outputs PROFIBUS-DP.

PLC I/Os for direct Up to 16 bytes for digital input signals and analog input values plus a total of
addressing by 16 bytes for digital output signals and analog output values can be addressed
NCK SW 5.2 directly by the parts program. These bytes must be taken into account when the
PLC is configured. They must be programmed consecutively. They are
processed directly by the PLC operating system. As a result, the signal transfer
time between the NC and PLC I/O modules is of a magnitude of 0.5 ms.

Caution
! The output bytes specified for the NCK may not be write-accessed by the PLC
user program as the access operations between the NCK and PLC would be
uncoordinated.

For further details, see 2.5.

Comparator In addition to the digital and analog NCK inputs, 16 internal comparator inputs
inputs (comparator input bytes 1 and 2) are also available.
The signal state of a comparator input is formed by comparing an analog input
signal with a threshold value in a setting data.
For more information please refer to Section 2.7.

Number The number of addressable digital NCK input/output bytes and analog
inputs/outputs must be programmed by means of general machine data.

Copyright © Siemens AG, 2005.


2/A4/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.1 General functionality

Machine data ($MN_ ... ) Number of active ... Max.


number
FASTIO_DIG_NUM_INPUTS Digital NCK input bytes 5
FASTIO_DIG_NUM_OUTPUTS Digital NCK output bytes 5
FASTIO_ANA_NUM_INPUTS Analog NCK inputs 8
FASTIO_ANA_NUM_OUTPUTS Analog NCK outputs 8

Note
The 1st byte is always assigned to the 4 digital I/Os on the MCI Board
Extension module on the SINUMERIK 840Di. Even if you have not connected
an MCI Board Extension module to the SINUMERIK 840Di, the 1st byte is
always assigned to it.
For this reason, at least 2 bytes must always be entered in machine data
FASTIO_DIG_NUM... if you want to operate further I/Os via the PROFIBUS.

Corresponding alarms are generated if the parts program addresses


inputs/outputs that have not been defined in the above machine data.
These NCK inputs or outputs do not have to actually exist in the hardware. If
they do not, the signal states or the binary analog values are set to “zero” in a
defined way inside the NCK. The values can be changed by the PLC.

Hardware The following general machine data ($MN-) are provided for assigning I/O signal
assignment of modules or I/O modules to external NCK I/Os:
external
S MD 10366: HW_ASSIGN_DIG_FASTIN[hw] Hardware assignment for
NCK I/Os external digital inputs

S MD 10368: HW_ASSIGN_DIG_FASTOUT[hw] Hardware assignment for


external digital outputs

S MD 10362: HW_ASSIGN_ANA_FASTIN[hw] Hardware assignment for


external analog inputs

S MD 10364: HW_ASSIGN_ANA_FASTOUT[hw] Hardware assignment for


external analog outputs
[hw]: Index for addressing the external digital I/O bytes (0 to 3) or the external
analog inputs/outputs (0 to 7)

Note
The hardware assignment is different on the SINUMERIK 840D and 840Di
controls.

The defaults for the assignment of I/Os for the SINUMERIK 840Di via machine
data MD 10362 to MD 10368 are as follows:

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-7
Digital and Analog NCK I/Os (A4) 06.05
2.1 General functionality

Machine data ($MN_ ... ) Meaning Default


HW_ASSIGN_ANA_FASTIN[0] Assignment for analog input 050000A0
... (16-bit access)
HW_ASSIGN_ANA_FASTOUT[0] Assignment for analog output 050000A0
... (16-bit access)
HW_ASSIGN_DIG_FASTIN[0] Assignment for digital input 05000090
... (8-bit access)
HW_ASSIGN_DIG_FASTOUT[0] Assignment for digital output 05000090
... (8-bit access)

Modification to MD The machine data $MN_HW_ASSIGN_... have been modified for hardware
for PROFIBUS DP operation on the PROFIBUS DP of the SINUMERIK 840Di.
The assignment of bytes 1 to 4 has been redefined. The machine data
assignments below apply for PROFIBUS DP operation:
Byte New for PROFIBUS-DP Old meaning
4th byte Segment number = 5 Segment number
3rd byte Not used = 0 Module number
2nd byte Logical address high Submodule number
1st byte Logical address low Input/output number

Guidelines for machine data $MN_HW_ASSIGN_...:

S Logical address in 1st and 2nd byte is specified in hexadecimal format.


Example: 050001A2 (Hex) equals logical address 418 (Dec).

S Address 0 is reserved for the PLC and cannot be used as an NC I/O.


S The value 05000000 in MD $MN_HW_ASSIGN_... is interpreted as “Slot
does not physically exist”. The input is then treated like a simulation input.

System variables The following table lists the system variables with which NCK I/Os can be read
or written directly by the parts program.
The number of the NCK input/output is used for addressing.
The following applies to n:
1  n  8 * MD 10350: FASTIO_DIG_NUM_INPUTS
1  n  8 * MD 10360: FASTIO_DIG_NUM_OUTPUTS

1  n  MD 10300: FASTIO_ANA_NUM_INPUTS
1  n  MD 10310: FASTIO_ANA_NUM_OUTPUTS

System Meaning Range of [n]


variable
$A_IN[n] Read digital NCK input [n] 1 to 3, 9 to 40
$A_INA[n] Read analog NCK input [n] 1 to 8
$A_INCO[n] Read comparator input [n] 1 to 16
PBB
$A_OUT[n] Read/write digital NCK output [n] 1 to 40
$A_OUTA[n] Read/write analog NCK output [n] 1 to 8

Copyright © Siemens AG, 2005.


2/A4/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.1 General functionality

Note
When this system variable is read by the parts program, a preprocess stop
(STOPRE command) is initiated inside the control.

Weighting factor The weighting factors in the general machine data MD 10320:
FASTIO_ANA_INPUT_WEIGHT[hw] and MD 10330:
FASTIO_ANA_OUTPUT_WEIGHT[hw] allow each individual analog NCK input
and output to be adapted to the AD or DA converters of the analog I/O module
used.
If the correct weighting factor is set, the value set in system variable
$A_OUTA[n] outputs the corresponding voltage value in millivolts at the analog
output [n].

Example for 840D The analog value range is 10V (maximum modulation);
FASTIO_ANA_OUTPUT_WEIGHT[hw] = 10000 (default on 840D)
$A_OUTA[1] = 9500 ; 9.5V is output at analog NCK output 1
$A_OUTA[3] = –4120 ; –4.12V is output at analog NCK output 3
Application for analog NCK inputs/outputs without hardware:
With weighting factor of 32767, the digitized analog values for parts program
and PLC accesses are identical. In this way, it is possible to use the associated
input or output word for a 1:1 communication between the parts program and
the PLC.

Assignment to Several NC functions are dependent on the functionality of the NCK I/Os. The
NC functions NCK inputs and/or outputs used for these functions are assigned on a
function-specific basis via machine data (e.g. MD 21220:
MULTFEED_ASSIGN_FASTIN for “Multiple feedrates in one block”). A byte
address must be specified in the machine data for the digital inputs/outputs; the
assignment is always made byte by byte.

Byte address Assignment for the digital NCK inputs/outputs


0 none
840D: 1 1 to 4 (onboard I/Os) and 5 to 8 (NCK-A without hardware)
FM-NC: 1 1 to 8 (NCK-A without hardware)
2 9 to 16 (external NCK I/Os)
3 17 to 24 (external NCK I/Os)
4 25 to 32 (external NCK I/Os)
5 33 to 40 (external NCK I/Os)
128 Inputs 1 to 8 of comparator byte 1 (see Section 2.7)
129 Inputs 9 to 16 of comparator byte 2 (see Section 2.7)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-9
Digital and Analog NCK I/Os (A4) 06.05
2.1 General functionality

Clock- The I/O modules of the external NCK I/Os on the SINUMERIK 840D can be
synchronous operated in one of the following two modes:
processing
S Asynchronously, i.e. the input and output values are made available in
cycles set by the terminal block which are asynchronous to the internal NC
processing cycles.
S Synchronously, i.e. the input values and the output values are provided
synchronously with the settable internal NC processing clock frequency.
The processing mode is selected for individual modules by means of general
machine data MD 10384: HW_CLOCKED_MODULE_MASK[tb].
[tb] = Index for terminal block (0 to 1)
In synchronous processing mode, one of the following clock rates can be
selected (general MD 10380: HW_UPDATE_RATE_FASTIO[tb]):

S Synchronous inputs/outputs in position control cycles (default setting)


S Synchronous inputs/outputs in interpolation cycles
It is possible to define a lead time in microseconds for the clocked NCK I/Os in
general MD 10382: HW_LEAD_TIME_FASTIO[tb]. This makes it possible to
consider the conversion time of the ADC for example, so that the digitized input
value is available on the cycle.
The defined cycle frequency or delay time applies to all cycle-synchronous I/O
modules of the terminal block addressed with [tb].
On the SINUMERIK FM-NC, the I/O modules of the external NCK I/Os always
operate asychronously. They are updated in position control cycles.

Monitoring The following functional monitors are provided for external I/Os on the
functions SINUMERIK 840D:

S During booting:
– Check whether the I/O modules in the terminal blocks match the MD
assignments.

S During cyclic operation:


– Sign-of-life monitoring in interpolation cycles
– Module monitoring in interpolation cycles
– Temperature monitoring
In the event of a fault, NC ready is canceled and an alarm is output.

Response to The digital and analog NCK outputs are switched to “safe” status (i.e. 0V at
faults output) in the event of faults (e.g. NC ready = 0) in the NCU or power failures.

Copyright © Siemens AG, 2005.


2/A4/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.2 Digital inputs/outputs of the NCK

2.2 Digital inputs/outputs of the NCK

2.2.1 Digital inputs of the NCK

Number General MD 10350: FASTIO_DIG_NUM_INPUTS (number of active digital NCK


input bytes) the available digital NCK inputs can be defined (in groups of 8).

Function The digital NCK inputs allow external signals to be injected which can then be
used, for example, to control the workpiece machining program sequence. With
the system variable $A_IN[n], the signal status of the digital input [n] can be
scanned directly in the parts program.
The signal state at the hardware input can be changed by the PLC user
program (see Fig. 2-1).

Disable input The PLC user program can disable NCK inputs individually by means of
interface signal “Disable digital NCK inputs” (DB10, DBB0 or DB122 ...). In this
case, they are set to “0” in a defined manner inside the control.

Set input from PLC The PLC can also apply interface signal “Setting digital NCK inputs on PLC”
(DB10, DBB1 or DBB123 ...) to set each digital input to a defined “1” signal state
(see Fig. 2-1). As soon as this interface signal is set to “1”, the signal state at
the hardware input or the input disable is inactive.

Read actual value The signal status of the digital NCK inputs is signaled to the PLC (interface
signal “Actual value of digital NCK inputs” (DB10, DBB60, DBB186 ...)). The
actual value reflects the real state of the signal at the hardware input; the
influence of the PLC is therefore ignored in the “actual value” (see Fig. 2-1).

RESET/power ON After power ON and reset, the signal level at the input is passed on. If
behavior necessary, the PLC user program can disable or set the inputs to “1” in a
defined manner as described above.

Applications The program sequence can be controlled with conditional jump statements in
the part program as a function of the signal status of an external hardware
signal.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-11
Digital and Analog NCK I/Os (A4) 06.05
2.2 Digital inputs/outputs of the NCK

For example, digital NCK inputs can be used for the following NC functions:

S Delete distance-to-go with positioning axes


S Fast program branching at the end of block
S Programmed read-in disable
S Several feedrates in one block
References: /FB/, S5, “Synchronized Actions”
The NCK inputs are assigned to the NC functions separately for each function
and byte in the machine data. Multiple assignments of inputs are not monitored.

[n]

Hardware
NCK input PLC

Hardware input Actual value


image (DB10, DBB60 ... )

”0”
Disable
(DB10, DBB0 ... )

”1”
Setting by PLC
(DB10, DBB1 ... )

Part program NCK value

:
$A_IN [n]
: Digital input read in
the parts program

Fig. 2-1 Signal flow for digital NCK inputs

Copyright © Siemens AG, 2005.


2/A4/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.2 Digital inputs/outputs of the NCK

2.2.2 Digital outputs of the NCK

Number General MD 10310: FASTIO_DIG_NUM_OUTPUTS (number of active digital


NCK output bytes) the available digital NCK outputs can be defined (in groups
of 8).

Function The digital NCK outputs provide the option of outputting important switching
commands at high speed as a function of the program processing status. With
the system variable $A_OUT[n], the signal status of the digital output [n] can be
set or read again directly in the parts program.
There are also several ways of changing this set signal state via the PLC
(see Fig. 2-2).

Disable output The PLC user program is capable of disabling the digital NCK outputs
individually with interface signal “Disable digital NCK outputs” (DB10, DBB4,
DBB130...). In this case, the “0” signal is output at the hardware output
(see Fig. 2-2).

Overwrite screen Every output that can be set by the NC parts program can be overwritten from
form the PLC using the overwrite screen form. Previous NCK values are then lost
(see Fig. 2-2).
The following routine has to be carried out to overwrite the NCK value from the
PLC:
1. The output in question must be preset with the required signal state at the
PLC interface “PLC setting for digital NCK outputs” (DB10, DBB6,
DBB132...).
2. The setting value becomes the new NCK value for the relevant output
(DB10, DBB5, DBB131 ...) when the overwrite screen form is activated
(signal transition 0 –> 1). This value remains operative until a new NCK
value is programmed (by the PLC or from the NC part program).

Setting screen Furthermore, a PLC setting for each output can determine whether the
form instantaneous (e.g. as specified by NC parts program) or the PLC value
specified via the setting screen form (DB10, DBB7, DBB133 ...) should be sent
to the hardware output (see Fig. 2-2).
The following routine has to be carried out to define the PLC value:
1. The output in question must be preset with the required signal state at the
PLC interface “PLC setting for digital NCK outputs” (DB10, DBB6).
2. The setting screen form must be set to “1” for the output in question.
Unlike the overwrite screen form, the current NCK value is not lost when a value
is set in the setting screen form. As soon as the PLC sets “0” in the setting
screen form, the NCK value is again active.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-13
Digital and Analog NCK I/Os (A4) 06.05
2.2 Digital inputs/outputs of the NCK

Note
The same setting value (DB10, DBB6) is used at the PLC interface for the
overwrite and setting screen forms. Therefore, an identical output signal state is
the result if the signal state is changed simultaneously in the overwrite and
setting screen form.

Read setpoint The instantaneous NCK value at the digital outputs can be read by the PLC
user program (interface signal “setpoint of digital NCK outputs” (DB10, DBB64,
DBB186 ...)). Please note that this setpoint ignores disabling and the setting
screen form of the PLC. The setpoint can therefore be different from the actual
signal state at the hardware output (see Fig. 2-2).

RESET/ On end of program or RESET, every digital output can be defined as necessary
end of program by the PLC user program in the overwrite screen form, setting screen form or
disable signal.

Power ON After power ON, the digital outputs are set to “0” in a defined manner. This can
be overwritten in the PLC user program according to the application using the
screen forms described above.

Digital No alarm is output if the digital NCK outputs written from the part program have
NCK outputs been defined in general MD 10360: FASTIO_ANA_NUM_INPUTS, but do not
without hardware exist as hardware outputs. The NCK value can be read by the PLC (IS “Setpoint
...”)

Applications This function allows digital hardware outputs to be set instantaneously by


bypassing the PLC cycles. Time-critical switching functions can thus be
triggered in connection with the machining process and under program control
(e.g. on block change).
For example digital NCK outputs are required for the following NC functions:

S Position signals
References: /FB/, N3, “Software Cams, Position Signals”

S Output of the comparator signals (see Section 2.7)


The NCK outputs are assigned to the NC functions separately for each function
in machine data. Multiple assignments of outputs are checked during power ON
and indicated by an alarm.

Copyright © Siemens AG, 2005.


2/A4/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.2 Digital inputs/outputs of the NCK

Part program NCK PLC


Digital output set in
the parts program
:
$A_OUT [n] Overwrite screen form
: (DB10, DBB5 ... )
(Signal transition 0!1)

Setting val. from PLC


NCK value
(DB10, DBB6 ... )

Setpoint
(DB10, DBB64 ... )

(PLC value) Setting screen form


(DB10, DBB7 ... )
”0”
Disable
(DB10, DBB4 ... )

Hardware
output [n]

Fig. 2-2 Signal flow for digital NCK outputs

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-15
Digital and Analog NCK I/Os (A4) 06.05
2.3 Connecting and logic operations of fast NCK inputs/outputs

2.3 Connecting and logic operations of fast NCK


inputs/outputs

Function In SW 4 and higher, the fast inputs of the NCK I/Os can be set in the software
according to the signal states of the fast outputs.

Overview:

Output: Input:
– Byte – Byte
– Bit – Bit

Alternatives:
1. Connect
2. OR operation
3. AND operation

Connect The fast input of the NCK I/O is set to the signal state of the assigned fast
output.

OR The fast input of the NCK I/O takes the signal state which is given by the OR
operation operation of the output signal with the assigned input signal.

AND The fast input of the NCK I/O takes the signal state which is given by ANDing
operation the output signal with the assigned input signal.

Special cases
S If several output bits are assigned to the same input bit, then the one with
the highest MD index becomes effective.

S If inputs or outputs are specified which do not exist or are not activated, then
the assignment is ignored without alarm. Checking of the active bytes of the
NCK I/Os is performed via the entries in the machine data:
MD 10350: FASTIO_DIG_NUM_INPUTS and
MD 10360: FASTIO_DIG_NUM_OUTPUTS.

Copyright © Siemens AG, 2005.


2/A4/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.3 Connecting and logic operations of fast NCK inputs/outputs

Defining The assignments are specified via machine data:


assignments MD 10361: FASTIO_DIG_SHORT_CIRCUIT[n].
n can assume values between 0 and 9, in other words, up to 10 assignments
can be defined.
2 hexadecimal characters in each case are provided for the specification of the
byte and bit of an output. The type of logic operation is specified by entering
0 for connect
A for AND operation
B...for OR operation
in bits 12 – 15 of the input.

FASTIO_DIG_SHORT_CIRCUIT[n]

Output Input

Bit Byte Bit Byte


↑ Type of logic op.

Bit 24–31 16–23 8–15 0–7

Examples Connect:
MD 10361: FASTIO_DIG_SHORT_CIRCUIT = ’04010302H’
output 4, byte 1, connect to
input 3, byte 2

AND operation:
MD 10361: FASTIO_DIG_SHORT_CIRCUIT = ’0705A201H’
output 7, byte 5 AND with
input 2, byte 1

OR operation:
MD 10361: FASTIO_DIG_SHORT_CIRCUIT = ’0103B502H’
output 1, byte 3, OR with
input 5, byte 2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-17
Digital and Analog NCK I/Os (A4) 06.05
2.4 Analog inputs/outputs of the NCK

2.4 Analog inputs/outputs of the NCK

2.4.1 Analog inputs of the NCK

Number General MD 10300: FASTIO_ANA_NUM_INPUTS (number of active analog


NCK inputs) the available analog NCK inputs can be defined.

Function The system variable $A_INA[n] allows the value at the analog NCK input [n] to
be directly accessed in the parts program.
The analog value at the hardware input can also be influenced by the PLC user
program (see Fig. 2-3).

Disable input The PLC user program is capable of disabling the analog NCK inputs
individually with interface signal “Disable analog NCK inputs” (DB10, DBB146).
In this case, they are set to “0” in a defined manner inside the control.

Set input from PLC The PLC can also specify a value for each analog NCK input by applying the
interface signal “Setting screen form of analog NCK inputs” (DB10, DBB147)
(see Fig. 2-3). As soon as this interface signal is set to “1”, the value set by the
PLC (DB10, DBB148 to 163) becomes active for the analog input. The analog
value at the hardware input or the input disable is then inactive.

Read actual value The interface signal “Actual value of analog input of NCK” (DB10, DBB194 to
209) transfers the analog values that are actually present at the hardware inputs
to the PLC. The possible influence of the PLC is therefore ignored in the actual
value (see Fig. 2-3).

RESET/power ON After power ON and RESET, the analog value at the input is passed on. If
behavior necessary, the PLC user program can manipulate the NCK inputs as described
above in the PLC user program.

Weighting factor Using the weighting factor in the general MD 10320:


FASTIO_ANA_INPUT_WEIGHT[hw] it is possible to adapt each analog NCK
input to the various ADCs for reading in the parts program (see Fig. 2-3).
In this machine data it is necessary to enter the value x that is to be read in the
parts program with the system variable $A_INA[n], if the corresponding analog
input [n] is set to the maximum value or if the value 32767 is set for this input via
the PLC interface. The voltage level at the analog input is then read with the
system variable $A_INA[n] as a numerical value with the unit millivolts.

Copyright © Siemens AG, 2005.


2/A4/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.4 Analog inputs/outputs of the NCK

Binary analog See Section 2.6


value display

Analog When the parts program accesses analog NCK inputs that have been defined in
NCK input without MD 10300: FASTIO_ANA_NUM_INPUTS but that do not exist as hardware
hardware inputs, the following values are read:

S The setpoint set by the PLC if the IS “PLC setting for analog NCK inputs” is
set to “1” (see Fig. 2-3)

S Otherwise 0 volts
This makes it possible to use the functionality of the analog NCK inputs from the
PLC user program without I/O hardware.

Applications The analog NCK inputs are used particularly for grinding and laser machines
(e.g. for the “analog calipers” NC function).

Fast analog NCK The fast analog inputs must be clock-synchronous. The assignment is defined
inputs by MD 10384: HW_CLOCKED_MODULE_MASK.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-19
Digital and Analog NCK I/Os (A4) 06.05
2.4 Analog inputs/outputs of the NCK

[n]

NCK PLC
Hardware
input

Binary analog Actual value


actual value (DB10, DBB194 ... )

”0”
Disable
(DB10, DBB146 ... )

Setting value from


PLC (DB10,
DBB148 ... )

Setting screen form


(DB10, DBB147 ... )

Weighting factor
(MD: FASTIO_ANA_
INPUT_WEIGHT[n]/32767)

Part program
NCK value

:
$A_INA [n]
:
Analog input [n] read in the
parts program

Fig. 2-3 Signal flow for analog NCK inputs

Copyright © Siemens AG, 2005.


2/A4/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.4 Analog inputs/outputs of the NCK

2.4.2 Analog outputs of the NCK

Number General MD 10310: FASTIO_ANA_NUM_OUTPUTS (number of active analog


NCK outputs) the available analog NCK outputs can be defined.

Function The system variable $A_OUTA[n] allows the value at the analog output [n] to
be specified directly in the parts program.
Before output to the hardware output, the analog value set by the NCK can be
changed by the PLC (see Fig. 2-4).

Disable output The PLC user program is capable of disabling the analog NCK outputs
individually with interface signal “Disable analog NCK outputs” (DB10, DBB168).
In this case, 0 volts is output at the analog output (see Fig. 2-4).

Overwrite screen Every NCK analog value set by the NC parts program can be overwritten from
form the PLC using the overwrite screen form. Previous NCK values are then lost
(see Fig. 2-4).
The following routine has to be carried out to overwrite the NCK value from the
PLC:
1. The output n in question must be preset with the required analog value at
the PLC interface “PLC setting for analog output n of the NCK” (DB10,
DBB170 to 185).
2. The setting value becomes the new NCK value for the analog output (DB10,
DBB166) when the overwrite screen form is activated (signal transition
0 –> 1).
This value remains valid until a new value is set for the NCK by the parts
program, for example.

Setting screen Furthermore, a PLC setting for each output can determine whether the
form instantaneous (e.g. as specified by NC parts program) or the PLC value
specified via the setting screen form (DB10, DBB167) should be sent to the
hardware analog output (see Fig. 2-4).
The following routine has to be carried out to define the PLC value:
1. The output n in question must be preset with the required analog value at
the PLC interface “PLC setting for analog output n of the NCK” (DB10,
DBB170 to 185).
2. The setting screen form (DB10, DBB167) must be set to “1” for the output in
question.
Unlike the overwrite screen form, the current NCK value is not lost when a value
is set in the setting screen form. As soon as the PLC sets “0” in the setting
screen form, the NCK value is again active.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-21
Digital and Analog NCK I/Os (A4) 06.05
2.4 Analog inputs/outputs of the NCK

Note
The same setting value (DB10, DBB170 to 185) is used at the PLC interface for
the overwrite and the setting screen forms.

Read setpoint The instantaneous NCK value at the analog outputs can be read by the PLC
user program (interface signal “setpoint analog output n of NCK” (DB10,
DBB210 to 225)). Please note that this setpoint ignores disabling and the
setting screen form of the PLC. The setpoint can therefore differ from the real
analog value at the hardware output (see Fig. 2-4).

RESET/ On end of program or reset, every analog output can be defined as necessary
end of program by the PLC user program in the overwrite screen form, setting screen form or
disable signal.

Power ON After power ON, the analog outputs are set to “0” in a defined manner. After
booting, this can be overwritten in the PLC user program according to the
application using the screen forms described above.

Weighting factor Using the weighting factor in the general MD 10330:


FASTIO_ANA_OUTPUT_WEIGHT[hw] it is possible to adapt each analog NCK
output to the various DACs for programming in the parts program (see Fig. 2-4).
In this machine data it is necessary to enter the value x that is to cause the
analog output [n] to be set to the maximum value or the value 32767 to be set
for this output in the PLC interface, if $A_OUTA[n] = x is programmed. The
value set with the system variable $A_OUTA[n] then places the corresponding
voltage value at the analog output in millivolts.

Binary analog See Section 2.6


value display

Exception Where the part program contains programmed values for NCK analog outputs
that have been defined in MD 10310: FASTIO_ANA_NUM_OUTPUTS, but do
not exist as hardware outputs, no alarm is generated. The NCK value can be
read by the PLC (IS “Setpoint ...”)

Application This function allows analog outputs to be set instantaneously by bypassing the
PLC cycles.
The analog NCK outputs are used in particular for grinding and laser machines.

Copyright © Siemens AG, 2005.


2/A4/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.4 Analog inputs/outputs of the NCK

Part program NCK PLC


Analog output [n] set
: in the parts program
$A_OUTA [n]
:

Weighting factor
(32767/MD: FASTIO_–
ANA_OUTPUT_WEIGHT[n])

Limitation to
 32767
Overwrite screen form
(DB10, DBB166 ... )
(Signal transition 0!1)

Setting value from PLC


NCK value
(DB10, DBB170 ... )

Setpoint
(DB10, DBB210 ... )

(PLC value) Setting screen form


(DB10, DBB167 ... )
”0”
Disable
(DB10, DBB168 ... )

Hardware
output [n]

Fig. 2-4 Signal flow for analog NCK outputs

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-23
Digital and Analog NCK I/Os (A4) 06.05
2.5 PLC I/Os directly addressable from NC (SW 5 and higher)

2.5 PLC I/Os directly addressable from NC (SW 5 and


higher)

E
Introduction The high-speed data channel between the NCK and PLC I/O is processed
directly and therefore quickly by the PLC operating system.
There is no provision for control of the PLC basic and user programs.
Contending access between the NC kernel and the PLC to the same PLC I/O
devices is not sensible and can result in faults.
The function is available for
SINUMERIK 840D SW 5.2, SW 6.4 and higher
SINUMERIK 810D SW 3.2, SW 4.4 and higher

System variables The NC uses part programs and synchronized actions to access system
variables.
For reading from PLC:
$A_PBB_IN[n] ; Read byte (8 bits)
$A_PBW_IN[n] ; Read word (16 bits)
$A_PBD_IN[n] ; Read Dword (32 bits)
$A_PBR_IN[n] ; Read real (32 bits float)
n Byte offset within the PLC input area
Reading from the parts program causes a preprocessing stop.

For writing to PLC:


$A_PBB_OUT[n] ; Write byte (8 bits)
$A_PBW_OUT[n] ; Write word (16 bits)
$A_PBD_OUT[n] ; Write Dword (32 bits)
$A_PBR_OUT[n] ; Write real (32 bits float)
n Byte offset within the PLC output area
The output data can also be read from the parts program and synchronized
actions. Reading from the parts program causes an automatic preprocessing
stop (to achieve synchronization with the real time context).

Copyright © Siemens AG, 2005.


2/A4/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.5 PLC I/Os directly addressable from NC (SW 5 and higher)

Variable value Values within the following ranges can be stored in the variables:
ranges
$A_PBB_OUT[n] ; (–128 ... +127) or (0 ... 255)
$A_PBW_OUT[n] ; (–32768 ... +32767) or (0 ... 65535)
$A_PBD_OUT[n] ; (–2147483648 ... +2147483647) or
; (0 ... 4294967295)
$A_PBR_OUT[n] ; (–3.402823466E+38 ... +3.402823466E+38)

Transfer times The output of values from NCK → PLC (write) takes place at the end of the
interpolation cycle if at least one data was written.
Data are read in, as a function of the machine data
MD 10398: PLCIO_IN_UPDATE_TIME (SW 6.4 or higher), by sending a
request at the end of the interpolation cycle. The new data are available in the
subsequent interpolation cycle at the earliest.
Machine data MD 10398: PLCIO_IN_UPDATE_TIME (SW 6.4 or higher) you
can set the time within which a request is sent to the PLC. The entered time is
set internally to the next higher multiple of an interpolation cycle. If the value of
these machine data is set to 0, the request will continue to be sent to the PLC in
every interpolation cycle.

Configuring To activate the functionality, the following machine data (Power ON active) must
be configured on the NC:
MD 10394: PLCIO_NUM_BYTES_IN
Number of PLC I/O input bytes that are read directly
by the NC.
MD 10395: PLCIO_LOGIC_ADDRESS_IN
Logical start address of the PLC input I/O from which the data
are read.
MD 10396: PLCIO_NUM_BYTES_OUT
Number of PLC I/O output bytes that are written directly
by the NC.
MD 10397: PLCIO_LOGIC_ADDRESS_OUT
Logical start address of the PLC output I/O from which the data
are written.
MD 10398: PLCIO_IN_UPDATE_TIME (SW 6.4 or higher)
Time within which the data that can be read by means of $A_PBx_IN are
updated. The time is set internally to the next higher multiple of the time
defined by the interpolation cycle. When 0 is entered (default value), the
data are updated in very interpolation cycle.
MD 10399: PLCIO_TYPE_REPRESENTATION (SW6.4 and higher)
Little/Big Endian format representation of $A_PBx_OUT, $A_PBx_IN
System variables for PLC I/Os directly controllable by NCK
value = 0 ;(Default) System variables are represented in
Little Endian format (i.e. least significant byte at
lowest address)
value = 1 ;(PLC standard format, recommended) System variables
are represented in Big Endian format
(i.e. most significant byte at lowest address)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-25
Digital and Analog NCK I/Os (A4) 06.05
2.5 PLC I/Os directly addressable from NC (SW 5 and higher)

The PLC I/O addresses entered in the machine data and the number of bytes to
be transferred must be consistent with the PLC hardware configuration.
A check for the physical existence of the PLC I/O is not performed for the fast
PLC communication described here. The reading or writing of non-configured or
incorrectly configured inputs/outputs results in alarms.
In the configured areas, there must not be any ’address gaps’ in the PLC I/O
expanded configuration.

Memory There are 16 bytes each (over all channels) for data exchange from and to the
organization PLC. These areas have to be managed by the user (that is, no overlapping of
the variables, not even across channel borders).
The variables are represented within these areas, depending on the setting of
the machine data
MD 10399: PLCIO_TYPE_REPRESENTATION (SW 6.4 or higher) either in little
Endian format (=0) or in big Endian format (=1).
Since big Endian format is generally the most common representation form on
the PLC (that is, also holds for the PLC I/O), it should generally be used.

Alignment The assignment of the input and output areas for direct PLC I/Os must satisfy
the following conditions:
$A_PBB_IN[j] ; j < ([MD 10394: PLCIO_NUM_BYTES_IN])
$A_PBW_IN[j] ; j < ([MD 10394: PLCIO_NUM_BYTES_IN] – 1)
$A_PBD_IN[j] ; j < ([MD 10394: PLCIO_NUM_BYTES_IN] – 3)
$A_PBR_IN[j] ; j < ([MD 10394: PLCIO_NUM_BYTES_IN] – 3)

$A_PBB_OUT[k] ; k < ([MD 10396: PLCIO_NUM_BYTES_OUT])


$A_PBW_OUT[k] ; k < ([MD 10396: PLCIO_NUM_BYTES_OUT] – 1)
$A_PBD_OUT[k] ; k < ([MD 10396: PLCIO_NUM_BYTES_OUT] – 3)
$A_PBR_OUT[k] ; k < ([MD 10396: PLCIO_NUM_BYTES_OUT] – 3)

Furthermore, the maximum number of bytes available for data exchange must
not be exceeded.

Hardware The addressing of direct PLC I/Os requires the following hardware:
requirements
NCU Version PLC SW
NCU 561 NCU 561.2 and higher 3.10.13 and higher
NCU 571 NCU 571.2 and higher 3.10.13 and higher
NCU 572 NCU 572.2 and higher 3.10.13 and higher
NCU 573 NCU 573.2 and higher 3.10.13 and higher
CCU CCU with PLC315-2 DP and 3.10.13 and higher
higher

Copyright © Siemens AG, 2005.


2/A4/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.5 PLC I/Os directly addressable from NC (SW 5 and higher)

Configuration
If data are to be read/written over the high-speed data channel, the PLC I/O
must

S always be configured as a contiguous block (that is, no gaps between


addresses within the block).

S It must be possible for the number of bytes that have to be transferred to be


mapped without gaps on the PLC I/O.

Dynamic response
The time when the data are read in from the PLC I/O is not synchronized with
the time when the data are made available to the parts program in the system
variables!

Data transfer (NCK <–> PLC)


The data buffer is always output complete to the PLC I/O, even if only one
system variable was assigned within the data buffer.
If values are assigned to several system variables ’simultaneously’ (e.g. in order
to initialize the PLC I/O), there is no guarantee that they will be transferred in the
same interpolation cycle.

Example for Reading the PLC I/O with system variable $A_PBx_IN
reading
The following assumptions are made for this example:

S PLC I/O:
– log. addr. 420: 16-bit analog input module
– log. addr. 422: 32-bit digital input module
– log. addr. 426: 32-bit input DP slave
– log. addr. 430 8-bit digital input module

S $A_PBx_IN is used to read in data from a parts program into R parameters.

S In order to avoid slowing up the PLC user program unnecessarily (OB1), an


update time for the internal NCK data buffer (for read access) was
configured in machine data $MN_PLCIO_IN_UPDATE_TIME (SW 6.4 or
higher) such that an update is only performed every 3rd interpolation cycle.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-27
Digital and Analog NCK I/Os (A4) 06.05
2.5 PLC I/Os directly addressable from NC (SW 5 and higher)

S The machine data must be set as follows:


$MN_PLCIO_LOGIC_ADRESS_IN = 420
;data are read in from log. addr. 420

$MN_PLCIO_NUM_BYTES_IN = 11
;a total of 11 bytes must be read in

$MN_PLCIO_IN_UPDATE_TIME = 0.03 ; (SW 6.4 and later)


;Update time = 30 msec (interpolation cycle = 12 msec)

$MN_PLCIO_TYPE_REPRESENTATION = 1 ; (SW 6.4 and later)


;data are represented in Big Endian format

S Booting of NCK and PLC


The update (for read access) is now performed in every 3rd interpolation
cycle after the NCK and PLC have booted.

S Loading and starting the part program with the following content:
...
R1 = $A_PBW_IN[0] ;read 16-bit integer
R2 = $A_PBD_IN[2] ;read 32-bit integer
R3 = $A_PBR_IN[6] ;read 32-bit float
R4 = $A_PBB_IN[10] ;read 8-bit integer
...

Example for Writing to PLC I/O with $A_PBx_OUT


writing
The following assumptions are made for this example:

S Data are to be output directly to the following PLC I/O:


– log. addr. 521: ; 8-bit digital output module
– log. addr. 522: ; 16-bit digital output module

S $A_PBx_OUT is used to output the data from synchronized actions.


S The machine data must be set as follows:
$MN_PLCIO_LOGIC_ADRESS_OUT= 521
;data are output from log. addr. 521

$MN_PLCIO_NUM_BYTES_OUT= 3
;a total of 3 bytes must be output

$MN_PLCIO_TYPE_REPRESENTATION = 1 ; (SW 6.4 and later)


;data are represented in Big Endian format

Copyright © Siemens AG, 2005.


2/A4/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.5 PLC I/Os directly addressable from NC (SW 5 and higher)

S Booting of NCK and PLC


When the NCK and PLC have booted, cyclic data transfer (for write access)
to the PLC I/O does not take place.

S Loading and starting the part program with the following content:

...
ID = 1 WHENEVER TRUE DO $A_PBB_OUT[0] = 123
;cyclic output (per interpolation cycle)
...
ID = 2 WHEN $AA_IW[x] >= 5 DO $A_PBW_OUT[1] = ’Habcd’
;output of a HEX value
...

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-29
Digital and Analog NCK I/Os (A4) 06.05
2.6 Analog value representation of the analog input and output values of the NCK

2.6 Analog value representation of the analog input and


output values of the NCK

Conversion of The analog values are only processed by the NCU in a digital form.
analog values
Analog input modules convert the analog process signal into a digital value.
Analog output modules convert the digital output value into an analog value.

Analog value The digitized analog value is identical for input and output values with the rating
representation range (e.g. voltage range  10V DC).
The analog values are coded in the PLC interface as fixed-point numbers
(16 bits including sign) in two’s complement (see Table 2-1).

Table 2-1 Digital coding of analog values at the PLC interface

Resolution Binary analog value


High byte Low byte
Bit number 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Significance of the SG 214 213 212 211 210 29 28 27 26 25 24 23 22 21 20
bits

Sign The sign (SG) of the analog value is always in bit 15.
SG is: “0”  +
“1”  –

Resolution less The analog value can be finely adjusted depending on the resolution of the
than 15 bits digital/analog converter.
If the resolution of the analog module is less than 15 bits, the analog value is
entered left-justified. The free less significant places are filled with zeroes.
Table 2-2 shows how the free bit places are filled with zeroes with a 14-bit and a
12-bit analog value.
With a resolution of 14 bits (including sign), the minimum increment is 1.22mV
(10V: 8192). In this case, both less significant bits of the analog value (bit0 and
bit1) are always 0.
With a resolution of 12 bits (including sign), the incrementation is 4.8mV (10V:
2048); Bits 0 to 3 are always 0.

Copyright © Siemens AG, 2005.


2/A4/2-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.6 Analog value representation of the analog input and output values of the NCK

Table 2-2 Examples of digital analog value coding

Resolution Binary analog value


High byte Low byte
Bit number 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Significance of the SG 214 213 212 211 210 29 28 27 26 25 24 23 22 21 20
bits
14-bit analog value 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 0
12-bit analog value 0 1 1 1 1 0 0 1 1 0 0 1 0 0 0 0

Details about the resolution and rated range of the analog input and output
modules used can be found in:
References: /PHD/, SINUMERIK 840D, NCU Manual
/S7H/, SIMATIC S7, Manual

Examples Here are two examples of digital analog value coding for a nominal range of
10V and 14-bit resolution.

Example 1 Analog value: 9.5V


Amount (decimal number): 7782 = 9.5(V):10(V) * 8192
Amount (binary number): 0111 1001 1001 10
Word (binary number): 0111 1001 1001 1000
Word (hexadecimal number): 7998

Example 2 Analog value: –4.12V


Amount (decimal number): 3375 = –4.12(V):10(V) * 8192
Amount (binary number): 0011 0100 1011 11
Two’s complement: 1100 1011 0100 01
Word (binary number): 1100 1011 0100 0100
Word (hexadecimal number): CB44

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-31
Digital and Analog NCK I/Os (A4) 06.05
2.7 Comparator inputs

2.7 Comparator inputs

Function Two internal comparator inputs bytes (with eight comparator inputs each) are
available in addition to the digital and analog NCK inputs. The signal status of
the comparator inputs is generated on the basis of a comparison between the
analog values present at the high-speed analog inputs and high-speed values
parameterized in setting data (see Fig. 2-5).
The system variable $A_INCO[n] allows the signal status (i.e. the result of the
comparison) of comparator input [n] to be scanned directly in the parts program.
The following applies to index n: n = 1 to 8 for comparator byte 1
n = 9 to 16 for comparator byte 2

Terms In this description, the terms “comparator inputs” (with index [n]; range of n: 1 to
8 or 9 to 16) and “comparator input bits” (with index [b]; range of b: 0 to 7) are
used.
They are related as follows:
for n = 1 to 8: Comparator input n corresponds to
comparator input bit b = n – 1
for n = 9 to 16: Comparator input n corresponds to
comparator input bit b = n –9

Example Comparator input 1 is equivalent to comparator input bit 0.

Assignment of General MD 10530: COMPAR_ASSIGN_ANA_INPUT_1 [b] is set to assign an


analog inputs analog input to input bit [b] of comparator byte 1.

Example MD 10530: COMPAR_ASSIGN_ANA_INPUT_1[0] = 1


MD 10530: COMPAR_ASSIGN_ANA_INPUT_1[1] = 1
MD 10530: COMPAR_ASSIGN_ANA_INPUT_1[7] = 7
Analog input 1 is assigned to input bits 0 and 1 of comparator byte 1
Analog input 7 is assigned to input bit 7 of comparator byte 1
The assignment for comparator byte 2 must be made analogously in the
general MD 10531: COMPAR_ASSIGN_ANA_INPUT_2[b].

Copyright © Siemens AG, 2005.


2/A4/2-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
2.7 Comparator inputs

Comparator General MD 10540: COMPAR_TYPE_1 is used to set the following parameters


parameterization for each bit (0 to 7) of comparator byte 1:

S Comparison type screen form (bits 0 to 7)


The type of comparison conditions is defined for each comparator input bit.
Bit = 1: Associated comparator input bit is set to “1”
if the analog value is  the threshold value
Bit = 0: Associated comparator input bit is set to “0”
if the analog value is  the threshold value

S Output of the comparator input byte via digital NCK outputs (bits 16 to 23)
The comparator bits can also be output directly via the digital NCK outputs
in whole bytes. This requires specification in this byte (bits 16 to 23) of the
digital NCK output byte to be used (see general MD 10540:
COMPARE_TYPE_1).

S Inversion screen form for outputting the comparator input byte


(bits 24 to 31).
For every comparator signal it is also possible to define whether the signal
state to be output at the digital NCK output is to be inverted or not.
Bit = 0: The associated comparator input bit is not inverted
Bit = 1: The associated comparator input bit is inverted

Threshold values The threshold values used for comparisons on comparator byte 1 or 2 must be
stored as setting data. For every comparator input bit [b], you must enter a
separate threshold value.
MD 41600: COMPAR_THRESHOLD_1[b], threshold values for input bit [b] of
comparator byte 1 (b = 0 to 7)

Comparator All NC functions that are processed as a function of digital NCK inputs can also
signals as digital be controlled by the signal states of the comparators. In this case, the byte
NCK inputs address for comparator byte 1 (HW byte 128) or 2 (HW byte 129) must be
entered in the MD: “Assignment of hardware byte used” associated with the NC
function.

Example NC function “Multiple feedrates in one block”.


Setting in channel-specific MD 21220: MULTFEED_ASSIGN_FASTIN = 129.
This activates various feedrate values as a function of the status of comparator
byte 2.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/2-33
Digital and Analog NCK I/Os (A4) 06.05
2.7 Comparator inputs

Digital output byte

Analog input 8 5

Analog input 1 1

MD 10530: COMPAR_ASSIGN_
ANA_INPUT_1[b]=n
Assignment of analog input n Digital outputs
MD: COMPAR_TYPE_1
to comparator bit [b] (byte specification) Bit 16...23

MD 10540: COMPAR_TYPE_1
Bit 0...7
Comparison MD: COMPAR_TYPE_1
Inversion screenform
Bit=0: analog val. < thresh. Bit 24...31
val.or Bit=1: analog value
threshold value

Threshold value 1

Threshold value 8
MD 41600: COMPAR_THRESHOLD_1

Comparator input byte 1 Comparator input byte 2

Comparator input bit 0 1 7 0 1 7

Comparator input (1) (2) (8) (9) (10) (16)


Part program

:
$A_INCO [n]
:
NC functions

Read comparator Access to comparator


input n (n=1 ... 16) from input byte 1 or 2 by NC
part program functions

Fig. 2-5 Functional sequence for comparator input byte 1 (or 2)

Copyright © Siemens AG, 2005.


2/A4/2-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
3 Supplementary Conditions

Supplementary Conditions 3
There are no other supplementary conditions to note.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/3-35
Digital and Analog NCK I/Os (A4) 06.05
3 Supplementary Conditions

Notes

Copyright © Siemens AG, 2005.


2/A4/3-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
4.1 General machine data

Data Descriptions (MD, SD) 4


4.1 General machine data

10300 FASTIO_ANA_NUM_INPUTS
MD number Number of active analog NCK inputs
Default setting: 0 Minimum input limit: 0 Maximum input limit: 8
Changes effective after POWER ON Protection level: 2 / 4 Unit: –
Data type: BYTE Applies from SW: 2.1
Meaning: This machine data defines the number of usable analog NCK inputs on the control.
Only these analog NCK inputs can be addressed by the NC parts program or assigned by
NC functions.
If more analog NCK inputs are defined in the machine data than are available in the hard-
ware of the control, the binary analog actual value is set to zero in the control for the inputs
that do not exist in the hardware. The NCK value can be altered by the PLC (see Subsec-
tion 2.4.1).
Note: CPU computing time on the interpolation level is required for processing the
digital and analog NCK I/Os. The number of active NCK I/Os should be limited
to the demands of the machine so that the interpolation cycle is not over-
loaded.

10310 FASTIO_ANA_NUM_OUTPUTS
MD number Number of active analog NCK outputs
Default setting: 0 Minimum input limit: 0 Maximum input limit: 8
Changes effective after POWER ON Protection level: 2 / 4 Unit: –
Data type: BYTE Applies from SW: 2.1
Meaning: This machine data defines the number of usable analog NCK outputs on the control.
Only these analog NCK outputs can be addressed by the NC parts program or assigned by
NC functions.
If more analog NCK outputs are defined in the machine data than are available in the hard-
ware of the control, no alarm is triggered. The analog values specified by the parts program
can be read by the PLC (see Subsection 2.4.2).
Note: CPU computing time on the interpolation level is required for processing the
digital and analog NCK I/Os. The number of active NCK I/Os should be limited
to the demands of the machine so that the interpolation cycle is not over-
loaded.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/4-37
Digital and Analog NCK I/Os (A4) 06.05
4.1 General machine data

10320 FASTIO_ANA_INPUT_WEIGHT[hw]
MD number Weighting factor for analog NCK inputs [hw]
Default setting: 840D: 10 000 Minimum input limit: 1 Maximum input limit: 10 000 000
FM–NC: 11851
Changes effective after POWER ON Protection level: 2 / 4 Unit: –
Data type: DWORD Applies from SW: 2.1
Meaning: With this MD a weighting factor can be defined for every analog NCK input [n] with which
adaptation to the various A/D converters (depending on the I/O module used; different
modules can be used on the FM-NC) is possible.
[hw] = Index (0–7) for addressing the external analog inputs
The value x must be entered in this machine data which is then to be read in the parts
program with the command x = $A_INA[n] if the corresponding analog input [n] is set to
the maximum value or if the value +32767 is set for this input via the PLC interface.
The value read from the AD converter or PLC interface must be multiplied by the factor
(FASTIO_ANA_INPUT_WEIGHT / 32767) before it can be read by system variable
$A_INA[n] in the parts program (see Fig. 2-3).

An internal value of  32767 is generated if the maximum input voltage is applied at the
AD converter.
Application of the weighting factor for “analog NCK inputs without hardware”: When the
weighting factor is set to 32767, the numerical values input from the part program and
PLC are identical (1:1 communication between part program and PLC). This is of advan-
tage when the analog NCK inputs/outputs are used purely as PLC inputs/outputs without
analog hardware.
Note: The comparator threshold values MD 41600: COMPAR_THRESHOLD_1 or
MD 41601: COMPAR_THRESHOLD_2 are also scaled to
FASTIO_ANA_INPUT_WEIGHT for comparison purposes according to their
analog input assignment.
Application example(s) Example 1: Measuring range of analog input module: 0 to 2V (normal range)
(FM-NC) maximum value: 2370mV (corresponds to 32767)
FASTIO_ANA_INPUT_WEIGHT[0] = 2370
In this case, a 2 V analog value is mapped at IS “Actual value ...” (DB10,
DBB199...) as digitized value +27648 (6C00H) and the value read in the part
program with system variable $A_INA[n] is 2000.
Example 2: Measuring range of analog input module: 0 to 10V (normal range)
(FM-NC) maximum value: 11.851mV (corresponds to
32767)
FASTIO_ANA_INPUT_WEIGHT[1] = 11851
An analog value of 10V is the digitized value 27648 (= PLC value); 10000 is
read with $A_INA[n].
Related to .... IS “Setpoint from the PLC for the analog NCK inputs” (DB10, DBB148–163)
IS “Setpoint from the PLC for the analog NCK outputs” (DB10, DBB170–185)
IS “Setpoint of analog NCK outputs” (DB10, DBB210–225)

Copyright © Siemens AG, 2005.


2/A4/4-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
4.1 General machine data

10330 FASTIO_ANA_OUTPUT_WEIGHT [hw]


MD number Weighting factor for analog NCK outputs [hw]
Default setting: 840D: 10 000 Minimum input limit: 1 Maximum input limit: 10 000 000
FM-NC: 11852
Changes effective after POWER ON Protection level: 2 / 4 Unit: –
Data type: DWORD Applies from SW: 2.1
Meaning: With this MD a weighting factor can be defined for every analog NCK output [n] with
which adaptation to the various DA converters (depending on the I/O module used) is
possible.
[hw] = Index (0–7) for addressing the external analog outputs
The value x must be entered in this machine data which is to cause the analog output [n]
to be set to the maximum value or set the value +32767 for this output in the PLC inter-
face if $A_OUTA[n] = x is programmed in the parts program. An internal value of
 32767 therefore represents the maximum output voltage at the DA converter.
Application of the weighting factor for “analog NCK outputs without hardware”: When the
weighting factor is set to 32767, the numerical values input from the part program and
PLC are identical (1:1 communication between part program and PLC). This is of advan-
tage when the analog NCK outputs are used purely as PLC outputs without analog hard-
ware.
Application example(s) Example (FM-NC):
Output range of analog output module: 0 to 10V
(normal range)
maximum value (overrange): 11852mV
(corresponds to 32767)
FASTIO_ANA_OUTPUT_WEIGHT[0] = 11852
When $A_OUTA[n] is programmed as 10 000, +27648 (6C00H) is mapped at IS “Set-
point ...” (DB10, DBB210...); +10V is applied to the analog output.
Example (840D):
Output range of the analog output module: 0 to 10V
Maximum value: 10 000mV (corresponds to 32767)
FASTIO_ANA_OUTPUT_WEIGHT[0] = 10000
When $A_OUTA[n] is programmed as 10 000, +32767 (i.e. 7FFF) is mapped at IS
“Setpoint ...” (DB10, DBB210...); +10V is generated at the analog output.
Related to .... IS “Setpoint from the PLC for the analog NCK inputs” (DB10, DBB148–163)
IS “Setpoint from the PLC for the analog NCK outputs” (DB10, DBB170–185)
IS “Setpoint of analog NCK outputs” (DB10, DBB210–225)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/4-39
Digital and Analog NCK I/Os (A4) 06.05
4.1 General machine data

10350 FASTIO_DIG_NUM_INPUTS
MD number Number of active digital NCK input bytes
Default setting: 1 Minimum input limit: 0 Maximum input limit: 5
Changes effective after POWER ON Protection level: 2 / 4 Unit: –
Data type: BYTE Applies from SW: 2.1
Meaning: The number of bytes of the digital NCK inputs that can be used on the control are defined in
this machine data.
These digital NCK inputs can be read directly by the parts program. The signal state at the
HW inputs can also be changed by the PLC.
If more digital NCK inputs are defined in the machine data than are available in the
hardware of the control, a signal status of zero is set in the control for the inputs that do not
exist in the hardware. The NCK value can be altered by the PLC.
See Subsection 2.2.1 for a more detailed description.
Application example(s) Digital NCK inputs 5 to 8 can only be influenced by the PLC (no hardware inputs).
Related to .... IS “Disable the digital NCK inputs” (DB10, DBB0, DBB122 ...)
IS “Set the digital NCK inputs from the PLC” (DB10, DBB1, DBB123 ...)
IS “Actual value of the digital NCK inputs” (DB10, DBB60, DBB186 ...)

10360 FASTIO_DIG_NUM_OUTPUTS
MD number Number of active digital NCK output bytes
Default setting: 1 Minimum input limit: 0 Maximum input limit: 5
Changes effective after POWER ON Protection level: 2 / 4 Unit: –
Data type: BYTE Applies from SW: 2.1
Meaning: The number of bytes of the digital NCK outputs that can be used on the control are defined
in this machine data.
These digital NCK outputs can be set directly by the parts program. The PLC is able to
S set the digital outputs with IS “Disable the digital NCK outputs” to “0” in a defined way.
S alter the NCK value with IS “Overwrite screen form for digital NCK outputs”.
S specify a PLC value with IS “Setting screen form for digital NCK outputs”.

If more digital NCK outputs are defined in the machine data than are available in the
hardware of the control, no alarm is triggered. The signal states
specified by the part program can be read by the PLC.
See Subsection 2.2.2 for a more detailed description.
Special cases, errors, ... Digital NCK outputs 5 to 8 can only be processed by the PLC (no hardware outputs).
...
Related to .... IS “Disable the digital NCK outputs” (DB10, DBB4, DBB130 ...)
IS “Overwrite screen form of the digital NCK outputs” (DB10, DBB5, DBB131 ...)
IS “Setpoint from the PLC for the digital NCK outputs” (DB10, DBB6, DBB132 ...)
IS “Setting screen form of the digital NCK outputs” (DB10, DBB7, DBB133 ...)
IS “Setpoint of the digital NCK outputs” (DB10, DBB64, DBB190 ...)

Copyright © Siemens AG, 2005.


2/A4/4-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
4.1 General machine data

10361 FASTIO_DIG_SHORT_CIRCUIT
MD number Shortcircuits of digital inputs and outputs
Default setting: 0 Minimum input limit: – Maximum input limit: –
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: DWORD Applies from SW: 4.2
Meaning: Defined short-circuits between the digital input/output signals of the fast NCK I/Os are
achieved by a logic operation between the signals read in from the fast NCK I/Os or PLC
interface and the defined output signals. Upon the logic operation, the output signals always
remain unchanged, the inputs that are to be accounted for internally are achieved from the
read inputs and the logic operation. If more than one output bit is specified for an input bit in
overwrite mode, the result is determined by the last assignment defined in the list.
The definition for non-existent or non-activated input/outputs is ignored without alarm out-
put.
Bits 0–7: Number of input byte to be written (1 – 5)
Bits 8–15 Bit number within input byte (1–8)
Logic operation:
The type of logic is selected by adding a hexadecimal number to the input bit number:
00 Overwrite input like output
A0 Input is read input ANDed with the
status of the specified output
B0 Input is read input ORed with the
status of the specified output
Bits 16–23: Number of output byte (1 – 5)
Bits 24–31 Bit number within output byte (1–8)
Application example(s) FASTIO_DIG_SHORT_CIRCUIT[0] = H04010302
Input 3 of 2nd byte
Output 4 of 1st byte (= 4th onboard NCU output)
The input state is overwritten by the specified output.
FASTIO_DIG_SHORT_CIRCUIT[1] = H0705A201
Input 2 of 1st byte (= 2nd onboard NCU input
Output 7 of 5th byte
The input state is ANDed with the specified output.
FASTIO_DIG_SHORT_CIRCUIT[2] = H0103B502
Input 5 of 2nd byte
Output 1 of 3rd byte
The input state is ORed with the specified output.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/4-41
Digital and Analog NCK I/Os (A4) 06.05
4.1 General machine data

10362 HW_ASSIGN_ANA_FASTIN[hw]
MD number Hardware assignment of external analog NCK inputs
Default setting: Minimum input limit: Maximum input limit:
with 840D/810D: 01000000 with 840D/810D: 01000000 with 840D/810D: 011E0802
with 840Di: 050000A0 with 840Di: 05000000 with 840Di: 050003FF
with FM-NC: 02000000 with FM-NC: 02000000 with FM-NC: 02070004
Changes effective after POWER ON Protection level: 2 / 4 Unit: Hexadecimal
Data type: DWORD Applies from SW: 2.1
Meaning: The following 4 bytes define the assignment between the external analog NCK inputs and
the hardware
Applies to 840D/810D and FM-NC:
1. byte: I/O No.
2nd byte: Submodule No.
3rd byte: Module No.
4th byte: Segment No.
Applies to 840Di:
1. byte: Logical address low
2nd byte: Logical address high
3rd byte: Not used (00)
4th byte: Segment No. for PROFIBUS-DP (05)
Array length = maximum number of analog inputs on NCK is set in MD10300.
As soon as value 0 is entered in byte 3 (module no.) external I/Os are no longer processed
by the control. A simulated input is defined.
The hardware assignment is different on the SINUMERIK 840D/810D, 840Di and FM-NC
controls.
The individual bytes are explained under MD 10366: HW_ASSIGN_DIG_FASTIN.
[hw] = Index (0–7) for addressing the external analog inputs
Related to .... MD 10366: HW_ASSIGN_DIG_FASTIN
MD 10368: HW_ASSIGN_DIG_FASTOUT
MD 10364: HW_ASSIGN_ANA_FASTOUT

Copyright © Siemens AG, 2005.


2/A4/4-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
4.1 General machine data

10364 HW_ASSIGN_ANA_FASTOUT[hw]
MD number Hardware assignment of external analog NCK outputs
Default setting: Minimum input limit: Maximum input limit:
with 840D/810D: 01000000 with 840D/810D: 01000000 with 840D/810D: 011E0802
with 840Di: 050000A0 with 840Di: 05000000 with 840Di: 050003FF
with FM-NC: 02000000 with FM-NC: 02000000 with FM-NC: 02070004
Changes effective after POWER ON Protection level: 2 / 4 Unit: Hexadecimal
Data type: DWORD Applies from SW: 2.1
Meaning: The following 4 bytes define the assignment between the external analog NCK outputs and
the hardware
Applies to 840D/810D and FM-NC:
1. byte: I/O No.
2nd byte: Submodule No.
3rd byte: Module No.
4th byte: Segment No.
Applies to 840Di:
1. byte: Logical address low
2nd byte: Logical address high
3rd byte: Not used (00)
4th byte: Segment No. for PROFIBUS-DP (05)
Array length = maximum number of analog outputs on NCK is set in MD10310.
As soon as value 0 is entered in byte 3 (module no.) external I/Os are no longer processed
by the control. A simulated input is defined.
The hardware assignment is different on the SINUMERIK 840D/810D and FM-NC.
The individual bytes are explained under MD 10366: HW_ASSIGN_DIG_FASTIN.
[hw] = Index (0–7) for addressing the external analog outputs
Related to .... MD 10366: HW_ASSIGN_DIG_FASTIN
MD 10368: HW_ASSIGN_DIG_FASTOUT
MD 10362: HW_ASSIGN_ANA_FASTIN

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/4-43
Digital and Analog NCK I/Os (A4) 06.05
4.1 General machine data

10366 HW_ASSIGN_DIG_FASTIN[hw]
MD number Hardware assignment of external digital NCK inputs
Default setting: Minimum input limit: Maximum input limit:
with 840D/810D: 01000000 with 840D/810D: 01000000 with 840D/810D: 011E0802
with 840Di: 05000090 with 840Di: 05000000 with 840Di: 050003FF
with FM-NC: 02000000 with FM-NC: 02000000 with FM-NC: 02070004
Changes effective after POWER ON Protection level: 2 / 4 Unit: Hexadecimal
Data type: DWORD Applies from SW: 2.1
Meaning: The following 4 bytes define the assignment between the external digital NCK I/Os and the
hardware
Applied to 840D/810D and FM-NC:
1. byte: I/O No.
2nd byte: Submodule No.
3rd byte: Module No.
4th byte: Segment No.
Applies to 840Di:
1. byte: Logical address low
2nd byte: Logical address high
3rd byte: Not used (00)
4th byte: Segment No. for PROFIBUS-DP (05)
Array length = maximum number of digital input bytes on NCK is set in MD10350.
As soon as value 0 is entered in byte 3 (module no.), the input byte concerned is not pro-
cessed by the control. A simulated input is defined.
The hardware assignment is different on the SINUMERIK 840D, 840Di and FM-NC.
840D/810D:
I/O no.: Number of the I/O byte on the DP compact module
(range: 1 to 2; always 1 for analog inputs/outputs)
Submodule no.: Submodule slot on the terminal block into which the DP compact mo-
dule is slotted (range: 1 to 8)
Module no.: Number of the logical slot into which the terminal block with the exter-
nal I/Os is slotted.
The assignment of the logical slot to a physical slot is made with
MD13010: DRIVE_LOGIC_NR (logical drive number). Each module
occupies a physical slot. The first 6 slots on the 810D are permanently
assigned.
Segment no.: For 840/810D always 1 (identifier for 611D bus)
Example: HW_ASSIGN_DIGITAL_FASTIN[3] = 01 04 03 02
1st byte: 02 = 2nd input byte of a 16-bit input module
2nd byte: 03 = Input module inserted in slot 3 of terminal block
3rd byte: 04 = Terminal block slotted into logical drive number 4
4th byte: 01 = Identifier for 611D bus

Copyright © Siemens AG, 2005.


2/A4/4-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
4.1 General machine data

10366 HW_ASSIGN_DIG_FASTIN[hw]
MD number Hardware assignment of external digital NCK inputs
Meaning:
FM-NC:
I/O no.: Number of the input byte on the signal module
(range depends on the I/O module: 1 to 4)
Submodule no.: Of no relevance for FM-NC (this byte must be preset with 01 in a defi-
ned way)
Module no.: Number of the physical slot on the local P bus.
(Range: 1 to 7)
Note: The FM-NC is slot 0; the physical slots for the digital and
analog I/Os are located to the left of this.
Segment no.: Always 2 for FM-NC (identifier for local P bus)
Example: HW_ASSIGN_DIGITAL_FASTIN[3] = 02 04 00 02
1st byte: 02 = 2nd input byte of a 16-bit digital input module
2nd byte: 00 = Not relevant
3rd byte: 04 = Input module slotted into logical drive number 4
4th byte: 02 = Identifier for local P bus
[hw] = Index (0 to 3) for addressing the external digital input byte
Related to .... MD 10368: HW_ASSIGN_DIG_FASTOUT
MD 10362: HW_ASSIGN_ANA_FASTIN
MD 10364: HW_ASSIGN_ANA_FASTOUT

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/4-45
Digital and Analog NCK I/Os (A4) 06.05
4.1 General machine data

10368 HW_ASSIGN_DIG_FASTOUT[hw]
MD number Hardware assignment of external digital NCK outputs
Default setting: Minimum input limit: Maximum input limit:
with 840D/810D: 01000000 with 840D/810D: 01000000 with 840D/810D: 011E0802
with 840Di: 05000090 with 840Di: 05000000 with 840Di: 050003FF
with FM-NC: 02000000 with FM-NC: 02000000 with FM-NC: 02070004
Changes effective after POWER ON Protection level: 2 / 4 Unit: Hexadecimal
Data type: DWORD Applies from SW: 2.1
Meaning: The following 4 bytes define the assignment between the external digital NCK outputs and
the hardware
Applies to 840D/810D and FM-NC:
1st byte: I/O No.
2nd byte: Submodule No.
3rd byte: Module No.
4th byte: Segment No.
Applies to 840Di:
1st byte: Logical address low
2nd byte: Logical address high
3rd byte: Not used (00)
4th byte: Segment No. for PROFIBUS-DP (05)
Array length = maximum number of digital output bytes on NCK is set in MD10360.
As soon as value 0 is entered in byte 3 (module no.), the input byte concerned is not pro-
cessed by the control. A simulated input is defined.
The hardware assignment is different on the SINUMERIK 840D/810D and FM-NC.
The individual bytes are explained under MD: HW_ASSIGN_DIG_FASTIN.
[hw] = Index (0 to 3) for addressing the external digital output byte
Related to .... MD 10366: HW_ASSIGN_DIG_FASTIN
MD 10362: HW_ASSIGN_ANA_FASTIN
MD 10364: HW_ASSIGN_ANA_FASTOUT

Copyright © Siemens AG, 2005.


2/A4/4-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
4.1 General machine data

10380 HW_UPDATE_RATE_FASTIO [tb]


MD number Updating rate of clock-synchronous external NCK I/Os
Default setting: 2 Minimum input limit: 2 Maximum input limit: 3
Changes effective after POWER ON Protection level: 2 / 4 Unit: –
Data type: BYTE Applies from SW: 2.1
Meaning: With this machine data, the cycle frequency for the clock-synchronous input and output of
the external NCK I/Os is selected (840D only).
The cycle time applies to all I/O modules on a terminal block that are operated in synchro-
nism with the clock (MD 10384: HW_CLOCKED_MODULE_MASK[tb]=1).
The selection can be made from the following cycle frequencies:
Value = 1: Synchronous input/outputs in hardware cycles (not in SW 2)
(SYSCLOCK_CYCLE_TIME / SYSCLOCK_SAMPL_TIME_RATIO)
2: Synchronous input/outputs in position control cycles (default setting)
(MD: POSCTR_SYSCLOCK_TIME_RATIO)
3: Synchronous inputs/outputs in interpolation cycles
(MD: IPO_SYSCLOCK_TIME_RATIO)
Note on index [tb] (tb = 0 to 1):
Index [tb] identifies the connected NCU terminal blocks in ascending order of the defined
logical module numbers (parameterization with MD: DRIVE_LOGIC_NR “logical drive
number”).
Example: An additional two terminal blocks which are parameterized with the logical drive
number 6 and 7 are connected to the drive bus.
The following assignments are made for the terminal blocks in the control:
S HW_UPDATE_RATE_FASTIO[0] parameterizes terminal block 1 with no. 6
S HW_UPDATE_RATE_FASTIO[1] parameterizes terminal block 2 with no. 7

This assignment applies analogously to:


MD 10380: HW_UPDATE_RATE_FASTIO[tb] and
MD 10384: HW_CLOCKED_MODULE_MASK [tb]
For more detailed information see
References: /FB/, G2, “Velocities, Setpoint/Actual Value Systems, Control”
Note: Please consider the hardware response times of the external I/O modules
used.
References: /PHD/, SINUMERIK 840D, NCU Manual
Related to .... MD 10382: HW_LEAD_TIME_FASTIO
MD 10384: HW_CLOCKED_MODULE_MASK
POSCTR_SYSCLOCK_TIME_RATIO
IPO_SYSCLOCK_TIME_RATIO
SYSCLOCK_SAMPL_TIME_RATIO
DRIVE_LOGIC_NR
References References: /FB/, G2, “Velocities, Setpoint/Actual Value Systems, Control”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/4-47
Digital and Analog NCK I/Os (A4) 06.05
4.1 General machine data

10382 HW_LEAD_TIME_FASTIO [tb]


MD number Lead time for clock-synchronous external NCK I/Os
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 / 4 Unit: ms
Data type: DWORD Applies from SW: 2.1
Meaning: A lead time can be defined for digital and analog NCK I/Os (MD 10384:
HW_CLOCKED_MODULE_MASK = 1) operated in synchronism with the clock.
The input signal is stored this length of time before the defined cycle. The output signal is
sent to the hardware this same length of time before the defined cycle.
With NCK inputs, for example, this makes it possible to consider the hardware-determined
conversion time of the AD converter so that the digitized analog value is available on the
cycle.
If the value set in this machine data exceeds the fixed cycle time (MD 10380:
HW_UPDATE_RATIO_FASTIO), it is limited internally to the largest possible offset (i.e. to
the parameterized cycle time).
The lead time applies to all NCK inputs/outputs of the terminal block addressed with index
[tb] which are operated in synchronism with the clock.
Note on index [tb] see MD 10380: HW_UPDATE_RATE_FASTIO.
Related to .... MD 10380: HW_UPDATE_RATIO_FASTIO
MD 10384: HW_CLOCKED_MODULE_MASK

10384 HW_CLOCKED_MODULE_MASK [tb]


MD number Clock-synchronous processing of external NCK I/Os
Default setting: 00 Minimum input limit: 00 Maximum input limit: FF
Changes effective after POWER ON Protection level: 2 / 4 Unit: Hexadecimal
Data type: BYTE Applies from SW: 2.1
Meaning: With SINUMERIK 840D, the I/O modules of the external NCK I/Os can be operated in the
following way:
S Asynchronously, i.e. the input and output values are made available in cycles set by
the terminal block which are asynchronous to the internal NC processing cycles.
S Synchronously, i.e. the input and output values are made available synchronously to a
settable internal NC processing cycle.

The mode of operation can be set via a bit mask (bits 0 to 7) for each individual I/O module
of the terminal block addressed with index [tb] (bit 0 for I/O module on slot 1 ... bit 7 for I/O
module on slot 8).
The bits have the following meaning:
Bit n = 0: I/O module on slot n+1 is operated asynchronously
Bit n = 1: I/O module on slot n+1 is operated synchronously
The value is of no significance for unassigned slots of the terminal block.
Example: HW_CLOCKED_MODULE_MASK[0] = 30 (bit mask: 0011 0000)
The I/O modules of terminal block 1 on slots 6 and 5 are operated in synchro-
nism with the clock.
Note: Digital NCK inputs/outputs are generally always operated asynchronously. When
analog NCK inputs/outputs are used in closed control loops, values often have to be read in
and out in synchronism with the clock.
Notes: – On index [tb] see MD 10380: HW_UPDATE_RATE_FASTIO.
– Module 6FC5211-0AA10-0AA0 can only operate synchronously.
Related to .... MD 10382: HW_LEAD_TIME_FASTIO
MD 10380: HW_UPDATE_RATIO_FASTIO

Copyright © Siemens AG, 2005.


2/A4/4-48 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
4.1 General machine data

10394 PLCIO_NUM_BYTES_IN
MD number Number of direct read inputs bytes of PLC I/Os
Default setting: 0 Minimum input limit: 0 Maximum input limit: 32
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: BYTE Applies from SW: 5.1
Meaning: Number of PLC I/O input bytes that can be read directly by the NC.
These bytes are transferred via the PLC operating system and not influenced by the PLC
basic or user program, resulting in a delay time of less than approximately 0.5ms. They can
be read by parts programs/synchronized actions via the following system variables:
$A_PBB_IN
$A_PBW_IN
$A_PBD_IN
$A_PBR_IN
Special cases, errors, ... Check and, if necessary, refer to the motor data sheet to correct machine data MD 10394:
... PLCIO_NUM_BYTES_IN and
MD 10395: PLCIO_LOGIC_ADDRESS_IN must be consistent with the PLC
configuring data.
Related to .... MD 10395: PLCIO_LOGIC_ADDRESS_IN

10395 PLCIO_LOGIC_ADDRESS_IN
MD number Start address of direct read input bytes of PLC I/Os
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after power ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 5.1
Meaning: Logical start address of direct PLC input devices
From this address onwards, a number of PLCIO_NUM_BYTES_IN bytes for direct use by
the NC must be defined by the PLC hardware configuration.
These bytes are transferred via the PLC operating system and not influenced by the PLC
basic or user program, resulting in a delay time of less than approximately 0.5ms. They can
be read by parts programs/synchronized actions via the following system variables:
$A_PBB_IN,
$A_PBW_IN,
$A_PBD_IN,
$A_PBR_IN.
Special cases, errors, ... Check and, if necessary, refer to the motor data sheet to correct machine data MD 10394:
... PLCIO_NUM_BYTES_IN and
MD 10395: PLCIO_LOGIC_ADDRESS_IN must be consistent with the PLC
configuring data.
Related to .... MD 10394: PLCIO_NUM_BYTES_IN

10396 PLCIO_NUM_BYTES_OUT
MD number Number of direct write output bytes of PLC I/Os
Default setting: 0 Minimum input limit: 0 Maximum input limit: 32
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: BYTE Applies from SW: 5.1
Meaning: Number of PLC I/O output bytes that can be written directly by the NC. These bytes are
transferred via the PLC operating system and not influenced by the PLC basic or user pro-
gram, resulting in a delay time of less than approximately 0.5ms. They can be written/read
by parts programs/synchronized actions via the following system variables:
$A_PBB_OUT,
$A_PBW_OUT,
$A_PBD_OUT,
$A_PBR_OUT
Special cases, errors, ... Check and, if necessary, refer to the motor data sheet to correct machine data MD 10396:
... PLCIO_NUM_BYTES_OUT and MD 10397: PLCIO_LOGIC_ADDRESS_OUT must be
consistent with the PLC configuring data.
In the case of an error, other PLC signals would be overwritten.
Related to .... MD 10397: PLCIO_LOGIC_ADDRESS_OUT

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/4-49
Digital and Analog NCK I/Os (A4) 06.05
4.1 General machine data

10397 PLCIO_LOGIC_ADDRESS_OUT
MD number Start address of direct write output bytes of PLC I/Os
Default setting: 0 Minimum input limit: 0 Maximum input limit: Plus
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 5.1
Meaning: Logical start address of direct PLC output devices From this address onwards, a number of
PLCIO_NUM_BYTES_IN bytes must be defined by the PLC hardware configuration.
for direct use by the NC.
These bytes are transferred via the PLC operating system and not influenced by the PLC
basic or user program, resulting in a delay time of less than approximately 0.5ms. They can
be written/read by parts programs/synchronized actions via the following system variables:
$A_PBB_OUT,
$A_PBW_OUT,
$A_PBD_OUT,
$A_PBR_OUT.
Special cases, errors, ... Check and, if necessary, refer to the motor data sheet to correct machine data MD 10396:
... PLCIO_NUM_BYTES_OUT and MD 10397: PLCIO_LOGIC_ADDRESS_OUT must be
consistent with the PLC configuring data. In the case of an error, other PLC signals would
be overwritten.
Related to .... MD 10396: PLCIO_NUM_BYTES_OUT

10398 PLCIO_IN_UPDATE_TIME
MD number Update time for PLC I/O input cycle
Default setting: 0 Minimum input limit: 0 Maximum input limit: 10000
Changes effective after POWER ON Protection level: 2 / 7 Unit: ms
Data type: DOUBLE Applies from SW: 6.4
Meaning: Sets the time period within which the PLC I/O data that can be read directly by $A_PBx_IN
system variables is updated.

This time value is rounded up to the next-higher multiple of the period defined
by the IPO cycle.
Related to .... MD 10071: IPO_CYCLE_TIME

Copyright © Siemens AG, 2005.


2/A4/4-50 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
4.1 General machine data

10399 PLCIO_TYPE_REPRESENTATION
MD number Little/big endian representation for PLC I/O
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: Applies from SW: 6.4
Meaning: Little/big endian format representation of $A_PBx_OUT, $A_PBx_IN system variables
for PLC I/Os which can be directly controlled by the NCK.

value = 0 ;system variables are represented in little endian format

value = 1 ;system variables are represented in big endian format

Generally, PLC I/Os must always be controlled in big endian format


(value = 1). However, for compatibility reasons, the default setting
is little-endian format (value = 0).

10530 COMPAR_ASSIGN_ANA_INPUT_1[b]
10531 COMPAR_ASSIGN_ANA_INPUT_2[b]
MD number Hardware assignment of analog inputs for comparator byte 1 (or 2)
[bit number]
Default setting: 0 Minimum input limit: 0 Maximum input limit: 8
Changes effective after POWER ON Protection level: 2 / 4 Unit: –
Data type: BYTE Applies from SW: 2.1
Meaning: With this MD, the analog inputs 1 to 8 are assigned to a bit number of comparator byte 1 or
2. This input bit of the comparator is set to “1” if the comparison between the applied analog
value and the associated threshold value
(MD 41600: COMPAR_THRESHOLD_1 or MD 41601: COMPAR_THRESHOLD_2) fulfils
the condition parameterized with
MD 10540: COMPAR_TYPE_1 or MD 10541: COMPAR_TYPE_2).
In this case, an analog input can be assigned to a number of comparator input bits.
The following generally applies for comparator byte 1:
COMPAR_ASSIGN_ANA_INPUT_1 [b] = n
with index: b = number of comparator input bit (0 to 7)
n = number of analog input (1 to 8)
Example: COMPAR_ASSIGN_ANA_INPUT_1[0] = 1
COMPAR_ASSIGN_ANA_INPUT_1[1] = 2
COMPAR_ASSIGN_ANA_INPUT_1[2] = 1
COMPAR_ASSIGN_ANA_INPUT_1[3] = 3
COMPAR_ASSIGN_ANA_INPUT_1[4] = 3
COMPAR_ASSIGN_ANA_INPUT_1[5] = 1
COMPAR_ASSIGN_ANA_INPUT_1[6] = 1
COMPAR_ASSIGN_ANA_INPUT_1[7] = 1
Analog input 1 affects input bit 0, 2 , 5, 6 and 7 of comparator byte 1
Analog input 2 affects input bit 1 of comparator byte 1
Analog input 3 affects input bits 3 and 4 of comparator byte 1
The same also applies to comparator byte 2 with respect to
COMPAR_ASSIGN_ANA_INPUT_2[b].
See Section 2.7 for a more detailed description.
Related to .... MD 10540: COMPAR_TYPE_1
MD 10541: COMPAR_TYPE_2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/4-51
Digital and Analog NCK I/Os (A4) 06.05
4.2 General setting data

10540 COMPAR_TYPE_1
10541 COMPAR_TYPE_2
MD number Parameterization for comparator byte 1 or 2
Default setting: 0 Minimum input limit: Maximum input limit:
Changes effective after POWER ON Protection level: 2 / 4 Unit: Binary mask
Data type: DWORD Applies from SW: 2.1
Meaning: The following parameters can be set with COMPAR_TYPE_1 for the individual input bits
(0 to 7) of comparator byte 1:
S Bits 0 to 7: Type of comparison mask (for comparator input bit 0 to 7)
Bit = 1: Input bit = 1 when analog value threshold value
Bit = 0: Input bit = 1 when analog value < threshold value
(threshold value set with MD 41600: COMPAR_THRESHOLD_1 or MD 41601:
COMPAR_THRESHOLD_2)
S Bits 8 to 15: Not assigned (to be set to 0 in a defined way)
S Bits 16 to 23: Assignment of a hardware output byte for the output of the
comparator states (stating byte address)
Byte = 0: No output via digital NCK outputs
Byte = 1: Output via digital on-board NCK outputs (1 to 4)
Byte = 2: Output via external digital NCK outputs 9 to 16
Byte = 3: Output via external digital NCK outputs 17 to 24
Byte = 4: Output via external digital NCK outputs 25 to 32
Byte = 5: Output via external digital NCK outputs 33 to 40
S Bits 24 to 31: Inversion screen form for the output of comparator states (bit 0 to 7)
Bit = 0: Input bit is not inverted
Bit = 1: Input bit is inverted

The same also applies to comparator byte 2 with COMPAR_TYPE_2.


For more information please refer to Section 2.7.
Related to .... MD 10530: COMPAR_ASSIGN_ANA_INPUT_1
MD 10531: COMPAR_ASSIGN_ANA_INPUT_2
MD 41600: COMPAR_THRESHOLD_1
MD 41601: COMPAR_THRESHOLD_2
MD 10360: FASTIO_DIG_NUM_OUTPUTS

4.2 General setting data

41600 COMPAR_THRESHOLD_1[b]
41601 COMPAR_THRESHOLD_2[b]
MD number Threshold values for comparator byte 1 or 2 [bit 0 to 7]
Default setting: 0 Minimum input limit: 0 Maximum input limit:  10 000
Changes effective immediately Protection level: 7 Unit: mV
Data type: DOUBLE Applies from SW: 2.1
Meaning: COMPAR_THRESHOLD_1[b] defines the threshold values for the individual input bits[b] of
comparator byte 1.
The same also applies to comparator byte 2 with COMPAR_THRESHOLD_2[b].
Index [b]: Bits 0 – 7
See Section 2.7 for a more detailed description.
Related to .... MD 10530: COMPAR_ASSIGN_ANA_INPUT_1
MD 10531: COMPAR_ASSIGN_ANA_INPUT_2
MD 10540: COMPAR_TYPE_1
MD 10541: COMPAR_TYPE_2

Copyright © Siemens AG, 2005.


2/A4/4-52 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
5.1 NC specific signals

Signal Descriptions 5
5.1 NC specific signals
The overview in Subsections 5.1.1 and 5.1.3 lists only the signals which are
described below. For a complete list of signals, please see
References: /LIS/, Lists

5.1.1 Overview of signals from PLC to NC (DB10)

DB10 Signals to NC interface PLC ! NC


DBB Bit7 Bit6 Bit5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Disable digital NCK inputs
0 Digital inputs without hardware #) On-board inputs §)
Input 8 Input 7 Input 6 Input 5 Input 4 Input 3 Input 2 Input 1
Setting digital NCK inputs on the PLC
1 Digital inputs without hardware #) On-board inputs §)
Input 8 Input 7 Input 6 Input 5 Input 4 Input 3 Input 2 Input 1
Disable digital NCK outputs
4 Digital outputs without hardware #) On-board outputs §)
Output 8 Output 7 Output 6 Output 5 Output 4 Output 3 Output 2 Output 1
Overwrite screen form for digital NCK outputs
5 Digital outputs without hardware #) On-board outputs §)
Output 8 Output 7 Output 6 Output 5 Output 4 Output 3 Output 2 Output 1
Setting value from PLC for the digital NCK outputs
6 Digital outputs without hardware #) On-board outputs §)
Output 8 Output 7 Output 6 Output 5 Output 4 Output 3 Output 2 Output 1
Setting screen form for digital NCK outputs
7 Digital outputs without hardware #) On-board outputs §)
Output 8 Output 7 Output 6 Output 5 Output 4 Output 3 Output 2 Output 1
Notes:
#) Bits 4 to 7 of the digital NCK outputs can be processed by the PLC even though there are no equivalent hardware
I/Os. These bits can therefore also be used for data exchange between the NCK and PLC.
§) With the 840D, the NCK digital inputs and outputs 1 to 4 are provided as onboard hardware inputs and outputs.
These can be processed by the PLC according to #).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/5-53
Digital and Analog NCK I/Os (A4) 06.05
5.1 NC specific signals

DB10 Signals to NC interface PLC ! NC


DBB Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Disable digital NCK inputs
122
Input 16 Input 15 Input 14 Input 13 Input 12 Input 11 Input 10 Input 9

Setting digital NCK inputs on the PLC


123
Input 16 Input 15 Input 14 Input 13 Input 12 Input 11 Input 10 Input 9

Disable digital NCK inputs


124
Input 24 Input 23 Input 22 Input 21 Input 20 Input 19 Input 18 Input 17

Setting digital NCK inputs on the PLC


125
Input 24 Input 23 Input 22 Input 21 Input 20 Input 19 Input 18 Input 17

Disable digital NCK inputs


126
Input 32 Input 31 Input 30 Input 29 Input 28 Input 27 Input 26 Input 25

Setting digital NCK inputs on the PLC


127
Input 32 Input 31 Input 30 Input 29 Input 28 Input 27 Input 26 Input 25

Disable digital NCK inputs


128
Input 40 Input 39 Input 38 Input 37 Input 36 Input 35 Input 34 Input 33

Setting digital NCK inputs on the PLC


129
Input 40 Input 39 Input 38 Input 37 Input 36 Input 35 Input 34 Input 33

Disable digital NCK outputs


130
Output 16 Output 15 Output 14 Output 13 Output 12 Output 11 Output 10 Output 9

Overwrite screen form for digital NCK outputs


131
Output 16 Output 15 Output 14 Output 13 Output 12 Output 11 Output 10 Output 9

Setting value from PLC for the digital NCK outputs


132
Output 16 Output 15 Output 14 Output 13 Output 12 Output 11 Output 10 Output 9

Setting screen form for digital NCK outputs


133
Output 16 Output 15 Output 14 Output 13 Output 12 Output 11 Output 10 Output 9

Disable digital NCK outputs


134
Output 24 Output 23 Output 22 Output 21 Output 20 Output 19 Output 18 Output 17

Overwrite screen form for digital NCK outputs


135
Output 24 Output 23 Output 22 Output 21 Output 20 Output 19 Output 18 Output 17

Setting value from PLC for the digital NCK outputs


136
Output 24 Output 23 Output 22 Output 21 Output 20 Output 19 Output 18 Output 17

Setting screen form for digital NCK outputs


137
Output 24 Output 23 Output 22 Output 21 Output 20 Output 19 Output 18 Output 17

Disable digital NCK outputs


138
Output 32 Output 31 Output 30 Output 29 Output 28 Output 27 Output 26 Output 25

Overwrite screen form for digital NCK outputs


139
Output 32 Output 31 Output 30 Output 29 Output 28 Output 27 Output 26 Output 25

Setting value from PLC for the digital NCK outputs


140
Output 32 Output 31 Output 30 Output 29 Output 28 Output 27 Output 26 Output 25

Setting screen form for digital NCK outputs


141
Output 32 Output 31 Output 30 Output 29 Output 28 Output 27 Output 26 Output 25

Disable digital NCK outputs


142
Output 40 Output 39 Output 38 Output 37 Output 36 Output 35 Output 34 Output 33

Copyright © Siemens AG, 2005.


2/A4/5-54 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
5.1 NC specific signals

DB10 Signals to NC interface PLC ! NC


DBB Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Overwrite screen form for digital NCK outputs
143
Output 40 Output 39 Output 38 Output 37 Output 36 Output 35 Output 34 Output 33

Setting value from PLC for the digital NCK outputs


144
Output 40 Output 39 Output 38 Output 37 Output 36 Output 35 Output 34 Output 33

Setting screen form for digital NCK outputs


145
Output 40 Output 39 Output 38 Output 37 Output 36 Output 35 Output 34 Output 33

Disable analog NCK inputs


146
Input 8 Input 7 Input 6 Input 5 Input 4 Input 3 Input 2 Input 1

Setting screen form for analog NCK inputs


147
Input 8 Input 7 Input 6 Input 5 Input 4 Input 3 Input 2 Input 1

148, 149 Setting value from PLC for analog input 1 of the NCK

150, 151 Setting value from PLC for analog input 2 of the NCK

152, 153 Setting value from PLC for analog input 3 of the NCK

154, 155 Setting value from PLC for analog input 4 of the NCK

156, 157 Setting value from PLC for analog input 5 of the NCK

158, 159 Setting value from PLC for analog input 6 of the NCK

160, 161 Setting value from PLC for analog input 7 of the NCK

162, 163 Setting value from PLC for analog input 8 of the NCK

Overwrite screen form for analog NCK outputs


166
Output 8 Output 7 Output 6 Output 5 Output 4 Output 3 Output 2 Output 1

Setting screen form for analog NCK outputs


167
Output 8 Output 7 Output 6 Output 5 Output 4 Output 3 Output 2 Output 1

Disable analog NCK outputs


168
Output 8 Output 7 Output 6 Output 5 Output 4 Output 3 Output 2 Output 1

170, 171 Setting value from PLC for analog output 1 of NCK

172, 173 Setting value from PLC for analog output 2 of NCK

174, 175 Setting value from PLC for analog output 3 of NCK

176, 177 Setting value from PLC for analog output 4 of NCK

178, 179 Setting value from PLC for analog output 5 of NCK

180, 181 Setting value from PLC for analog output 6 of NCK

182, 183 Setting value from PLC for analog output 7 of NCK

184, 185 Setting value from PLC for analog output 8 of NCK

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/5-55
Digital and Analog NCK I/Os (A4) 06.05
5.1 NC specific signals

5.1.2 Description of signals from PLC to NC (DB10)

DB10 Disable digital NCK inputs


DBB0, 122, 124, 126, 128
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The digital input of the NCK is disabled by the PLC. It is thus set to “0” in a defined way in
transition 0 –––> 1 the control.
Signal state 0 or signal The digital input of the NCK is enabled. The signal state applied at the input
transition 1 –––> 0 can now be read directly in the NC parts program.

See Subsection for more detailed information 2.2.1


Related to .... IS “Setting by PLC of digital NCK inputs” (DB10, DBB1)
IS “Actual value of digital NCK inputs” (DB10, DBB60)
MD 10350: FASTIO_DIG_NUM_INPUTS

DB10 Setting by PLC of digital NCK inputs


DB1, 123, 125, 127, 129
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The digital NCK input is set to a defined “1” state by the PLC. This means the signal state
transition 0 –––> 1 at the hardware input and disabling of the input (IS “Disable the digital NCK inputs”) have
no effect.
Signal state 0 or signal The signal state at the NCK input is enabled for read access by the NC parts program.
transition 1 –––> 0 However, the state can be accessed only if the NCK input is not disabled by the PLC
(IS “Disable digital NCK inputs” = 0).

See Subsection for more detailed information 2.2.1


Related to .... IS “Disable digital NCK inputs” (DB10, DBB0)
IS “Actual value for digital NCK inputs” (DB10, DBB60)
MD 10350: FASTIO_DIG_NUM_INPUTS

DB10 Disable digital NCK outputs


DBB4, 130, 134, 138, 142
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The digital NCK output is disabled. “0V” is output in a defined way at the hardware output.
transition 0 –––> 1
Signal state 0 or signal The digital output of the NCK is enabled. As a result, the value set by the NC parts program
transition 1 –––> 0 or the PLC is output at the hardware output.

See Subsection for more detailed information 2.2.2


Related to .... IS “Overwrite screen form for the digital NCK outputs” (DB10, DBB5)
IS “Setting screen form for the digital NCK outputs” (DB10, DBB7)
IS “Setting by PLC for the digital NCK outputs” (DB10, DBB6)
MD 10360: FASTIO_DIG_NUM_OUTPUTS

Copyright © Siemens AG, 2005.


2/A4/5-56 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
5.1 NC specific signals

DB10 Overwrite screen form for digital NCK outputs


DBB5, 131, 135, 139, 143
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal On signal transition 0 –> 1 the previous NCK value is overwritten by the setting value (IS
transition 0 –––> 1 “Setting value from PLC for digital NCK outputs”). The previous NCK value, which, for ex-
ample, was directly set by the parts program, is lost.
The signal status defined by the setting value forms the new NCK value.
For more information please see Subsection 2.2.2
Signal state 0 or signal As the interface signal is only evaluated by the NCK on signal transition 0 –> 1 it must be
transition 1 –––> 0 reset to “0” again by the PLC user program in the next PLC cycle.
Special cases, errors, ... Note: The PLC interface for the setting value (DB10, DBB6) is used both by the over-
... write screen form (for signal transition 0 –> 1) and the setting screen form (for
signal state 1). Simultaneous activation of the two screen forms via the PLC
user program must be avoided.
Related to .... IS “Disable digital NCK outputs” (DB10, DBB4)
IS “Setting screen form of the digital NCK outputs” (DB10, DBB7)
IS “Setting value from PLC for digital NCK outputs” (DB10, DBB6)
MD 10360: FASTIO_DIG_NUM_OUTPUTS

DB10 Setting by PLC of digital NCK outputs


DBB6, 132, 136, 140, 144
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The signal status for the digital hardware output can be changed by the PLC with the set-
transition 0 –––> 1 ting value. There are two possibilities:
1. With the ’overwrite screen form’:
On signal transition 0 –> 1 the PLC overwrites the previous ’NCK value’ with the
’setting value’. This is the new ’NCK value’.
2. With the ’setting screen form’:
On signal state 1, the ’PLC value’ is activated. The value used is the ’setting value’.
On setting value “1”, signal level 1 is output at the hardware output; on “0”, 0 signal level is
output. The corresponding voltage values are given in
References: /PHD/, SINUMERIK 840D, NCU Manual
For more information please see Subsection 2.2.2
Signal state 0 or signal As the interface signal is only evaluated by the NCK on signal transition 0 –> 1 it must be
transition 1 –––> 0 reset to “0” again by the PLC user program in the next PLC cycle.
Special cases, errors, ... Note: The PLC interface for the setting value (DB10, DBB6) is used both by the over-
... write screen form (for signal transition 0 –> 1) and the setting screen form (for
signal state 1). Simultaneous activation of the two screen forms via the PLC
user program must be avoided.
Related to .... IS “Disable digital NCK outputs” (DB10, DBB4)
IS “Overwrite screen form of the digital NCK outputs” (DB10, DBB5)
IS “Setting screen form of the digital NCK outputs” (DB10, DBB7)
MD 10360: FASTIO_DIG_NUM_OUTPUTS

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/5-57
Digital and Analog NCK I/Os (A4) 06.05
5.1 NC specific signals

DB10 Setting screen form for digital NCK outputs


DBB7, 133, 137, 141, 145
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal Instead of the NCK value, the PLC value is output at the digital hardware
transition 0 –––> 1 output. The PLC value must first be deposited in IS “Setting value from PLC for digital NCK
outputs”.
The current NCK value is not lost.
For more information please see Subsection 2.2.2
Signal state 0 or signal The NCK value is output at the digital hardware output.
transition 1 –––> 0
Special cases, errors, ... Note: The PLC interface for the setting value (DB10, DBB6) is used both by the over-
... write screen form (for signal transition 0 –> 1) and the setting screen form (for
signal state 1). Simultaneous activation of the two screen forms via the PLC
user program must be avoided.
Related to .... IS “Disable digital NCK outputs” (DB10, DBB4)
IS “Overwrite screen form of the digital NCK outputs” (DB10, DBB5)
IS “Setting value from PLC for the digital NCK outputs” (DB10, DBB6)
MD 10360: FASTIO_DIG_NUM_OUTPUTS

DB10 Disable analog NCK inputs


DBB146
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The analog input of the NCK is disabled by the PLC. It is thus set to “0” in a defined way in
transition 0 –––> 1 the control.
Signal state 0 or signal The analog input of the NCK is enabled. This means that the analog value at the input can
transition 1 –––> 0 be read directly in the NC parts program if the setting screen form is set to 0 signal by the
PLC for this NCK input.

See Subsection for more detailed information 2.4.1


Related to .... IS “Setting screen form of the analog NCK inputs” (DB10, DBB147)
IS “Setting value from PLC for the analog NCK inputs” (DB10, DBB148)
IS “Actual value of the analog NCK inputs” (DB10, DBB199 ...)
MD 10300: FASTIO_ANA_NUM_INPUTS

DB10 Setting screen form of analog NCK inputs


DBB147
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The setting value from the PLC acts as the enabled analog value
transition 0 –––> 1 (IS “Setting value from PLC for analog NCK inputs”).
Signal state 0 or signal The analog value at the NCK input is enabled for read access by the NC parts program on
transition 1 –––> 0 condition that the NCK input is not disabled by the PLC (IS “Disable analog NCK inputs” =
0).

See Subsection for more detailed information 2.4.1


Related to .... IS “Disable analog NCK inputs” (DB10, DBB146)
IS “Setting value from PLC for the analog NCK inputs” (DB10, DBB148 to 163)
IS “Actual value of analog NCK inputs” (DB10, DBB199 to 209)
MD 10300: FASTIO_ANA_NUM_INPUTS

Copyright © Siemens AG, 2005.


2/A4/5-58 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
5.1 NC specific signals

DB10 Setting value from PLC for analog NCK inputs


DBB148 – 163
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal With this setting value a defined analog value can be set by the PLC. With IS “Setting
transition 0 –––> 1 screen form of analog NCK inputs”, the PLC selects whether the analog value at the hard-
ware input or the setting value from the PLC is to be used as the enabled analog value.
The setting value from the PLC becomes active as soon as IS “Setting screen form” is set
to “1”.
The setting value from the PLC is specified as a fixed point number (16 bit value including
sign) in 2’s complement (see Section 2.6).
For more information please see Subsection 2.4.1
Related to .... IS “Disable analog NCK inputs” (DB10, DBB146)
IS “Setting screen form of analog NCK inputs” (DB10, DBB147)
IS “Actual value of analog NCK inputs” (DB10, DBB199 to 209)
MD 10300: FASTIO_ANA_NUM_INPUTS

DB10 Overwrite screen form of analog NCK outputs


DBB166
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal On signal transition 0 –> 1, the previous NCK value is overwritten by the setting value (IS
transition 0 –––> 1 “Setting value from PLC for analog NCK outputs”). The previous NCK value which, for ex-
ample, was directly set by the part program, is
lost.
The analog value specified by the PLC setting value forms the new NCK value.
For more information please see Subsection 2.4.2
Signal state 0 or signal As the interface signal is only evaluated by the NCK on signal transition 0 –> 1 it must be
transition 1 –––> 0 reset to “0” again by the PLC user program in the next PLC cycle.
Special cases, errors, ... Note: The PLC interface for the setting value is used both by the overwrite screen
... form (on signal transition 0 –> 1) and the setting screen form (signal state 1).
Simultaneous activation of the two screen forms must be avoided via the PLC
user program.
Related to .... IS “Disable analog NCK outputs” (DB10, DBB168)
IS “Setting screen form of analog NCK outputs” (DB10, DBB167)
IS “Setting value from PLC for the analog NCK outputs” (DB10, DBB170–185)
MD 10310: FASTIO_ANA_NUM_OUTPUTS

DB10 Setting screen form of analog NCK outputs


DBB167
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal Instead of the NCK value, the PLC value is output at the analog hardware output. The PLC
transition 0 –––> 1 value must first be stored in IS “Setting value from PLC for the analog NCK outputs”.
The current NCK value is not lost.
For more information please see Subsection 2.4.2
Signal state 0 or signal The NCK value is output at the analog hardware output.
transition 1 –––> 0

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/5-59
Digital and Analog NCK I/Os (A4) 06.05
5.1 NC specific signals

DB10 Setting screen form of analog NCK outputs


DBB167
Data Block Signal(s) to NC (PLC  NC)
Special cases, errors, ... Note: The PLC interface for the setting value is used both by the overwrite screen
... form (on signal transition 0 –> 1) and the setting screen form (signal state 1).
Simultaneous activation of the two screen forms must be avoided via the PLC
user program.
Related to .... IS “Disable analog NCK outputs” (DB10, DBB168)
IS “Overwrite screen form of analog NCK outputs” (DB10, DBB166)
IS “Setting value from PLC of the analog NCK outputs” (DB10, DBB170–185)
MD 10310: FASTIO_ANA_NUM_OUTPUTS

DB10 Disable analog NCK outputs


DBB168
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The analog output of the NCK is disabled. “0V” is output in a defined way at the hardware
transition 0 –––> 1 output.
Signal state 0 or signal The analog output of the NCK is enabled. As a result, the value set by the NC parts pro-
transition 1 –––> 0 gram or the PLC is output at the hardware output.
For more information please see Subsection 2.4.2
Related to .... IS “Overwrite screen form of analog NCK outputs” (DB10, DBB166)
IS “Setting screen form of analog NCK outputs” (DB10, DBB167)
IS “Setting value from PLC of the analog NCK outputs” (DB10, DBB170–185)
MD 10310: FASTIO_ANA_NUM_OUTPUTS

DB10 Setting value from PLC for analog NCK outputs


DBB170 – 185
Data Block Signal(s) to NC (PLC  NC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal With this setting value, the value for the analog hardware output can be changed by the
transition 0 –––> 1 PLC. There are two possibilities:
1. With the ’overwrite screen form’:
On signal transition 0 –> 1 the PLC overwrites the previous ’NCK value’ with the
’setting value’. This is the new ’NCK value’.
2. With the ’setting screen form’:
On signal state 1, the ’PLC value’ is activated. The value used is the ’setting value’.
The setting value from the PLC is specified as a fixed point number (16 bit value including
sign) in 2’s complement.
For more information please see Subsection 2.4.2
Signal state 0 or signal As the interface signal is only evaluated by the NCK on signal transition 0 –> 1 it must be
transition 1 –––> 0 reset to “0” again by the PLC user program in the next PLC cycle.
Special cases, errors, ... Note: The PLC interface for the setting value is used both by the overwrite screen
... form (on signal transition 0 –> 1) and the setting screen form (signal state 1).
Simultaneous activation of the two screen forms must be avoided via the PLC
user program.
Related to .... IS “Disable analog NCK outputs” (DB10, DBB168)
IS “Overwrite screen form of analog NCK outputs” (DB10, DBB166)
IS “Setting screen form of analog NCK outputs” (DB10, DBB167)
MD 10310: FASTIO_ANA_NUM_OUTPUTS

Copyright © Siemens AG, 2005.


2/A4/5-60 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
5.1 NC specific signals

5.1.3 Overview of signals from NC to PLC (DB10)

DB10 Signals to NC interface NC ! PLC


DBB Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Actual value for digital NCK inputs
60 On-board inputs §)
Input 4 Input 3 Input 2 Input 1

Setpoint for digital NCK outputs

64 Digital inputs without hardware #) On-board outputs §)


Output 8 Output 7 Output 6 Output 5 Output 4 Output 3 Output 2 Output 1

Actual value for digital NCK inputs


186
Input 16 Input 15 Input 14 Input 13 Input 12 Input 11 Input 10 Input 9

Actual value for digital NCK inputs


187
Input 24 Input 23 Input 22 Input 21 Input 20 Input 19 Input 18 Input 17

Actual value for digital NCK inputs


188
Input 32 Input 31 Input 30 Input 29 Input 28 Input 27 Input 26 Input 25

Actual value for digital NCK inputs


189
Input 40 Input 39 Input 38 Input 37 Input 36 Input 35 Input 34 Input 33

Setpoint for digital NCK outputs


190
Output 16 Output 15 Output 14 Output 13 Output 12 Output 11 Output 10 Output 9

Setpoint for digital NCK outputs


191
Output 24 Output 23 Output 22 Output 21 Output 20 Output 19 Output 18 Output 17

Setpoint for digital NCK outputs


192
Output 32 Output 31 Output 30 Output 29 Output 28 Output 27 Output 26 Output 25

Setpoint for digital NCK outputs


193
Output 40 Output 39 Output 38 Output 37 Output 36 Output 35 Output 34 Output 33

Notes:
#) Bits 4 to 7 of the digital inputs and NCK outputs can be processed by the PLC although no equivalent
hardware I/Os exist. These bits can therefore also be used for data exchange between the NCK and PLC.
§) With the 840D, the NCK digital inputs and outputs 1 to 4 are provided as onboard hardware inputs and outputs. No
hardware I/Os are available for bits 0 to 3 on the FM-NC. These can be processed by the PLC according to #).

DB10 Signals to NC interface NC ! PLC


DBB Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
194, 195 Actual value for analog input 1 of NCK

196, 197 Actual value for analog input 2 of NCK

198, 199 Actual value for analog input 3 of NCK

200, 201 Actual value for analog input 4 of NCK

202, 203 Actual value for analog input 5 of NCK

204, 205 Actual value for analog input 6 of NCK

206, 207 Actual value for analog input 7 of NCK

208, 209 Actual value for analog input 8 of NCK

210, 211 Setpoint for analog output 1 of NCK

212, 213 Setpoint for analog output 2 of NCK

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/5-61
Digital and Analog NCK I/Os (A4) 06.05
5.1 NC specific signals

214, 215 Setpoint for analog output 3 of NCK

216, 217 Setpoint for analog output 4 of NCK

218, 219 Setpoint for analog output 5 of NCK

220, 221 Setpoint for analog output 6 of NCK

222, 223 Setpoint for analog output 7 of NCK

224, 225 Setpoint for analog output 8 of NCK

5.1.4 Description of signals from NC to PLC (DB10)

DB10 Actual value for digital NCK inputs


DBB60,
186–189
Data Block Signal(s) to PLC (NC  PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal Signal level “1” is active at the digital hardware input of the NCK.
transition 0 –––> 1
Signal state 0 or signal Signal level “0” is active at the digital hardware input of the NCK.
transition 1 –––> 0
For more information please see Subsection 2.2.1
Special cases, errors, ... The influence of IS “Disable digital NCK inputs” is ignored for the actual value.
...
Related to .... IS “Disable digital NCK inputs” (DB10, DBB0)
MD 10350: FASTIO_DIG_NUM_INPUTS

DB10 Setpoint for digital NCK outputs


DBB64,
190 – 193
Data Block Signal(s) to PLC (NC  PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The NCK value for the digital output currently set (setpoint) is “1”.
transition 0 –––> 1
Signal state 0 or signal The NCK value for the digital output currently set (setpoint) is “0”.
transition 1 –––> 0
See Subsection for more detailed information 2.2.2
Signal irrelevant for ... ... This ’setpoint’ is only output to the hardware output under the following conditions:
1. Output is not disabled (IS “Disable digital NCK outputs”)
2. PLC has switched to the NCK value (IS “Setting screen form for digital NCK in-
puts”)
As soon as these conditions are fulfilled, the setpoint of the digital output corresponds to
the ‘actual value’.
Related to .... IS “Disable digital NCK outputs” (DB10, DBB4)
IS “Overwrite screen form of the digital NCK outputs” (DB10, DBB5)
IS “Setting value from PLC for the digital NCK outputs” (DB10, DBB6)
IS “Setting screen form of digital NCK outputs” (DB10, DBB7)
MD 10310: FASTIO_DIG_NUM_OUTPUTS

Copyright © Siemens AG, 2005.


2/A4/5-62 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
5.1 NC specific signals

DB10 Actual value for analog NCK inputs


DBB194 – 209
Data Block Signal(s) to PLC (NC  PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The analog value applied to the analog NCK input is signalled to the PLC.
transition 0 –––> 1
The actual value is set as a fixed point number (16 bit value including sign) in 2’s comple-
ment by the NCK (see Section 2.6).
For more information please see Subsection 2.4.1
Signal state 0 or signal The effect of the PLC on the analog value (e.g. with IS “Disable analog NCK inputs”) is
transition 1 –––> 0 ignored.
Related to .... IS “Disable analog NCK inputs” (DB10, DBB146)
IS “Setting screen form of analog NCK inputs” (DB10, DBB147)
IS “Setting value from PLC for the analog NCK inputs” (DB10, DBB148 to 163)
MD 10300: FASTIO_ANA_NUM_INPUTS

DB10 Setpoint for analog NCK outputs


DBB210 – 225
Data Block Signal(s) to PLC (NC  PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The current set NCK value for the analog output (setpoint) is signalled to the PLC.
transition 0 –––> 1
The setpoint is set as a fixed point number (16 bit value including sign) in 2’s complement
by the NCK (see Section 2.6).
For more information please see Subsection 2.4.2
Signal state 0 or signal This “setpoint” is only output at the hardware output when the following conditions
transition 1 –––> 0 are fulfilled:
1. Output is not disabled (IS “Disable analog NCK outputs”)
2. The PLC has switched to the NCK value (IS “Setting screen form of analog NCK
outputs”)
Related to .... IS “Disable analog NCK outputs” (DB10, DBB168)
IS “Overwrite screen form for analog NCK outputs” (DB10, DBB166)
IS “Setting value by PLC of the analog NCK outputs” (DB10, DBB170–185)
IS “Setting screen form of analog NCK outputs” (DB10, DBB167)
MD 10310: FASTIO_ANA_NUM_OUTPUTS

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/5-63
Digital and Analog NCK I/Os (A4) 06.05
5.1 NC specific signals

Notes

Copyright © Siemens AG, 2005.


2/A4/5-64 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
7.1 Interface signals

Example 6
None
J

Data Fields, Lists 7


7.1 Interface signals

DB num- Bit, byte Name Refe-


ber rence
General Signals from NC to PLC
10 0, 122, 124, 126, 128 Disable digital NCK inputs
10 1, 123, 125, 127, 129 Setting digital NCK inputs on the PLC
10 4, 130, 134, 138, 142 Disable digital NCK outputs
10 5, 131, 135, 139, 143 Overwrite screen form for digital NCK outputs
10 6, 132, 136, 140, 144 Setting value from PLC for the digital NCK outputs
10 7, 133, 137, 141, 145 Setting screen form for digital NCK outputs
10 146 Disable analog NCK inputs
10 147 Setting screen form for analog NCK inputs
10 148–163 Setting value from PLC for the analog NCK inputs
10 166 Overwrite screen form for analog NCK outputs
10 167 Setting screen form for analog NCK outputs
10 168 Disable analog NCK outputs
10 170–185 Setting value from PLC for the analog NCK outputs
Signals from NC to PLC
10 60, 186–189 Actual value for digital NCK inputs
10 64, 190–193 Setpoint for digital NCK outputs
10 194–209 Actual value for analog NCK inputs
10 210–225 Setpoint for analog NCK outputs

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/7-65
Digital and Analog NCK I/Os (A4) 06.05
7.2 Machine Data

7.2 Machine Data

Number Names Name Refe-


rence
General ($MN_ ... )
10300 FASTIO_ANA_NUM_INPUTS Number of active analog NCK inputs
10310 FASTIO_ANA_NUM_OUTPUTS Number of active analog NCK outputs
10320 FASTIO_ANA_INPUT_WEIGHT Weighting factor for analog NCK inputs
10330 FASTIO_ANA_OUTPUT_WEIGHT Weighting factor for analog NCK outputs
10350 FASTIO_DIG_NUM_INPUTS Number of active digital NCK input bytes
10360 FASTIO_DIG_NUM_OUTPUTS Number of active digital NCK output bytes
10362 HW_ASSIGN_ANA_FASTIN Hardware assignment of external analog NCK in-
puts
10364 HW_ASSIGN_ANA_FASTOUT Hardware assignment of external analog NCK out-
puts
10366 HW_ASSIGN_DIG_FASTIN Hardware assignment of external digital NCK in-
puts
10368 HW_ASSIGN_DIG_FASTOUT Hardware assignment of external digital NCK out-
puts
10380 HW_UPDATE_RATE_FASTIO Updating rate of clock-synchronous external NCK
I/Os
10382 HW_LEAD_TIME_FASTIO Lead time for clock-synchronous external NCK
I/Os
10384 HW_CLOCKED_MODULE_MASK Processing of external NCK I/Os in synchronism
with the clock
10394 PLCIO_NUM_BYTES_IN Number of directly readable input bytes of the PLC
I/Os
10395 PLCIO_LOGIC_ADDRESS_IN Start address of the directly readable input bytes
of the PLC I/Os
10396 PLCIO_NUM_BYTES_OUT Number of directly writeable output bytes of the
PLC I/Os
10397 PLCIO_LOGIC_ADDRESS_OUT Start address of the directly writeable
output bytes of the PLC I/Os
10398 PLCIO_IN_UPDATE_TIME Update time for PLC I/O input cycle
10399 PLCIO_TYPE_REPRESENTATION Little/big endian representation for PLC I/O
10530 COMPAR_ASSIGN_ANA_INPUT_1 Hardware assignment of NCK analog inputs for
comparator byte 1
10531 COMPAR_ASSIGN_ANA_INPUT_2 Hardware assignment of NCK analog inputs for
comparator byte 2
10540 COMPAR_TYPE_1 Parameterization for comparator byte 1
10541 COMPAR_TYPE_2 Parameterization for comparator byte 2
Channelspecific ($MC_ ... )
21220 MULTFEED_ASSIGN_FASTIN Assignment of input bytes of NCK I/Os for “Multi- V1
ple feedrates in one block”

Copyright © Siemens AG, 2005.


2/A4/7-66 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Digital and Analog NCK I/Os (A4)
7.4 Interrupts

7.3 Setting data

Number Names Name Refe-


rence
General ($SN_ ...)
41600 COMPAR_THRESHOLD_1 Threshold values for comparator byte 1
41601 COMPAR_THRESHOLD_2 Threshold values for comparator byte 2

7.4 Interrupts
For detailed descriptions of the alarms, please refer to
References: /DA/, Diagnostics Guide
and the online help of MMC 101/102/103 systems.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/A4/7-67
Digital and Analog NCK I/Os (A4) 06.05
7.4 Interrupts

Notes

Copyright © Siemens AG, 2005.


2/A4/7-68 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Several Operator Panel Fronts and NCUs


(B3)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-5


1.1 Topology of distributed system configurations . . . . . . . . . . . . . . . . . . 2/B3/1-5
1.2 Several operator panels and NCUs with control unit management
(option) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-10
1.2.1 System features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-10
1.2.2 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-11
1.2.3 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-13
1.2.4 Configurability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-15
1.3 Several operator panel fronts and NCUs, standard functionality . . 2/B3/1-16
1.3.1 System features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-16
1.3.2 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-16
1.3.3 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-17
1.3.4 Configurability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-20
1.3.5 MPI/OPI network rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-25
1.4 NCU link . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-26
1.4.1 Types of distributed machines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-26
1.4.2 Link axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-28
1.4.3 Flexible configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-29
1.4.4 User communication across the NCUs . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/1-30
1.4.5 Lead link axes in software Version 6 and higher . . . . . . . . . . . . . . . . 2/B3/1-31
1.4.6 NCU link with different interpolation cycles . . . . . . . . . . . . . . . . . . . . 2/B3/1-32
2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-35
2.1 Several operator panel fronts and NCUs with control unit
management option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-35
2.1.1 Hardware structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-36
2.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-37
2.1.3 Configuration file NETNAMES.INI . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-38
2.1.4 Structure of the configuration file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-38
2.1.5 Creating and using the configuration file . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-42
2.1.6 Power-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-43
2.1.7 MMC switchover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-45
2.1.8 Forced break . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-46
2.1.9 Connection and switchover conditions . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-47
2.1.10 Implementation of control unit switchover . . . . . . . . . . . . . . . . . . . . . 2/B3/2-48
2.1.11 User interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-49
2.1.12 Operating mode switchover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-50
2.1.13 MCP switchover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-52

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/i
06.05

2.1.14 PLC program “Control Unit Switchover” . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-52


2.2 Several operator panel fronts and NCUs, standard functionality . . 2/B3/2-58
2.2.1 Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-58
2.2.2 Switchover of connection to another NCU (SW 3.2 to 3.x) . . . . . . . 2/B3/2-63
2.2.3 Switchover of connection to another NCU (SW 4 and higher) . . . . 2/B3/2-64
2.2.4 Creating and using the configuration file . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-65
2.2.5 Power-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-65
2.2.6 NCU replacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-66
2.3 Restrictions in relation to equipment . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-68
2.4 NCU link . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-69
2.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-69
2.4.2 Technological description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-70
2.5 Link axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-72
2.5.1 Configuration of link axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-74
2.5.2 Axis data and signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-78
2.5.3 Output of predefined auxiliary functions for NCU link . . . . . . . . . . . . 2/B3/2-80
2.5.4 Supplementary conditions for link axes . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-81
2.5.5 Programming with channel and machine axis identifiers . . . . . . . . . 2/B3/2-82
2.5.6 Flexible configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-82
2.6 Axis container . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-84
2.6.1 System variables for axis containers . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-89
2.6.2 Machining with axis container (schematic) . . . . . . . . . . . . . . . . . . . . . 2/B3/2-91
2.6.3 Axis container behavior after power ON . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-92
2.6.4 Axis container response to mode switchover . . . . . . . . . . . . . . . . . . 2/B3/2-92
2.6.5 Axis container behavior in relation to ASUBs . . . . . . . . . . . . . . . . . . 2/B3/2-92
2.6.6 Axis container response to RESET . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-92
2.6.7 Axis container response to block searches . . . . . . . . . . . . . . . . . . . . 2/B3/2-92
2.6.8 Supplementary conditions for axis container rotations . . . . . . . . . . . 2/B3/2-92
2.7 Cross-NCU user communication, link variables . . . . . . . . . . . . . . . . 2/B3/2-95
2.7.1 Link variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-95
2.7.2 System variables of the link memory . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-98
2.7.3 Link axis drive information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-99
2.8 Configuration of a link grouping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-101
2.9 Communication in link grouping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-104
2.10 Lead link axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-107
2.10.1 Programming a lead link axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-111
2.11 NCU link with different interpolation cycles . . . . . . . . . . . . . . . . . . . . 2/B3/2-112
2.11.1 Diagram of general solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-114
2.11.2 Different position control cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-117
2.11.3 Supplementary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-119
2.11.4 Activating NCU links with different interpolation cycles . . . . . . . . . . 2/B3/2-119
2.11.5 Different IPO cycles, behavior at power ON, RESET, etc. . . . . . . . 2/B3/2-119
2.11.6 System variable with different interpolation cycles . . . . . . . . . . . . . . 2/B3/2-120
2.12 Link grouping system of units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/2-120

Copyright © Siemens AG, 2005.


2/B3/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/3-123


3.1 Several operator panels and NCUs with control unit management
option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/3-123
3.2 Several operator panel fronts and NCUs, standard functionality . . 2/B3/3-124
3.3 Link axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/3-125
3.4 Axis container . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/3-125
3.5 Lead link axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/3-125
3.6 NCU link with different interpolation cycles . . . . . . . . . . . . . . . . . . . . 2/B3/3-125
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/4-127
4.1 Machine data for several operator panel fronts . . . . . . . . . . . . . . . . . 2/B3/4-127
4.2 Machine data for link communication . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/4-128
4.2.1 General machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/4-128
4.2.2 Channelspecific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/4-133
4.2.3 Axis-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/4-134
4.3 Setting data for link communication . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/4-135
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/5-137
5.1 Defined logical functions/defines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/5-137
5.2 Interfaces in DB 19 for M:N . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/5-141
5.3 Signals for NCU link and axis container . . . . . . . . . . . . . . . . . . . . . . . 2/B3/5-150
6 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-151
6.1 Configuration file NETNAMES.INI with control unit management
option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-151
6.2 User-specific re-configuring of PLC program control unit
switchover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-154
6.2.1 Description of operational sequences (overview) . . . . . . . . . . . . . . . 2/B3/6-154
6.2.2 Description of operational sequences (details) . . . . . . . . . . . . . . . . . 2/B3/6-155
6.2.3 Defined logical functions/defines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-164
6.2.4 Graphic representation of function sequences . . . . . . . . . . . . . . . . . 2/B3/6-165
6.3 Configuration file NETNAMES.INI, standard functionality . . . . . . . . 2/B3/6-173
6.3.1 Two operator panel fronts and one NCU . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-173
6.3.2 One operator panel front and three NCUs . . . . . . . . . . . . . . . . . . . . . 2/B3/6-174
6.4 M:N quick installation guide with examples . . . . . . . . . . . . . . . . . . . . 2/B3/6-175
6.4.1 Example 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-175
6.4.2 Example 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-178
6.4.3 Example 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-183
6.4.4 Description of FB9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-187
6.4.5 FB9 call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-190
6.4.6 Example of override switchover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-191
6.4.7 Switchover between MCP and HT6 . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-192
6.4.8 General notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-193
6.5 Link axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-195
6.6 Axis container coordination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-196
6.6.1 Axis container rotation without a parts program wait . . . . . . . . . . . . 2/B3/6-196

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/iii
06.05

6.6.2 Axis container rotation with an implicit parts program wait . . . . . . . 2/B3/6-196
6.6.3 Axis container rotation by one channel only (e.g. during power-up) 2/B3/6-196
6.7 Evaluating axis container system variables . . . . . . . . . . . . . . . . . . . . 2/B3/6-197
6.7.1 Conditional branch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-197
6.7.2 Static synchronized action with $AN_AXCTSWA . . . . . . . . . . . . . . . 2/B3/6-197
6.7.3 Wait for certain completion of axis container rotation . . . . . . . . . . . . 2/B3/6-197
6.8 Configuration of a multi-spindle turning machine . . . . . . . . . . . . . . . 2/B3/6-199
6.9 Lead link axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-207
6.9.1 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-207
6.9.2 Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-209
6.10 NCU link with different interpolation cycles . . . . . . . . . . . . . . . . . . . . 2/B3/6-210
6.10.1 Example of eccentric turning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/6-210
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/7-213
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/7-213
7.2 Machine/setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/7-215
7.3 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B3/7-216
J

Copyright © Siemens AG, 2005.


2/B3/iv SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.1 Topology of distributed system configurations

Brief Description 1
1.1 Topology of distributed system configurations

Features Rotary indexing machines, multi-spindle turning machines and complexNC


production centers all have one or some of the following features:

S More than one NCU owing to large number of axes and channels
S Large dimensions and spatial separation necessitate several operating units
(MMC operator panel fronts and MCP machine control panels or HT6
handheld terminal)

S Modular machine concept, e.g. through distributed control cubicles

Software version The SW versions indicated in this document refer to the SINUMERIK 840D
control.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-5
Several Operator Panel Fronts and NCUs (B3) 06.05
1.1 Topology of distributed system configurations

Host Host computer


computer (see FBR/ SINCOM Computer Link)
MMC–MMC/host computer communication
TCP/IP

M: N
MMC 1 MMC m
...

MCP 1 ... MCP m


OPI
(MPI)
Required data controlled
– PI services
– Domain services

NCU link
A1 A1 A1
A2 A2
COM
A2
COM

COM
NCU 1 ... NCU 2 ... NCU n
...
Master Slave
... Slave
Ai Ai Ai
611 D

611 D

611 D
S1 Link S1 S1
S2 submodule S2 Link submodule S2
... ... ...
Sj Terminating Sj Sj Termi-
PLC resistor PLC PLC nating
resistor
NCU link: Communication in the
interpolation cycle

*) PLC–PLC
DP-DP coupler communication

Local I/Os Local I/Os Local I/Os AS400/300

Fig. 1-1 Topology of distributed system configurations

*) The term PLC–PLC communication refers either to


– PLC-PLC cross-communication master, slave C.) or
– PLC local I/Os.
The two areas highlighted in the topology display above identify two
communications functions to be examined separately in terms of configuration
and utilization.

M:N Assignment of several MMC, MCP or HT6 control units (M) to several NCUs
(m MMC : n NCU) (N).

S Bus addresses, bus type


S Properties of the MMC/HT6
– Main control panel/secondary control panel

S Dynamic switchover from MMCs/MCPs or HT6s to other NCUs

Copyright © Siemens AG, 2005.


2/B3/1-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
1.1 Topology of distributed system configurations

For a detailed description of these operations, please refer to Chapter 2.


Actions are required for the use of M:N during:

S Hardware planning (see /PHD/ )


S Parameterization in files (see Chapter 2)
S PLC programming (see /FB1/, P3)
S Operation (see /BAD/, /BEM/ ).
For applications/configurations matching the examples described in Chapter 6,
the notation examples can be copied directly or modified slightly. The aspects
involved in file parameterization, PLC programming and operation are specified
in the quick installation guide.
For different applications, please refer to the full description in Chapter 2 and
the source documents specified above.

NCU link The functions for the NCU link are based on additional communication between
NCUs in the interpolation cycle. The NCU link allows:

S Subordination of a physical axis to several different NCUs


S Interpolation across the NCUs
S An increase in the number of usable axes for an NCU grouping
S An increase in the number of channels for an NCU grouping
S Provision of axis data and signals on the NCU to which a non-local axis is
temporarily assigned

S User communication via the NCU grouping by means of link variables


For more information about this topic, please refer to Chapters 1 and 2.

Lead link axes In software version 6 and higher, following axes can be traversed by an NCU if
as of SW 6 the associated leading axis is being traversed by another NCU. The NCU link
communication handles the necessary exchange of axis data. See 1.4.

NCU link with For special applications such as eccentric turning, software version 6 and
different IPO higher provides support for an NCU link between NCUs with different
cycles SW 6 interpolation cycles. For details please refer to 1.4.6 and 2.11.

Host computer Communication between host computers and control units is described in
References: /FBR/, SINCOM Computer Link

PLC-PLC DP Master, DP Slave, DP-DP coupler, cross-communication via PBK


communication

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-7
Several Operator Panel Fronts and NCUs (B3) 06.05
1.1 Topology of distributed system configurations

Bus capacities The buses illustrated in the above topology diagram are specially designed for
their transmission tasks. The resultant communication specifications are shown
in the next figure:
– Number of bus nodes
– Baud rate
– Synchronization

HT6/HPU/
MCP/ HHU/MMC
PP

OPI max. 32 nodes


1.5 Mbaud

HT6/HPU/
DCM

COM
DCS

NCU HHU/MMC/
Max. 31 nodes
OP30
64 Mbaud
(position control
611D cycle) Link PLC MCP/
PP

MPI max. 32 nodes


187.5 kbaud
DP max. 64 nodes
max. 12 Mbaud
P bus

NCU link max. 16 nodes


max. 12 Mbaud
(interpolation cycle)

Comments:
In brackets: (synchronization cycle)
PP Pushbutton panel

Fig. 1-2 Bus properties

7-layer model Communication takes place on the following protocol layers:


structure

Copyright © Siemens AG, 2005.


2/B3/1-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.1 Topology of distributed system configurations

MPI

OPI
6

NCU link

DP
5
4
3
2
1

Fig. 1-3 Protocol levels in 7-layer model

The NCU link and DP can operate faster because they are assigned directly to
layer 2.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-9
Several Operator Panel Fronts and NCUs (B3) 06.05
1.2 Several operator panels and NCUs with control unit management (option)

1.2 Several operator panels and NCUs with control unit


management (option)

Introduction The plant configurations must be highly flexible to meet the requirements of
complex machines such as rotary indexing machines, multi-spindle machines
and complex NC production centers.
Often they need

S several (M) control units (MMC and MCP or HT6) owing to large dimensions
of machine and physical separation of operator stations,

S several (N) NCUs owing to large number of axes and channels.

Restriction The following subsection describes the additional functionality of software


version 5. These functions are available only in connection with the Control
Unit Management Option.
The standard functionality applies to all SW versions without the option.
However different performance grades depending on SW version must also be
taken into account; these are described in Chapter 3.
The standard functionality is described in the following subsection.
While the standard functionality supports only certain restricted combinations of
MMCs and NCUs, the control unit management option provides a flexible,
universal solution for satisfying the requirements above.

1.2.1 System features

M:N concept The M:N concept is represented diagrammatically in Fig. 1-1 “Topology”:
Several control units (MMCs/HT6s and/or MCPs) are connected to several
NCUs via a bus system. As the number of components is variable, they are
given the indexes m and n; hence the name M:N concept.
This concept allows the user to connect any control units to any NCUs in the
system (within the limits imposed by the hardware) via the bus and to switch
them over as and when required.

NCU link NCU link is an additional direct connection between the NCUs, enabling fast
communication (see Sections 1.4 and 2.4).

Copyright © Siemens AG, 2005.


2/B3/1-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.2 Several operator panels and NCUs with control unit management (option)

New features The features of SW 5 including the control unit management option are as
follows:

S Independent connection of MMC and MCP


S Two independent MMC-PLC interfaces on each NCU for two autonomous
MMC connections
– MMC and MCP can be switched over together, or the MMC on its own.
The HT6 basically constitutes a control unit comprising an MMC and
MCP which must always be switched over together.
– MMC states:
– online/active: Operation and monitoring
– online/passive: A window is displayed with header and alarm line and
a message indicating “passive” state
– offline

S Different bus systems (MPI/OPI) between MMC/MCP/HT6 and NCUs


(changes only take effect after power-up)

S MMC function as server / as Main secondary operator panel


S A combination of both fixed MMCs and switchable MMCs can be connected.
S Suppression mechanism (priority-controlled) if more than two MMCs are
competing for an NCU connection

S Up to 32 bus nodes (MMCs, MCPs, HT6s and/or NCUs, see Fig. 1-2)
S PLC controls the switchover process (control unit switchover to toolbox,
directory PSP_PROG\m_zu_n.zip)

S Configuration file NETNAMES.INI with new parameters.

Supplementary At any one time


conditions
S a max. of two MMCs/HT6s can be online on one NCU,
S only one of them can be in an active state.
S The same value must be entered for the MMC and MCP addresses on the
HT6. Since only values of 15 or less can be specified as MCP addresses,
the MMC address is limited correspondingly.

1.2.2 Hardware

Operator panel The OP030, OP031 or OP032 operator panel fronts feature a slimline screen,
softkeys, a keyboard, interfaces and a power supply. An MMC is also mounted
on the OP031 and OP032.

Machine control The machine control panel (MCP) incorporates a keyboard, rotary button pad
panel and interfaces.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-11
Several Operator Panel Fronts and NCUs (B3) 06.05
1.2 Several operator panels and NCUs with control unit management (option)

HT6 The Handheld Terminal HT6 comprises a slimline screen, softkeys, keyboard,
override rotary switch, emergency stop and enabling buttons as well as
interfaces and power supply. The functions of the MMC and MCP are both
integrated in the HT6.

Difference between OP030 and OP031/32 differ in their assignment options to an NCU:
OP030 and S OP030
OP031/32/HT6 can be permanently assigned to one NCU only.
It can be used as the secondoperator panel front for this NCU.
The addresses of the connected partners can be set for this purpose.
S The OP031/32/HT6
can have an active assignment to another NCU via HT6/MMC operation.

References The operator interfaces are described in the Operator’s Guides of the operator
panel fronts used.
/BA/, Operator’s Guide
/FBO/, OP030 Operator’s Guide
/BH/, Operator Components Manual

Buses The control units (MMCs and/or MCPs, HT6s) and NCUs are connected by
means of the

S MPI bus (Multi Point Interface, 187.5 kbaud) or


S OPI bus (operator panel front interface, 1.5 Mbaud).
It is possible to combine different bus systems within one installation.

Address Bus nodes each have a unique address on the bus. The NCU uses
assignments
S a common address for the NC and PLC on the OPI,
S two separate addresses (for NC and PLC) on the MPI interface. The
following applies:
– SW 3.1 and later: PLC address can be reconfigured with STEP7.
“2” is the default address for the PLC on the MPI.
– SW 3.2 and later: As regards the addresses on the MPI interface, the
following applies when the PLC-CPU 315 is used:
NC address = PLC address + 1
– SW 3.5 and later: As regards the addresses on the MPI interface, the
following applies when the PLC-CPU 314 is used:
NC address = PLC address + 1

Copyright © Siemens AG, 2005.


2/B3/1-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
11.02
06.05 Several Operator Panel Fronts and NCUs (B3)
1.2 Several operator panels and NCUs with control unit management (option)

Defaults for OPI Addresses 0 (MMC) and 14 (HT6) are reserved at the works and 13 (NCK) is
the default and these addresses should not be assigned to bus nodes in M:N
systems.

S Address 0 is reserved for PG diagnostics,

Note
The M:N switchover can malfunction when a PG is online. Remedy:
Either set the PG to Offline before switching the unit or connect it to the MPI.

S Address 13 is the default for servicing/commissioning.


This address can be reconfigured viaan MMC input. Reserved the address
for NCU replacement if possible.

Defaults for MPI


S Address 2 for PLC

S Address 3 for NCU

Number of active A maximum of two MMCs/HT6s (incl. COROS OPs) can be continually
MMCs/HT6s on 1 connected actively to one NCU. MMCs/HT6s on the OPI or MPI count in the
NCU same way.

Number of As standard, two MCPs and one HHU can be connected to the OPI or MPI
MCPs/HHUs on 1 interface. The handheld terminal ((HT6) and the Handheld programming unit
NCU (HPU) count as one MMC and one MCP.

Note
The MPI/OPI network rules outlined in the “SINUMERIK 840D Installation
Guide” Section 3.1 must be applied.
In particular, an M:N installation must be connected up by means of cables
fitted with terminating resistors (identifiable by switch with which these are
switched in and out).

1.2.3 Functions

Defining The flexible M:N concept makes it possible to extensively modify the properties
properties of the control units.
The assignment of the MMC properties can either be
S static or
S dynamic.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-13
Several Operator Panel Fronts and NCUs (B3) 06.05
1.2 Several operator panels and NCUs with control unit management (option)

Static properties Static system properties are configured in file NETNAMES.INI (see paragraph
below). They become effective at power-up and cannot be changed during the
runtime:
S Assignment of bus nodes – bus system
S Combination of different bus systems (OPI, MPI)
S Assignment of MMCs – NCUs (which MMCs/HT6s can monitor which
NCUs)

S MCP switchover
S Suppression priorities at changeover (see below)
S Utilization properties (see Chapter 2 “Properties of MMCs”):
– Operator panel is the alarm/data management server
– The control panel is mainor secondary control panel

Dynamic The dynamic properties can be changed during runtime.


properties
The states:

Online Offline
Normal MMC operating mode with communication be- No communication
tween the MMC/HT6 and NCU: between the MMC/
Operation and/or monitoring are possible. HT6 and NCU:
Disable active Passive
Operation and moni-
moni
toring not possible.
possible
The operator can operate Operator cannot oper-
and monitor. ate. He sees a window
with header and alarm
line and a message indi-
cating “passive” state.

Control unit switchover is enabled. Control unit switchover is


disabled.

Operating the M:N The M:N function is operated via the “Channel menu” option.
function
The channel menu is selected via the “Switch over channel” key.
The horizontal softkeys are used to select a channel group (HMI Embedded /
HT6: max. 8, HMI Advanced: max. 24 channel groups). Up to eight connections
to channels in different NCUs can be set up in one channel group.
The “Channel menu” screen displays all current connections and the associated
symbol names.

Note
In the case of errors during power-up (for example, link setup fails), see
Chapter 2 (Power-up).

Copyright © Siemens AG, 2005.


2/B3/1-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.2 Several operator panels and NCUs with control unit management (option)

Suppression If two MMCs/HT6s are online on one NCU, and a third MMC/HT6 would like to
strategy go online, then the latter can “suppress” one of the other two. Communication is
then interrupted between this MMC and the NCU.
The algorithm responsible for this suppression is driven by priorities configured
in the file NETNAMES.INI (see Subsection 2.1.8 “Suppression”).

1.2.4 Configurability

When the M:N system powers up, it must be aware of the existing control units,
NCUs and communications links and their properties.

NETNAMES.INI All this information is contained in the configuration file NETNAMES.INI which is
configured before power-up.
This present description is mainly intended to provide the necessary knowledge
for correctly setting up this configuration file for the M:N concept.
This means that
– the hardware configuration is displayed,
– the properties of the components are defined, and
– the desired switchovers/assignments are possible.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-15
Several Operator Panel Fronts and NCUs (B3) 06.05
1.3 Several operator panel fronts and NCUs, standard functionality

1.3 Several operator panel fronts and NCUs, standard


functionality
The following applies to all M:N applications in which the control unit
management option is not implemented. The level of performance is also
dependent on SW version.

Note
Section 1.3 does not apply to the HT6, since only one HT6 can be operated on
an NCU without control unit management.

1.3.1 System features

SW 3.1 and higher Two MCPs and one HHU can be connected to the MPI or OPI.
The handheld programming unit (HPU) counts as an MMC and an MCP.
One of the panel fronts must be an OP030.

SW 3.2 and higher The configurations “One operator panel front and up to three NCUs” are
available.
The necessary configuration in the NC for the connection of MCPs/HHUs is
made with the basic PLC routine (see Description of Functions, P3: Basic PLC
program).
Address must be specified in the case of data exchange between PLCs via
Profibus DP (PLC-CPU 315 only) or for global data (double addressing).
The following applies to PLC-CPU 315: NC address = PLC address + 1.

SW 3.5 and higher The configurations “One operator panel front and up to four NCUs” and one
MMC locally in each case are available.

1.3.2 Hardware

Buses The connection between MMC and NCU can be made via the following
connections:

S MPI (187.5 kBaud)


S OPI operator panel front interface, 1.5 Mbaud).

SW 3.2 and higher Possibility of installing “Several operator panel fronts and NCUs” on the OPI
(X101 on NCU) and the MPI (X122 on NCU).

Copyright © Siemens AG, 2005.


2/B3/1-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.3 Several operator panel fronts and NCUs, standard functionality

When setting up the link via MPI, the PLC-CPU315 must be used if there are
several NCUs, as it is possible to set the NC address with this PLC.

SW 4.1 and higher Number of bus nodes: max. 32

1.3.3 Functions

SW 3.1 and higher “Several operator panel fronts and several NCUs” available in the basic version.

SW 3.2 and higher Configuration in the NC for the connection of MCPs/HHUs is made with the
basic PLC routine
(see Description of Functions, P3: Basic PLC program).

S Switchover of link to another NCU with the soft key labeled “conn...”:
A menu is overlaid where you can select the connections conn_1, ... conn_n
(declared in NETNAMES.INI) via soft keys.
The name (name=...) allocated to the connection in NETNAMES.INI is
displayed on the soft keys.
A connection to the new NCU is established by pressing the soft key.

S Changeover behavior on OP030:


It is not possible to change to another bus node online. The connection
contained in NETNAMES.INI is permanently configured.

S HMI Embedded changeover behavior:


The “Conn...” soft key is only displayed if more than one link is configured in
NETNAMES.INI.
When changing to the new NCU, the existing connection to another NCU is
interrupted.
MMC applications, at the instant of link changeover, must no longer need the
link to the previous NCU (e.g. for active data backup via RS-232 interface).
Otherwise the control will issue a message if the connection is required.
With regard to the NCU to which the changeover takes place, the MMC
behaves as if the system had been restarted. It is in the operating area selected
as theStart operating area.
The “Connections” soft key is displayed only if the m to n function is activated
on the control.
“m to n” is activated in menu “Start-up/MMC/Operator panel front”. Connections
remain established with any changeover and the applications which have used
these connections remain active. After the changeover, the MMC is in the same
operating area with respect to the new NCU as it was previously with respect to
another NCU.

S Possible defects
The NCU with which the connection is to be established can refuse the
connection setup. Reason: NCU faulty or the NCU cannot operate with an
additional MMC at this point.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-17
Several Operator Panel Fronts and NCUs (B3) 06.05
1.3 Several operator panel fronts and NCUs, standard functionality

The number of MMCs that an NCU can set up a connection with at any one
time is configured in MD 10134 (MM_NUM_MMC_UNITS = number of MMC
communications partners possible at any one time). The OP030 uses one unit.
An MMC, as supplied, uses two units. Other units (up to 12) are required for
larger OEM packages.

S Alarms, messages

HMI Embedded, OP030 HMI Advanced


It is only possible to output the alarms The alarms and messages of all con-
of the NCU with which a connection is nected NCUs can be processed si-
currently established. multaneously.

S Alarm text management

HMI Embedded, OP030 HMI Advanced


Only one version of the alarm texts NCU-specific user alarm texts cannot
can be stored on the operator compo- be created.
nent.
The standard alarm texts are stored
once in the same formulation for all
NCUs. The possible alarms for all
connected NCUs must be stored in
the one possible area for user alarms.

S MMC connection control:


The address of a connected NCU (on OPI bus only) can be altered in the
“Connections/Service” menu.
The new NCU address is stored on the NCU.
The soft key labeled “Service” is only displayed if the password for “Protection
level Service” has been entered.
When the function for changing the address is started up, a direct connection
between the MMC and the relevant NCU must always be established to ensure
that the address is not programmed more than once on the bus.

Note
When the NCU is replaced (during servicing) or the back-up battery fails, the
stored address is lost.

A general reset of the NCU does not delete the NCU address. The address can
only be changed via the MMC.
The channel name should be assigned uniquely in MD 20000: CHAN_NAME
(channel name).

M:N function The M:N function is operated via the “channel menu option”.
Option:
“Channel menu”

Copyright © Siemens AG, 2005.


2/B3/1-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.3 Several operator panel fronts and NCUs, standard functionality

Precondition: Configuration via the NETNAMES.INI file


References
/IAD/ 840D Installation & Startup Guide, Chapter MMC
The channel menu is selected via the “Switch over channel” key.
The horizontal softkeys are used to select a channel group (HMI Embedded:
max. 8, HMI Advanced: max. 24 channel groups); up to eight connections to
channels in different NCUs can be set up in one channel group.
The “Channel menu” screen displays all current connections and the associated
symbol names.

Note
In the case of errors during power-up (for example, link setup fails), see
Chapter 2 (Power-up).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-19
Several Operator Panel Fronts and NCUs (B3) 06.05
1.3 Several operator panel fronts and NCUs, standard functionality

1.3.4 Configurability

From SW 3.1 The option of creating a link between two operator panel fronts and one NCU
2 MMCs : 1 NCU has been implemented in SW 3.1, as the following diagram illustrates. In this
case, there is a fixed assignment between the MCP and the NCU.

PG with
MMC 1 MMC 2 STEP7
Start-up tool

X4 X201

OPI (MPI)

PG with
MPI STEP7
X20 X101 X122 Start-up tool

MCP 1
NCU 1

Fig. 1-4 Example configuration (m:n corresponds to 2:1)

The operator panel fronts, NCU and machine control panel are all either
connected to the OPI bus or the MPI bus. A homogenous network must be
provided with respect to these components.
The illustrated configuration enables, for example, a large machine tool to be
equipped with operator panel fronts on the front and rear sides.

Features When operating two operator panel fronts in the configuration illustrated above,
the user will observe the following system operating characteristics:
1. For the NCU, there is no difference whether the input is from the MMC1 or
MMC2 operator panel fronts.
2. Each control unit can visualize selected displays independently of the other
unit.
3. Spontaneous events such as alarms are displayed on both control units.
4. The protection level set on one MMC will also apply to the second MMC.
5. The system does not provide for any further co-ordination between the
operator panels.
If the user applies the standard configuration shown in the diagram, then no
further special settings are required.

Copyright © Siemens AG, 2005.


2/B3/1-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.3 Several operator panel fronts and NCUs, standard functionality

From SW 3.2 In SW 3.2 and higher, it is possible to link one operator panel front and up to
1 MMC : 3 NCUs three NCUs (see Fig. 1-5). In this case, the MCP has a fixed assignment to the
relevant NCU.

Central MMC PG with


STEP7
Start-up tool
X4
OPI

X101 X122
NCU 1 NCU 2 NCU 3

X20
MCP 1 MPI MCP 2 MCP 3

PG with
STEP7
Start-up tool

Fig. 1-5 Example configuration for SW 3.2 (m:n corresponds to 1:3)

It is possible to operate several NCUs from one MMC (several autonomous


machines or one large machine with several NCUs). At any given time, only one
preselected NCU is connected with the MMC for operating sequences.
– HMI Advanced remains connected to all NCUs for alarms.
– HMI Embedded also only has one connection for alarms.

Features The operating characteristics when several NCUs are linked to one MMC are
as follows:
1. NCU operation:
The user must select the NCU to be operated by means of a soft key.
The operator display in the “Connection” operating area displays the name
of the connection and the NCU to which the MMC is currently linked.
2. HMI Embedded:
– No application should be active on the connection which is interrupted
by the changeover to another NCU (Example: data backup via RS-232).
System message “RS-232 active” is output if an attempt is made to
change over the link when an application is active.
– For the newly established connection, the MMC is positioned in the
preset Start operating area (as with MMC restart).
3. HMI Advanced:
When a link has been set up with another NCU, the last selected operating
area (on the previous NCU) is immediately available for the new NCU.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-21
Several Operator Panel Fronts and NCUs (B3) 06.05
1.3 Several operator panel fronts and NCUs, standard functionality

OEM solution As an OEM solution, an HMI Advanced can be connected via an OPI to up to
three NCUs (excluding 810D, as it does not have an OPI) as a program and
alarm server (m=1, n=3).
In addition, a PG can be connected with a start-up tool.

Note
With SINUMERIK 810D, limited resources make it impossible to implement
local MMCs.

PG with
Central MMC STEP7
Start-up tool
X4
OPI

X101
NCU 1 NCU 2 NCU 3

X4
MMC 1 *) MMC 2 *) MMC 3 *)

X20
MCP 1 MCP 2 MCP 3

*) MMC 100-103, OP030

Fig. 1-6 OEM solution as example configuration for SW 3.2: Alarm and program server

Features The following characteristics are typical of the OEM solution sketched in the
above figure:
1. NCU operation:
The user must select the NCU to be operated by means of a soft key.
The operator screen displays the name of the connection and NCU with
which the MMC is currently linked.
2. HMI Embedded can only be connected to a local NCU.
3. HMI Advanced:
When a link has been set up with another NCU, the last selected operating
area (on the previous NCU) is immediately available for the new NCU.

Copyright © Siemens AG, 2005.


2/B3/1-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.3 Several operator panel fronts and NCUs, standard functionality

From SW 3.5 In addition to the options described above for SW 3.5 and higher, it is also
1 MMC : 4 NCUs possible to create a link between an operator panel front (central MMC) and up
to four NCUs, as illustrated in the following diagram. The MCP and the local
MMC are permanently assigned to the relevant NCU.
A second MMC can be connected to the OPI.

Central MMC PG with


STEP7
start-up tool
X4

OPI (MPI)

X101
NCU 1 NCU 2 NCU 3 NCU 4

X4
MMC 1 *) MMC 2 *) MMC 3 *) MMC 4 *)

X20
MCP 1 MCP 2 MCP 3 MCP 4

*) HMI Embedded, HMI Advanced, OP030

Fig. 1-7 Example configuration for SW 3.5 (m:n corresponds to 1:4)

It is possible to operate several NCUs from one MMC (several autonomous


machines or one large machine with several NCUs). At any given time, only one
preselected NCU is connected with the MMC for operating sequences:
– HMI Embedded also only has one connection for alarms.
– HMI Advanced remains connected to all NCUs for alarms.

Note
With SINUMERIK 810D, limited resources make it impossible to implement
local MMCs.

Required References: /BH/, Operator Component Manual


documentation /IAD/, Installation and Start-Up Guide
/FB/ P3, Basic PLC Program

The following is described in these documents:


– MPI/OPI Bus design, bus addresses, /IAD
– Bus termination, /IAD/, /FB/S7/

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-23
Several Operator Panel Fronts and NCUs (B3) 06.05
1.3 Several operator panel fronts and NCUs, standard functionality

– Using basic PLC program to connect MCPs, /FB/P3/


– DIP-FIX settings on MCP, /IAD/

Copyright © Siemens AG, 2005.


2/B3/1-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
11.02
06.05 Several Operator Panel Fronts and NCUs (B3)
1.3 Several operator panel fronts and NCUs, standard functionality

1.3.5 MPI/OPI network rules

Please take the following basic rules into account when undertaking network
installations:
1. The bus line must be terminated at both ends. To do so, switch in the
terminating resistor in the MPI connector in the first and last nodes. Switch
off all other terminating resistors.

Note

S Only two inserted terminating resistors are permitted.


S Bus terminating resistors are integral components of the HHU/HPU
devices.

2. At least 1 termination must be supplied with 5 V.


This takes place automatically as soon as the MPI socket connector with its
inserted terminating resistor is connected to a booted unit.
3. Drop cables (feeder cable from bus segment to node) should be as short as
possible.

Note
Any spur lines that are not assigned should be removed if possible.

4. Every MPI node must first be connected and then activated.


When disconnecting an MPI node, first deactivate the connection and then
remove the connector.
5. One HHU and one HPU or two HHUs or two HPUs can be connected to
each bus segment. Bus terminations must not be inserted in the distributor
boxes of an HHU or HPU.
If necessary, the connection can run from more than one HHU or HPU to a
bus segment with intermediate repeater.
6. The following cable lengths for MPI or OPI for standard use without repeater
may not be exceeded:
MPI (187.5 kbaud): Max. total cable length is 1000 m
OPI (1.5 Mbaud): Max. cable length in total 200 m

Note
Piggy-back connectors are not recommended for power connections.

You will find more information on bus communications in


References: /IAD/ Installation and Start-Up Guide 840D, Chapter 3 or
/IAC/ Installation and Start-Up Guide 810D, Chapter 3

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-25
Several Operator Panel Fronts and NCUs (B3) 06.05
1.4 NCU link

1.4 NCU link


The NCU link, the link between several NCU units of an installation, is used in
distributed system configurations.

Introduction With high axis/channel requirements, for example, with rotary indexing
NCU link machines and multi-spindle machines, the computing capacity can exceed the
configuration possibilities and storage area offered by one single NCU. Several
NCUs interconnected with an NCU link module provide a scalable solution
which fully meets the requirements of this type of machine tools. The NCU link
module offers fast NCU-NCU communication based on a synchronized 12MB
PROFIBUS interface.

Note
NCU link is available in conjunction with HMI Advanced.

1.4.1 Types of distributed machines

Machine Rotary indexing machines/multi-spindle machines have the following


characteristics characteristics:

S Global, cross-station units (not assigned to one station):

– Drum/rotary switching axis and


– Units that go from station (position) to station (position) such as
on rotary indexing machines:
the rotary axis of the workpiece clamping for
multi-face machining operations
on multi-spindle machines:
spindle, quill

S Station-related (position-related), fixed-location units:

– Slides, milling/drilling units used on the part that is changed from station
to station for a machining task.

Applications Rotary indexing machines (RVM) and multi-spindle machines (MS) are used as
highly productive machines in the medium and large batch production. Their
main advantage is that many machining steps can be performed on the
workpiece in one clamp.

NCU According to the configuration of the RVM/MS, the many axes of these
assignments machines are assigned to different NCUs. (For example, one NCU for each
machining unit or group of machining units). The global units are assigned to a
separate NCU or distributed accordingly.

Copyright © Siemens AG, 2005.


2/B3/1-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.4 NCU link

Link Link
submodule submodule
Link communication

Initial position,
NCU1 status after each machining step NCU2

ËËËËËËËËËËËËËËËËËËËËËËË
611D 611D
MTR MS2

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË X

ËËËËËËËËËËËËËËËËËËËËËËË
MS1 Z

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
X

ËËËËËËËËËËËËËËËËËËËËËËË
Z Position/
station 2

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
Position/station 1
Drum/rotary table

Link Link
submodule submodule
Link communication

MS2
NCU1 NCU2

ËËËËËËËËËËËËËËËËËËËËËËË
611D 611D
MTR

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
MS1

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
X
Z

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
X

ËËËËËËËËËËËËËËËËËËËËËËË
Z

ËËËËËËËËËËËËËËËËËËËËËËË Drum/rotary table


Position/st
ation 2

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
Position/station 1

Rotation of drum/rotary table (MTR machine axis) by one position,


status prior to each machining step

Fig. 1-8 Sectional diagram of a drum changeover

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-27
Several Operator Panel Fronts and NCUs (B3) 06.05
1.4 NCU link

When advancing the rotary table with RVM or the drum with MS, the axis
holding the workpiece moves to the next machining unit.
The axis holding the workpiece is now assigned to the machining unit’s
channel. This is on another channel in the example, but need not be.
As the above diagram “Drum changeover” shows, machine axis MS1, which is
physically controlled by NCU1, is brought into position/station2 through rotation
of the drum/rotary table. To ensure that a coordinated machining operation
between the slide and spindle can now take place in position/station2, the
commands for spindle MS1 are transferred in this position by means of link
communication. Spindles MS1, MS2, ... are link axes.
Physical axes can only be subordinate to the motion control of one NCU
channel at any one time. However, the motion control initiative for an axis can
be assigned to different NCU channels in succession.

Solutions To make a physical axis available to several different NCUs, the Link Axis
property has been introduced. See Subsection 1.4.2 and Section 2.5. In the
diagram above, MS1 becomes the link axis from the point of view of NCU2
(bottom diagram) after it has been turned to position/station2.
For variable assignment of channel axes to machine axes according to axis
groups, the configuration concept axis container has been made available.
See Subsection 1.4.3 and Section 2.6.
All link axes which are moved to the next position/station by a particular
drum/rotary table must be managed in the same axis container.

1.4.2 Link axes

S Link axes
– Definition:
A link axis is an axis
– whose drive control and position control are subordinate to another
NCU or
– which is the local axis of the NCU concerned, but can be addressed
by another NCU.
– The software option link axis must be installed.

S Coordination
– The alternate use of a physical axis by several NCUs is dependent on all
the relevant NCUs being aware of the status and data of the particular
axis and on their ability to coordinate use of the axis.

S Interpolation
– Local axes and link axes can be interpolated together through motion
control by means of one NCU.

Copyright © Siemens AG, 2005.


2/B3/1-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.4 NCU link

S Hardware
– The NCUs involved in alternate use of axes across NCU limits must be
equipped with a link module. The NCU link module offers fast
NCU-to-NCU communication based on a synchronized 12-Mbaud
Profibus interface.
References: /PHD/, Configuring Guide NCU 571-573.2
The following description provides the information required to configure,
program and coordinate the distributed machines shown in the drawing.
For details please see Section 2.5.

1.4.3 Flexible configuration

Introduction On rotary indexing machines/multi-spindle machines, the work-holding axes


move from one machining unit to the next. As the machining units are under
different NCU channels, it is necessary for the axes holding the workpiece to be
dynamically reassigned to the appropriate NCU channel in the event of a
station/position change. Axis containers are provided for this purpose.
Only one workpiece clamping axis/spindle is active at a time on the local
machining unit. The axis container provides the possible connections to all
clamping axes/spindles, of which exactly one is activated for the machining
unit.
The following can be assigned via the axis container:

S local axes and/or


S link axes
Switching between the available axes defined in an axis container works by
cyclical shifting (rotation) of the entries in the axis container.
The modification can be triggered by the parts program.

Scope of validity Axis containers with link axes are a NCU-cross device (NCU-global) that is
coordinated via the control.
It is also possible to have axis containers that are only used for managing local
axes.
For details about axis containers, please refer to Section 2.6.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-29
Several Operator Panel Fronts and NCUs (B3) 06.05
1.4 NCU link

1.4.4 User communication across the NCUs

Definition
S Link variables
– Every NCU connected by means of a link module can address uniformly
accessible global link variables for all connected NCUs. Link variables
can be programmed in the same was as system variables. In general,
these variables are defined and documented by the machine
manufacturer.
– Applications for link variables:
– Global machine states
– Workpiece clamping open/closed
– ...
– Data volume comparatively small
– Transmission rate very high because information relevant to main run is
available for exchange.
– These system variables can be accessed from the parts program and
from synchronized actions. You can configure the size of the memory
area for global system variables.
– All connected NCUs require one interpolation cycle before they can
consistently read a new value in a global system variable.
For more information about the global system variables, please refer to 2.7.

OPI (MPI)

NCU1 NCU2

PLC Link PLC Link ...


Master module Slaves
module

NCU link Fast cross-communication

DP “Normal” cross-communication

Fig. 1-9 Communication overview

Note
On installations without an NCU link, the link variables can also be used
NCU-locally as an additional means of cross-channel communication.
In this instance, there is no interval of one interpolation cycle between writing
and reading.

References: /FBSY/ Description of Functions Synchronized Actions

Copyright © Siemens AG, 2005.


2/B3/1-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.4 NCU link

1.4.5 Lead link axes in software Version 6 and higher

The configuration illustrated below shows how to traverse following axes on


several NCUs (NCU2 to NCU n in the diagram) in relation to the movement of
the leading axis controlled by another NCU (NCU 1 in the example).

NCU1 NCU 2 ... NCU n


Setpoints from A1

Channel control by
Interpolator following axis/axes Interpolator

Actual values
Servo from A1 Servo

611 D 611 D

NCU link module


A1 B1

B2

Fig. 1-10 NCU 2 moves the following axes via link to a leading axis on NCU1

If the boundary conditions described in Chapter 2 are complied with, it is


possible for NCUs to traverse several leading axes in the whole NCU link group
while the other NCUs derive the required following axis motions from them. The
leading axes must only be moved by the NCUs to which they are physically
connected (local NCUs). (Home NCUs).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-31
Several Operator Panel Fronts and NCUs (B3) 06.05
1.4 NCU link

1.4.6 NCU link with different interpolation cycles

Introduction Connecting NCUs to link modules with different interpolation cycle settings
offers additional application possibilities. This functionality is also called “Fast
IPO link”, as when different cycles are set, one of the connected NCUs has the
fastest interpolation cycle.

Application NCUs with a normal interpolation cycle drive axes and spindles with standard
guideline requirements of dynamic response and accuracy, while NCUs with the faster
interpolation cycle can operate one or several axes which demand more in
terms of dynamic response and accuracy.
Examples:
Eccentric turning (cams, pistons, or similar)
C and Z axes have normal requirements,
X axis with more exacting demands of dynamic response and
accuracy

NCU-link communication
Link submodule Link submodule

NCU2 NCU1
Standard Shorter IPO
cycle
IPO cycle

611D 611D
C

Fig. 1-11 NCU link with different interpolation cycles

Copyright © Siemens AG, 2005.


2/B3/1-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
1.4 NCU link

Main features
S Cross-NCU interpolation of fast (X) and standard (C,Z) axes/spindles (see
Fig. 1-11).

S The parts program is running on the NCU with the faster interpolation cycle
and can “see” the other axes as link axes or container link axes.

S Communication between the NCUs takes place via the link modules in the
cycle of the slower NCU/NCUs (link cycle).

S The slower interpolation cycle is an integral multiple of the faster


interpolation cycle.

S Owing to the different cycle clocks used, it is necessary to comply with the
boundary conditions described in Section 2.11.

S Do not accelerate the slower interpolating axes during the machining


operation to ensure that contour precision is provided between the faster
and slower interpolating axes.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/1-33
Several Operator Panel Fronts and NCUs (B3) 06.05
1.4 NCU link

Notes

Copyright © Siemens AG, 2005.


2/B3/1-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

Detailed Description 2
2.1 Several operator panel fronts and NCUs with control unit
management option
The following chapter provides a detailed description of the preparations and
implementation of the operating steps for the M:N concept.
Procedure
1. A number of different configurations are possible with the components of the
existing system.
The user selects one of these options to meet his individual requirements:
– On the hardware side: by interconnecting components via bus systems
– On the software side: by configuring static properties using configuration
file NETNAMES.INI (see following paragraphs).
These static properties are made operative during power-up and cannot
be altered once the system is running.
– Control unit switchover function in the PLCs of the relevant NCUs. The
PLC control unit switchover function comprises several blocks. These
perform the following tasks:
– Check of switchover conditions
– Prioritized suppression
– Switchover
The PLC SW “Control unit switchover” is supplied as part of the toolbox and
can be parameterized if necessary. See Subsection 2.1.14.
The option can be used only in PLCs with basic program version 05.03.01
or later.
2. Dynamic properties (such as online/offline states) can be changed when the
system is running within the limits specified by the NETNAMES.INI file.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-35
Several Operator Panel Fronts and NCUs (B3) 06.05
2.1 Several operator panel fronts and NCUs with control unit management option

2.1.1 Hardware structure

As described in Chapter 1, a complex system can consist of M (several) control


units and n (several) NCUs.
The diagram below illustrates a typical complex system:

Host Host computer


computer (see FBR/SINCOM Computer Link)
MMC–MMC/host computer communication
TCP/IP

M: N
MMC 1 MMC m
...

MCP 1 ... MCP m


OPI
(MPI)

Required data controlled


– PI services
– Domain services

NCU link
A1 A1 A1
A2
COM

A2
COM

COM
NCU 1 A2
... NCU 2 ... NCU n
...
Master Slave
... Slave
Ai Ai Ai
611 D

611 D

611 D

S1 Link S1 S1
S2 submodule S2 Link submodule S2
... ... ...
Terminating Sj Termi-
Sj Sj
resistor nating
PLC PLC PLC
resistor
NCU link: Communication in the
interpolation cycle

*) PLC–PLC
DP–DP coupler communication

Local I/Os Local I/Os Local I/Os AS400/300

Fig. 2-1 Topology of distributed system configurations

*) PLC–PLC communication refers either to


– PLC-PLC cross-communication (master/slave comm.) or
– PLC local I/Os.
The hardware components are connected to one another via the bus (MPI
and/or OPI). The relationships between the bus nodes (identification, properties,
assignment and switchover) are software-controlled.

Copyright © Siemens AG, 2005.


2/B3/2-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

2.1.2 Features

Client The assignment between bus nodes and the bus system is static and cannot be
identification changed once the system is running. It is configured once in file
NETNAMES.INI.
The client identification (CLIENT_IDENT) is composed of bus type and MMC
bus address; the MMC uses it when logging on to an NCU to establish an online
connection.

Features The MMCs in an M:N installation have the following properties:

Server Control panel


Maintains a constant 1:N connection Can be switched to the different
NCUs and maintains a constant 1:1
connection (only one at any one
time!).
Operator can operate and monitor.
Connection is set up when the
MMC goes online, and is discon-
nected when it goes offline.
Alarm server Data management Main Secondary
(HMI Advanced) server operator operator panel
(HMI Advanced) panel
Receives the alarms Establishes all connec- Example: Example: Secon-
from all NCUs in an tions configured for it in Main control dary control panel
M:N installation. From NETNAMES.INI during panel for for rotary index ma-
its side, a constant 1:N booting and maintains a rotary index chines can only be
connection is main- constant 1:N connection. machines can connected to one
tained. The process Can receive, manage be connected of two adjacent ma-
“Receive alarms” is al- and distribute data within to all machin- chining stations.
ways active and runs the framework of the job ing stations.
in the background. list concept.
Cannot be suppressed Cannot be suppressed. Cannot be Can be suppressed
(see Subsection 2.1.8) suppressed. by the main or sec-
ondary control
panel.

Distribution of properties among the MMC types:

Scope HMI Advanced HMI Embedded/HT6


Server x
Main control panel x x
Secondary control panel x x

MMC is both As a server, the MMC maintains constant 1:N connections; as a main control
server and main panel it has a switchable 1:1 connection.
control panel at If, as a control panel, the MMC is switched to another NCU, it occupies the
the same time same connection which it already has as a server. A new connection is not
established.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-37
Several Operator Panel Fronts and NCUs (B3) 06.05
2.1 Several operator panel fronts and NCUs with control unit management option

Permissible MMC If there is a server (alarm/data management server) in an M:N installation, it is a


combinations in main control panel at the same time.
an installation In an M:N installation, there can only be one MMC/HT6 with the following
properties:
Windows MMC (HMI Advanced) : Server and main control panel
or
Non-Windows MMC (HMI Embedded/HT6) : Main control panel
There can be any number of secondary control panels.

Note
For the function Execution from external source to be available, one
operator panel in the system must be designated as a server. See below.

2.1.3 Configuration file NETNAMES.INI

Configuration As the hardware components can be freely combined (see the previous
parameters paragraph “Hardware structure”), it is necessary to provide the system with
information about which components are connected, how they are connected to
each other and how they interact.
In particular, it is necessary to regulate the competition among the different
MMCs for the limited number of available interfaces (suppression, see 2.1.8).
Each MMC/HT6 has a configuration file NETNAMES.INI for this purpose; this is
where the configuration parameters must be stored.

2.1.4 Structure of the configuration file

There is a separate configuration file NETNAMES.INI for each MMC/HT6.


It is structured as follows:

Copyright © Siemens AG, 2005.


2/B3/2-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

I. MMC identification

II. MMC-to-NCU connections

III. Bus identification

IV. MMC description

V. Description of NCU components

VI. Channel data

Fig. 2-2 Structure of the configuration file NETNAMES.INI

In the following tables,


– the components which the user may need to adapt or which can be
freely named are shown in italics,
– alternative passwords are specified separated by |.

I. MMC MMC/HT6 identifier to which NETNAMES.INI applies:


identification
Element Explanation Example
[own] Header [own]
owner = Identifier MMC identification owner = MMC_1

II. MMC-to-NCU Configuring the connections between the MMC and the NCUs:
connections
Element Explanation Example
[conn Identifier] Header [conn MMC_1]
conn_i = NCU_ID Configuring the NCU con- conn_1 = NCU_1
nection(s) conn_2 = NCU_2
i = 1, ..., 15 ...
conn_i = NCU_i

III. Bus Defines which bus the MMC is attached to:


identification
Element Explanation Example
[param network] Header [param network]
bus = OPI | MPI Bus designation bus = OPI

opi: Operator panel front interface with 1.5 Mbaud


mpi: Multi-point interface with 187.5 kbaud

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-39
Several Operator Panel Fronts and NCUs (B3) 06.05
2.1 Several operator panel fronts and NCUs with control unit management option

Note
The baud rate is automatically detected on the HMI Embedded/HT6.

IV. MMC Characterization of the MMC/HT6:


description
Element Explanation Example
[param Identifier] Header [param MMC_1]
mmc_typ = Type/connection MMC characteristics (see mmc_typ = 0x40
identifier below) MMC is server and main
operator panel
See below for explanations
mmc_bustyp = OPI | MPI Bus the MMC is attached to mmc_bustyp = OPI
mmc_address = Address MMC_address mmc_address = 2
mstt_address or Address of MCPs to be mstt_address = 6
mcp_address = address switched simultaneously. or mcp_address = 6
If not present, there is no
MCP to be switched simul-
taneously.
name = Identifier Any name allocated by the name = MMC_LINKS
user (optional, max. 32
characters)
start_mode = ONLINE | State after booting. start_mode = ONLINE
OFFLINE If ONLINE, link is set up via (during power-up MMC is
DEFAULT_channel entry to connected online to the
the associated NCU. NCU to which the channel
OFFLINE: No link is set up is assigned via channel
immediately after booting. data (see VI )
Important: In addition, it is DEFAULT_logChanGrp,
necessary to set the entry DEFAULT_ log_Chan).
NcddeDefaultMachineName
= local in mmc.ini in the
[GLOBAL] section.

The integrated MCP is always switched over simultaneously with the HT6. The
MCP address must have the same value as the MMC address. The MCP
address must be set to values between 1 and 15.

Note
Note that the NCU configured via the DEFAULT channel must be the same as
the NCU specified under NcddeDefaultMachineName in file MMC.INI.

Explanation for mmc_typ:


mmc_typ contains type and connection identifiers for the MMC and is
transferred to the PLC at switching request. mmc_typ is evaluated as priority for
the suppression strategy. See Subsection 2.1.8.

Copyright © Siemens AG, 2005.


2/B3/2-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

Bit 7 = ––– (reserved)


Bit 6 = TRUE: MMC is the server and cannot
be suppressed.
Bit 5 = TRUE: MMC/HT6 is the main operator panel.
Bit 4 = TRUE: MMC/HT6 is the secondary operator panel.
The user can specify four additional MMC types which the control unit
switchover function of the PLC takes into account in its suppression strategy:
Bit 3 = TRUE: OEM_MMC_3
Bit 2 = TRUE: OEM_MMC_2
Bit 1 = TRUE: OEM_MMC_1
Bit 0 = TRUE: OEM_MMC_0
If no mmc_typ is entered in file NETNAMES.INI, then the MMC/HT6 powers up
by the method for standard functionality.

V. Description of A separate entry must be generated for every single NCU component
the NCU connected to the bus.
component(s)
Element Explanation Example
[param NCU_ID] Header [param NCU_1]
name= any_name Any name assigned by the name = NCU1
user; is output in the alarm
line (optional, max. 32 char-
acters)
type= NCU_570 | NCU_571 NCU type type= NCU_572
| NCU_572 | NCU_573
nck_address = j Address of NCU component nck_address = 14
on the bus:
j = 1, 2, ..., 30 *)
plc_address = p Address of PLC component plc_address = 14
on the bus:
p = 1, 2, ..., 30 *)
(only necessary for the MPI
bus because j = p) for the
OPI bus)

*) With the MPI bus:


Since the associated NCU always occupies the next-higher address than the
PLC, the PLC address must not be 31. Address 31 can, for example, be
assigned to an MMC.

Note
If the bus node addresses on the MPI bus are configured in conformance with
SIMATIC, the configuring engineer can read out the assigned addresses using
a SIMATIC programming device and use them to create the NETNAMES.INI
file.

VI. Channel data The control unit switchover option can work only if the control unit knows how
channels are assigned to NCUs so that it can set up links between the control
unit and NCUs. (Channel menu).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-41
Several Operator Panel Fronts and NCUs (B3) 06.05
2.1 Several operator panel fronts and NCUs with control unit management option

Concept The following operations must be performed:


1. Definition of technological channel groups
2. Assignment of channels to groups
3. Assignment of NCUs to channels
4. Definition of power-up link
NCUs are addressed indirectly on the basis of channel group and channel on
the control unit. See 2.1.11 Operator interface.
References: /IAM/, MMC Installation and Start-Up Guide
/BA/, Operator’s Guide
/S7HR/, SIMATIC S7-300
/FB/, P3 “Basic PLC Program”

Element Explanation Example


[chan identifier] Header [chan MMC_1]
(channel menu of MMC_1)
DEFAULT_logChanGrp = Channel group of channel DEFAULT_logChanGrp =
group during power-up (4.) Mill1
DEFAULT_logChan = chan- Selected channel during DEFAULT_logChan =
nel power-up (4.) channel11
ShowChanMenu = TRUE | TRUE Display channel ShowChanMenu = TRUE
FALSE menu
logChanSetList = group list List of channel groups (1.) logChanSet = mill1, mill2
[group] Head (2.) [mill1]
logChanList = channel1, Groups channels separated logChanList = channel11,
channel2,... by comma (2.) channel12, channel13
[channel] Head (3.) [channel11]
logNCName = identifier Log. identifier of an NCU logNCName =
(3.) NCU_1
ChanNum = i (i = 1, 2, 3,...) Number of channel config- ChanNum =1
ured for associated NCU
(3.)
And so on for all channels
in group
Continue with next group
and its channels

A complete example of how to configure the channel menu can be found in 6.1.

2.1.5 Creating and using the configuration file

Syntax The configuration file must be generated as an ASCII file. The syntax is the
same as that used in Windows *.ini files.

Copyright © Siemens AG, 2005.


2/B3/2-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

In particular, the following is applicable:

S Passwords must be typed in small letters.


S Comments can be inserted in the parameter file (limited on the left by “;” and
on the right by end of line).

S Blanks may be used as separators at any position except in identifiers and


passwords.

HMI Embedded, The NETNAMES.INI file generated on the PC/PG is loaded, as described in
OP030, HT6
References: /IK/, Installation Kit

via the RS-232 interface and permanently stored in the FLASH memory of the
control units.

HMI Advanced The NETNAMES.INI file can be processed directly with an editor (in menu
“Start-up/MMC/Editor” or DOS_SHELL) on the hard disk of the operator
component. The NETNAMES.INI file is stored in the installation directory
C:\USER\.

Example For a sample configuration file, please refer to Chapter 6.

2.1.6 Power-up

Defaults standard The following defaults are applied (standard M:N = 1:1) if no NETNAMES.INI
functionality configuring file is loaded into the HMI Embedded/OP030/HT6 or if the latter
cannot be interpreted:
– The bus type used is automatically determined.
– MMC has address 1.
– OP030 has address 10.
– NCU and PLC both have address 13 for an OPI bus.
– NCU has address 3 and PLC address 2 for an MPI bus.

With option If, however, a special NETNAMES.INI file is created, then it must correspond
exactly to the actual network on account of the special features described
below.
If an M:N-capable MMC fails to set up a link to the NCU during power-up or in
the case of a configuring error, the MMC switches over to OFFLINE operating
mode. In this MMC mode the operator can switch over to the area application
via the Recall key and then to the start-up area.
Compatibility The use of the above defaults establishes compatibility with earlier software
versions for operation of the panel front.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-43
Several Operator Panel Fronts and NCUs (B3) 06.05
2.1 Several operator panel fronts and NCUs with control unit management option

Power-up with HMI An HMI Embedded/HT6 control unit can only set up an active link to the NCU if
Embedded/HT6 the configuration in NETNAMES.INI is correct as described in Section “Structure
of the configuration file”. HMI Embedded, HT6 and OP030 can power up in
parallel on one NCU, because as bus nodes they have different addresses.
The OP030 can be used as a second operator panel front that has a fixed
assignment to an NCU.
If the configured addresses do not match the real addresses (NC/PLC address),
the start-up engineer can use the following key sequence to power-up an NCU
that is not configured.
Sequence
1. MMC boots on the NCU with bus address 13, if the NETNAMES.INI was not
changed (original works settings).
2. File NETNAMES.INI has been altered, message
“MMHMI Embedded version xx.xx.xx: waiting for connection ...”
– Press key “1”, the message:
“choice: ’1’=set new start-address, ’^’ =boot” is displayed.
– Press the “1” key, the bus addresses of all nodes connected to the bus
are displayed. The message:
“Please try one of the shown addresses or press ’^’ to reboot
’1’,_,_,_,_,’6’,_,..._,’D’,_,...” is displayed.
– Press “D” key and INPUT
– MMC/HT6 boots on the NCU with bus address 13 (if an NCU is
configured under the address found).
3. Enter new NC address in the Start-up/NC/NC address operating area and
confirm with “Yes”.
4. NC reset (new address is only valid after NC reset)
5. Configure connection/channel menu in the NETNAMES.INI file and transfer
to the MMC.
6. After the NCU addresses have been assigned, the bus can be wired for m:n
operation.

Note
You can operate an OP030 and an HMI Embedded/HT6 on an interface without
assigning parameters (various bus addresses are available in the delivery
state).

Power-up with The HMI Advanced can power up even if the link to the NCU cannot be made
HMI Advanced due to errors in the configuring parameters.
standard solution An NCU address can be specified explicitly through the entry of a “1 : 1”
connection in the “Start-up/MMC operator panel front” menu. When the MMC
has powered up again, the communications link between the MMC and
NCU/PLC will work properly.

Copyright © Siemens AG, 2005.


2/B3/2-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

Sequence
1. MMC boots on the NCU with bus address 13, if the NETNAMES.INI was not
changed (original works settings).
2. NCU bus address was changed, the following alarm is output
“120201 name: communication failed”
– Set the connection to 1:1 in the Start-up/MMC/Operator panel front
operating area and enter “13” as the NC address
– Confirm with OK and boot the MMC
3. – 6. As for HMI Embedded

Note
In the event of an error, check
– the active bus nodes in the menu
– start-up/NC/NCK addresses (HMI Embedded, HT6 and
HMI Advanced),
– start-up/MMC/operator panel front (HMI Advanced).

Power-up with If the control unit switchover option is installed, a configuring problem can be
HMI Advanced corrected as follows:
Option 1. Select the channel menu with the input key
2. Go to the area switchover screen by pressing Recall
3. Select start-up.

Required References: /BH/, Operator Components Manual


documentation /IAD/, Installation & Start-up Guide
/FB/ P3, Basic PLC Program

In this document you will find the following described:


– Creation of MPI/OPI bus link, bus addresses, /IAD/
– Bus terminator, /IAD/, /FB/S7
– Using basic PLC program to connect MCPs, /FB/, P3
– DIP-FIX settings on the MCP, /IAD/

Note
After performing a series machine start-up, a Power On must be performed on
the MMC/HMI (PCU50) so that the bus nodes (PLC, NC, MMC/HMI) can
synchronize again.

2.1.7 MMC switchover

With the M:N concept, you can change the control unit properties and states
configured in the NETNAMES.INI file during operation.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-45
Several Operator Panel Fronts and NCUs (B3) 06.05
2.1 Several operator panel fronts and NCUs with control unit management option

For example, the user can

S change MMCs (see Subsection 2.1.9),


S change MCPs (see Subsection 2.1.13).
Up to two MMCs can be online at the same time on one NCU. A suppression
strategy (see Subsection 2.1.8) is provided to avoid conflicts when more than
two MMCs want to go online on one NCU.
The MMC properties are configured for each MMC in the NETNAMES.INI file. If
an MMC wants to go online on an NCU via the switchover protocol, its
parameters are passed on to the PLC of the respective NCU. The PLC program
Control Unit Switchover evaluates the parameters:
– Check suppression conditions
– Switchover if necessary

2.1.8 Forced break

Up to two MMCs or HT6s can be online on each NCU. If this is the case, and
another MMC/HT6 would like to go online, it is necessary to ensure that there
are no conflicts. This is achieved by means of the suppression algorithm
described below.

Sequence
S The PLC sends an offline request to the MMC to be suppressed.
S It returns a positive or negative acknowledgement to the PLC:
– If it is positive, the MMC/HT6 is suppressed (see below). It terminates
the communication with the NCU and goes into offline mode.
Any MCP assigned to the MMC is deactivated by the PLC.
The integrated MCP is always assigned on the HT6 and is thus also
deactivated.
– A negative acknowledgement is output if processes run on the MMC that
cannot be interrupted, e.g. operation via RS-232 or data transfer
between the NCU and MMC.
In this case the MMC/HT6 is not suppressed; it remains online on this
NCU.

Suppression The PLC program “Control Unit Switchover” operates according to the
strategy
– priorities of the control units and
– the active processes
The priority depends on parameter mmc_typ in configuring file NETNAMES.INI
(see paragraph above “Structure of the configuration file”).
If an MMC/HT6 wants to go online to an NCU, it stores mmc_typ (priority) in its
MMC_PLC interface. The Control Unit Switchover program evaluates this
according to the following table:

Copyright © Siemens AG, 2005.


2/B3/2-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

MMC property Priority


Server 6
Main control panel 5
Secondary control panel 4
OEM-MMC 3 3
OEM-MMC 2 2
OEM-MMC 1 1
OEM-MMC 0 0

Suppression The following rules apply for the MMC suppression:


rules
S High priority suppresses lower or equal priority subject to the following
supplementary conditions:
– Servers cannot be suppressed, as they require a permanent connection
to each NCU.
– MMCs/HT6s on which the following processes are active cannot be
suppressed:
– Data transfer, e.g. from/to NCU
– MMC/HT6 is in the process of switching to the relevant NCU
– MMC/HT6 is just changing operating mode
–OEM disables switchover

S Equal priority of nodes between active MMC/HT6 and competitor MMC:


– The active MMC/HT6 is suppressed

2.1.9 Connection and switchover conditions

In order to
– allow an MMC/HT6 which is currently working offline to go online on a
particular NCU or
– switch an MMC/HT6 which is working online over to another NCU,
1. Call the channel menu on this MMC by pressing the channel switchover key
(applies only to MMC).
2. Select the channel group via a horizontal soft key.
3. Select the appropriate vertical soft key for the channel. See 2.1.10.
HT6: 1. Activate the “Panel Function” by selecting the key with the same name.
2. Select the “Channel” soft key.
3. Select the channel group.
4. Select the channel.
If the chosen channel is not included in this group, then you can return
to point 2. by pressing the “Recall” key.
The MMC/HT6 is then switched to online operation or to another NCU, provided
that its change in status is not blocked by one of the following conditions
(displayed in message line).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-47
Several Operator Panel Fronts and NCUs (B3) 06.05
2.1 Several operator panel fronts and NCUs with control unit management option

Table 2-1 Messages for MMC switchover

HMI Emb. Message text


109001 No switchover: Switchover disable set in current PLC
109002 No switchover: Target PLC occupied, try again
109003 No switchover: Switchover disable set in target PLC
109004 No switchover: PLC occupied by higher-priority MMCs
109005 No switchover: No MMC on target PLC can be suppressed
109006 No switchover: Select channel invalid
109007 Channel switchover in progress
109009 Switchover: Error in internal state
109010 Suppression: Error in internal state
109012 Control unit switchover, PLC timeout: 002
109013 Activation rejected

Note
Corresponding messages are output without a message number on the HMI
Advanced.

Additional messages can be generated in the HMI Embedded/HT6 and HMI


Advanced indicating the current status or errors in the configuration or the
operating sequence.
For details see
References: /DA/, Diagnostics Guide, Chapter 1

2.1.10 Implementation of control unit switchover

Control unit switchover is an extension of channel switchover.

Channel “Channel switchover” is a configuring means by which channels of any chosen


switchover NCUs can be grouped and named individually. MMC switchover to another
NCU is implemented as part of channel switchover functionality.
Configuring of channels is based on file NETNAMES.INI. See 2.1.4.

Copyright © Siemens AG, 2005.


2/B3/2-48 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

2.1.11 User interface

Function You can establish a connection between the MMC unit and one of the
connected NCU/PLC units in every operating area.

Channel number of the MMC, Channel number returned by the PLC e.g.
is written in DB19 DBB22 the MCP from DB19 DBB8

Machine Channel14 \MPF.DIR


JOG
Channel14 T1N1.MPF
Channel RESET Channel11
Program aborted

Channel12

Channel13

Channel14

Channel15

Mill 1 Mill 2

Fig. 2-3 Channel menu (the comments refer to the 1st MMC interface)

Only the channels of the respective group are displayed.


Activate the channel changeover key. The currently existing connection is
displayed by means of the highlighted softkeys (horizontal, vertical) if the
channel menu is active.

Channel You can switch to other channels by means of the vertically arranged softkeys.
switchover
Group You can switch to another group by means of the softkeys on the horizontal
switchover menu (see previous Section); the channels of the currently selected group are
now displayed on the vertical soft keys. Switchover to another channel (and if
necessary to another NC) only takes place upon activation of a vertical soft key.

NC switchover You can change to another NC via the vertical softkeys if the channel is not on
the current NC.
Procedure: Configure a channel area NCs (horiz. softkeys 1–8) if applicable and
link a channel to vertical softkeys from every NCU.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-49
Several Operator Panel Fronts and NCUs (B3) 06.05
2.1 Several operator panel fronts and NCUs with control unit management option

Note
The soft keys only offer the connections that are really assigned and whose
channels are active in the respective NC.
HT6
The channel menu on the HT6 is a two-level structure. In the first stage you
select the channel group and in the second stage, the channel. For details
please refer to the HT6 Operator’s Guide.

2.1.12 Operating mode switchover

Two MMCs/HT6s can be online at the same time on one NCU. In order to avoid
both gaining write access to the same data or file simultaneously, there are two
operating modes, i.e.:

S the active and


S the passive operating mode.
Only one of the two MMCs/HT6s can be active; the other is passive.
The interaction takes place according to the following rules:

Active operating
mode S The user requests active operating mode by pressing a key on the operator
panel front.
Active mode has the following characteristics:
– All operations and operating areas are activated.
– The operator can operate and monitor.
– The MCP assigned to the MMC/HT6 is activated.
– If data transfer processes (e.g. series machine start-up, various tool
management services, start-up of the drive configuration) are running
between the other MMC/HT6 and the joint NCU, it cannot become active
immediately.

Passive operating
mode S Passive mode is effective when the other MMC/HT6 has requested active
mode.
The features of this mode are as follows:
– The connection to the NCU remains established.
– All operations are deactivated.
– Operator cannot operate. A window is displayed with header and alarm
line and a message indicating “passive” state.
– The global menu is activated.
– Any services initiated before (in active mode) remain active (e.g.
operation via RS-232, reloading parts programs, executing the job list,
alarms).
– The MCP assigned to the MMC/HT6 is deactivated.
– The application window and softkeys are disabled.

Copyright © Siemens AG, 2005.


2/B3/2-50 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

The active operating mode can be selected by 2 different methods:

S Input key
S Channel switchover key and channel selection.

Rules for The following rules apply to operating mode changeovers


operating mode (see also Subsection 2.1.8 “Suppression strategy”):
changeover
S An MMC/HT6 which goes online to an NCU is assigned active operating
mode on this NCU.
If another MMC/HT6 was previously active on this same NCU, it switches to
passive mode if permitted by the PLC.

S If two MMCs/HT6s are online, the operating mode is changed by pressing


the key (“Input”, ENTER, RETURN) used to select the active operating
mode.

S Changeover from the active to the passive operating mode might be


rejected by the MMC/HT6 if the current MMC application cannot be aborted
or is still in progress. Likewise, active mode cannot be selected on an
MMC/HT6 if the other MMC/HT6 currently linked to the NCU cannot be
switched to passive mode.

S If an online request is issued by an MMC/HT6


– and no MMC/HT6 is yet online:
The MMC/HT6 issuing the request goes online and switches to active
mode.
Any assigned MCP is activated by the PLC.
– and an MMC/HT6 is already online:
This MMC/HT6 switches to passive mode.
The MMC/HT6 issuing the request goes online and is given active mode.
– and two MMCs/HT6s are already online (both of secondary control panel
type):
The currently active MMC/HT6 switches to passive mode and is
suppressed.
The MMC/HT6 issuing the request goes online and is given active mode.
– and two MMCs/HT6s are already online (one of main control panel type
and in active mode, the other of secondary control panel type and in
passive mode):
The currently active MMC/HT6 switches to passive mode. The currently
passive MMC/HT6 is suppressed.
The MMC/HT6 issuing the request goes online and is given active mode.
– and two MMCs/HT6s are already online (one of secondary control panel
type and in active mode, the other of main control panel type and in
passive mode):
The currently active MMC/HT6 switches to passive mode and is
suppressed.
The MMC/HT6 issuing the request goes online and is given active mode.

S If two MMCs are online on one NCU and the active MMC/HT6 goes offline, it
first switches to passive mode. Then the second MMC/HT6 switches to
active mode and the first one disconnects the link to the NCU.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-51
Several Operator Panel Fronts and NCUs (B3) 06.05
2.1 Several operator panel fronts and NCUs with control unit management option

Note
The MMC type is assessed as priority for the suppression strategy. See
2.1.8.
If the active MMC/HT6 cannot be switched to passive mode, then the
competing MMC/HT6 is switched to passive mode.

2.1.13 MCP switchover

An MCP cannot be switched over independently of the MMC/HT6 it is assigned


to. It can be switched over only if

S the MMC switches over and


S the MCP address is stored in the MMC parameter block or the MMC-PLC
interface (see paragraph “Structure of the configuration file” in this section).

S MCP_enable is set in the control unit switchover function on the PLC.

Activating/ If an MCP is assigned to the MMC/HT6 in the NETNAMES.INI file, it is


deactivating the activated/deactivated as part of the operating mode change. The MCP
MCP switchover in the PLC is called by the operating mode change as a subfunction.
The parameters for the MCP switchover are stored in the MMC-PLC interface.

MMC/HT6 is changing operating mode MCP is


active –> passive deactivated
passive –> active activated

2.1.14 PLC program “Control Unit Switchover”

Introduction “Control unit switchover” is an important controlling function in the overall M:N
strategy:
– MMC/HT6 makes requests regarding the dynamic assignment of
MMCs/HT6s to NCUs according to the configured options in
NETNAMES.INI and displays information about existing links.
– The PLC control unit switchover checks the priorities of the requests and
the states of the components involved and switches over if necessary.
– The NCU sets signals and evaluates signals required in connection with
the control unit switchover function.

Copyright © Siemens AG, 2005.


2/B3/2-52 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

The control unit switchover function is a SW package in the toolbox. It is


immediately available with its standard functionality, but can be modified for
special applications according to individual requirements.
Provision is made for two categories of modification:
1. Simple parameterization of standard functionality
2. More fundamental re-configuring of the control unit switchover function
Reasons for more fundamental, user-specific re-configuring (2.) can be as
follows:
– Displacement strategy which differs from standard functionality
– Operating mode switchover which differs from standard functionality
– Independent handling of override switch for switchover of control unit
– Existence of a 2nd machine control panel on an MMC/HT6.

Note
The logic in the MMCs/HT6s (automatic control unit switchover) is fixed. It
exists in two variants for the HMI Advanced and HMI Embedded/HT6. The
flexibility of the solution in SW 5 includes the following features:
1. Configuring: NETNAMES.INI
2. See below for parameterization of standard functionality of PLC program
“Control unit switchover”.
3. See Chapter 6 for more fundamental user-specific re-configuring.

(1) Standard This is implemented as an optional PLC program.


functionality

Program structure The control unit switchover program consists of:


1. FB101/DB101: Online/offline operating mode switchover
2. FB102/DB102: Active/passive operating mode switchover
3. FC103: Machine control panel switchover
Every program section is implemented in a separate function block (FB) or
function (FC). The variables are stored in a separate instance data block (DB)
for each FB. The control unit switchover main program is stored in FB101. The
latter block must be called in an organization block (OB) to activate the
functions. FB102 and FC103 are called repeatedly in MB101.

MCP switchover The MCP switchover is not mandatory. It can be enabled or disabled via
FB101/DB101 variable:
MSTT_enable.
Assignment in the declaration table:
TRUE MCP switchover is active
FALSE MCP switchover is not active, no FC103 call

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-53
Several Operator Panel Fronts and NCUs (B3) 06.05
2.1 Several operator panel fronts and NCUs with control unit management option

The MCP assigned to the active MMC is always activated. If the operating
mode switchover function is disabled, then the MCP assigned to the last MMC
to go online is activated.
Power-up condition:
To prevent the previously selected MCP from being activated again when the
NCU is restarted, input parameters MCP1BusAdr must be set to 255 (address
of 1st MCP) and
MCP1Stop to TRUE (deactivate 1st MCP) should be set when FB1 is called in
OB100.
Enabling commands:
When one MCP is switched over to another, any active feedrate or axis
enabling signals may be transferred at the same time.

Important
! After an MCP switchover, the override switch on the new MCP is active
immediately.
The keys actuated when the MCPs are switched remain operative. If no MCP is
installed on the newly selected MMC, then it will not be possible to cancel the
key functions from this MMC. Measures for situations of this type must be
implemented in the PLC user program.

Operating mode The operating mode switchover is not mandatory. It can be enabled or disabled
switchover via FB101/DB101 variable:
active_enable.
Assignment in the declaration table:
TRUE Mode switchover is active
FALSE Mode switchover is not active, no FC102 call

Error messages If disturbances occur (e.g. interface signal failure) while the program is running,
corresponding alarms/error messages are transferred to data block DB2. 6
alarms are implemented:
1. Error in MMC bus address, MMC bus type
2. No confirmation MMC1 offline
3. MMC 1 is not going offline
4. No confirmation MMC 2 offline
5. MMC 2 is not going offline
6. Online-request MMC is not going online (calling MMC)
and an error message:
Sign-of-life monitoring error
When the defaults in FB101 are left unchanged, the alarms begin at
DB2.DBX188.0 (1st alarm) and end at
DB2.DBX188.5. (6th alarm)
With variable:
DBX_Byte_alarm the byte value for the 6 alarms can be changed from the
default setting of 188. With variable:

Copyright © Siemens AG, 2005.


2/B3/2-54 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

DBX_Byte_report, the byte value of the operational message can be changed


from the default setting of 192.

Mixed mode The term:


“mixed mode” refers to a state in which a conventional OP without control unit
switchover function is connected to the first MMC interface on the NCU. The
control unit switchover then operates exclusively on the 2nd MMC interface.
Parameter “MMC_mixed_mode” (variable in FB101/DB101) can be set to switch
the operating mode from pure MMC operation to mixed mode.
To ensure that the control unit switchover function operates correctly in mixed
mode, the following settings relating to mixed mode must be made:
FB101/DB101 variable:
MMC_mixed_mode
The following assignments must be made for an FB101 call:
TRUE Mixed mode is active. Control unit switchover
operates on the 2nd interface
FALSE Mixed mode is not active. Control unit switchover operates
on both interfaces
Supplementary conditions:
– A machine control panel (MCP) must not be configured for the first online
interface. The first online interface is always assigned active mode
status in mixed operation.
– To allow the second online interface to be assigned active mode status,
it is possible to assign active mode status to both online interfaces in
mixed operation. However, certain supplementary conditions apply.

Warning
! When data are input from both control units simultaneously, there is a risk that
inconsistent data will be transferred to the control.

Server mode Once a server has occupied the online interface of an NCU, it cannot be
displaced (suppressed) by any other device.

Processing Three server-related program branches for handling MMC requests are
operating implemented in the control unit switchover program:
authorization for 1. Request for relinquishing operating focus
servers
2. Request for setting operating focus
3. Relinquish operating focus
Each branch checks/processes the first and second online interfaces.
The requests are positively acknowledged if no switchover disabling commands
are active. The “Relinquish operating focus” includes deactivation of the
relevant machine control panel.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-55
Several Operator Panel Fronts and NCUs (B3) 06.05
2.1 Several operator panel fronts and NCUs with control unit management option

See also Figures 6-10 to 6-12.

Wait times for To render the program independent of timers, two wait times based on repeated
acknowledgement reading of the system time are implemented via SFC64 in the control unit
signals switchover program. The wait times for acknowledgements can be changed if
necessary by means of:
FB101/DB101 variables:
waiting_period_1 Wait for activation/online MMC
waiting_period_2 Wait for deactivation/offline MMC
Wait for MMC sign of life
Values of between 0-32 (seconds) can be assigned to the FB101 variables.
These values are entered in ms.

Program If the control unit switchover program is to be called as a function in a


integration higher-level PLC program, then it must be ensured that FB101, FB102 and
FC103 and associated instance data blocks DB101, DB102 have not already
been used elsewhere.

Initialization When the NCU is restarted, all signals relating to control unit switchover on the
PLC interface in DB19 are set to zero.

Note
Before an NCU is initialized, it must be ensured that it is not currently linked
online to any MMC/HT6.
It may be necessary to perform an MMC restart.

Resetting of The interface signals relating to control unit switchover can be reset selectively
interface by PLC as follows (without RESET on the NCU):
FB101/DB101 variable:
initialization
TRUE Reset signals in DB19 once. After signal reset the Initialization
parameter is automatically reset to FALSE.

Sign of life Once an MMC/HT6 is connected online, it sends a sign of life in DB10 DBB108
monitoring (separately for both MMC/HT6s). If an MMC/HT6 in online mode does not send
a sign of life signal for longer than the time set in waiting_period_2, then the
PLC program generates message: “Sign-of-life monitoring error”. This message
is not canceled until one of the MMCs/HT6s is switched from offline to online
mode again.

Copyright © Siemens AG, 2005.


2/B3/2-56 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.1 Several operator panel fronts and NCUs with control unit management option

Identifier for In certain operating states, MMCs/HT6s must be able to detect whether the
MMC/HT6 “Control control unit switchover function exists. The “online request” interface signal in
unit switchover DB19.DBW110 m_to_n_alive is provided for this purpose. As soon as block
exists” FB101 is called in the PLC, it also sends a sign of life signal, consisting of the
cyclic incrementation of m_to_n_alive (ring counter).

Generation after After static parameters have been modified in FB101, DB101 must be:
adaptations – deleted,
– generated again,
– called and
stored.

Blocks and
functions used
Function blocks FB101, FB102
Instance data blocks DB101, DB102
Functions FC103
DB of interface DB19
Global data block for error DB2, (DB3)
messages
Timer auxiliary function SFC64

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-57
Several Operator Panel Fronts and NCUs (B3) 06.05
2.2 Several operator panel fronts and NCUs, standard functionality

2.2 Several operator panel fronts and NCUs, standard


functionality
The M:N system for all software versions without the Control Unit
Management option is described below. The different performance levels of SW
versions from 3.1 onwards are specified in connection with individual functions
and as an overview in Chapter 3.

Note
Section 2.2 does not apply to the HT6, since only one HT6 can be operated on
an NCU without control unit management.

2.2.1 Configurations

Configuration As it is possible to freely combine hardware components, it is necessary to


parameters inform the system which components are combined and in what manner. On the
HMI Advanced, this is done by means of an operator dialog in the Start-up area.
In the case of the HMI Embedded/OP030, the configuration parameters are
entered through the creation of a configuration file which is loaded for start-up.
The file must be structured as described below.

Copyright © Siemens AG, 2005.


2/B3/2-58 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.2 Several operator panel fronts and NCUs, standard functionality

I Identification of operator panel front to which the configuration


file applies.

II Description of connection between operator panel front


1 and NCU 1
Description of connection between operator panel front
2 and NCU 1
or

Description of connections between operator panel


front 1 and NCU1, NCU2, NCU3

III Description of bus between the following components

IV Description of component, operator panel front 1

Description of operator panel front 2 component if


configuration: 2 MMC, 1 NCU, (see Chapter 1)

V Description of NCU component

Description of further components of NCU2, 3, 4, if


configured as shown in Figs. 1-4 to 1-6.

Fig. 2-4 Structure of configuration file NETNAMES.INI

Examples For complete examples of configuration files, please refer to Chapter 6 of this
Description.

Syntactic The configuration file must be generated as an ASCII file. The syntax is the
declarations same as that used in Windows *.ini” files.
In the following tables, the components which the user may need to adapt or
which he can name freely are typed in italics. Alternative passwords are
specified separated by an |. Passwords must be typed in small letters.
Comments can be inserted in the parameter file. They must start with “;” and are
limited on the right by the end of line. Blanks may be used as separators at any
position except for in identifiers and passwords.

Number of A configuration file is required for each connected operator panel front.
configuration files The configuration files of different operator panel fronts included in one
configuration differ from one another only in the first entry which contains the
assignment of the file to a specific panel front ([own] see below). For practical
purposes, the core of the file is generated just once and then copied for the
other panel fronts. The identifier of the operator panel front to which the file
applies is then inserted in each copy.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-59
Several Operator Panel Fronts and NCUs (B3) 06.05
2.2 Several operator panel fronts and NCUs, standard functionality

I. Identification of operator panel front to which the configuration file applies.


Identification of
operator panel
Table 2-2 Identification of operator panel front
front
Descriptive entry Formal Example
Header [own] [own]
Next line owner = Identifier owner = MMC_2

Identifier A descriptive entry for an operator panel front must be


generated with the selected identifier according to IV.
Vocabulary words:
own Start descriptive entry
owner Owner

II. Description of connections from the operator panel front components to the
Connections NCU to be addressed. An entry of the following type is required for each
operator panel front.

Table 2-3 Description of connections OP – NCU

Descriptive entry Formal Example


Header [conn Identifier] [conn MMC_1]
Next line(s) conn_i = NCU_ID conn_1= NCU_1

Identifier A descriptive entry for an operator panel front must be


generated with the selected identifier according to IV.
NCU_ID A descriptive entry for the NCU must be generated with the
selected NCU identifier according to V.
Vocabulary words:
conn Start connection entry
conn_i Password for connection (in SW 3.1 only),
otherwise i = 1, 2, ..., 8.

III. The hardware allows links to be implemented via different buses which are
Description of bus differentiated mainly by their baud rates. The bus type used must be specified.

Table 2-4 Description of bus

Descriptive entry Formal Example


Header [param network] [param network]
Next line bus = opi | mpi bus= opi

Vocabulary words:
param network Start network descriptive entry
bus Bus
btss Operator panel front interface, 1.5 Mbaud
mpi Multi Point interface, 187.5 Kbaud

Copyright © Siemens AG, 2005.


2/B3/2-60 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.2 Several operator panel fronts and NCUs, standard functionality

Note
The baud rate is automatically detected on the HMI Embedded.

IV. A separate entry must be generated for every individual panel front component
Description of connected to the bus. A maximum of two entries in SW 3.x.
operator panel
front Table 2-5 Description of operator panel front component
component(s)
Descriptive entry Formal Example
Header [param Identifier] [param MMC_1]
Next lines (optional) name= any_name name = MMC_A
(optional) type= mmc_100 | mmc_102 type = mmc_100
| op_030
mmc_address = j mmc_address = 1

Identifier Entry for first or second operator component.


bel_name Arbitrary name of max. 32 characters
mmc_100 | Type of operator component
mmc_102 |
op_030
j Address of operator components on the bus: j = 1, 2, ... 15
SW 4.x and higher:= 1, 2, ... 31
Vocabulary words:
param Start parameters for an (MMC) component
name Arbitrary name of operator component to be described
type Type of operator component
mmc_address Bus address of operator component

V. A separate entry must be generated for every single NCU component


Description of connected to the bus.
NCU Table 2-6 Description of NCU component
component(s)
Descriptive entry Formal Example
Header [param NCU_ID] [param NCU_1]
Next lines (optional) name= any_name name = NCU1
(optional) type= ncu_570 | ncu_571 | type= ncu_572
ncu_572 | ncu_573
*) nck_address = j nck_address = 13
*) plc_address = p plc_address = 13

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-61
Several Operator Panel Fronts and NCUs (B3) 06.05
2.2 Several operator panel fronts and NCUs, standard functionality

NCU_ID Entry for NCU component. One for SW version 3.1


bel_name Any name of max. 32 characters; with HMI Advanced
the name entered here (e.g. NCU1) is
output in the alarm line
ncu_570| NCU type, (ncu_570 not applicable to configuration 1 MMC,
3 NCUs)
ncu_571 | ncu_572 | ncu_573
j Address of NCU component on the bus: j = 1, 2, ... 15
SW 4.x and higher: = 1, 2, ... 31 *)
p Address of PLC component on the bus: p = 1, 2, ... 15
SW 4.x and higher: = 1, 2, ... 31 *)
When bus = btss, j and p must be set identically.
*) The following applies when bus = mpi:
As the associated NCU is always assigned the next-higher
address than the PLC, the PLC address must not be 31.
Address 31 can, for example, be assigned to an MMC.
Vocabulary words:
param Start parameters for an (NCU) component
name Arbitrary name of operator component to be described
type Type of operator component
nck_address Bus address of NCU
plc_address Bus address of PLC.

Note
If the bus node addresses on the MPI bus are configured in conformance with
SIMATIC, the configuring engineer can read out the assigned addresses using
a SIMATIC programming device and use them to create the NETNAMES.INI
file.

Defaults The following defaults are applied if no NETNAMES.INI configuring file has
been copied into the HMI Embedded/OP030 or if the file cannot be interpreted:
– The bus type used is automatically determined.
– MMC has address 1.
– OP030 has address 10.
– NCU and PLC both have address 13 for an OPI bus.
– For an MPI bus, the NCU has address 13 (SW 3.5 and later: 3) and the
PLC address 2.
If the network configuration actually corresponds to these default settings, then
it is not necessary to explicitly generate and load a NETNAMES.INI file. If,
however, a special file is generated, then it must correspond exactly to the
actual network on account of the special features described below.

Compatibility The use of the above defaults establishes compatibility with earlier software
versions for operation of the panel front.

Copyright © Siemens AG, 2005.


2/B3/2-62 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
11.02
06.05 Several Operator Panel Fronts and NCUs (B3)
2.2 Several operator panel fronts and NCUs, standard functionality

2.2.2 Switchover of connection to another NCU (SW 3.2 to 3.x)

User interface The data area menu has been extended by the soft key “Connections”. This
goes to a submenu in which the connections (conn_1, ... conn_n) declared in
NETNAMES.INI are displayed for selection via individual soft keys. The name
(name=...) allocated to the connection in NETNAMES.INI is displayed on the
soft keys. A connection to the new NCU is established by actuating the
corresponding soft key.
In detail, the behavior depends on the type of MMC.

Changeover ONLINE change to another bus node is not possible on the OP030. The
behavior on OP030 NETNAMES.INI file contains a permanently configured connection.

HMI Embedded The soft key “Connections” is only displayed if more than one connection is
changeover implemented in NETNAMES.INI. When changing to the new NCU, the existing
behavior connection to another NCU is interrupted. MMC applications, at the instant of
link changeover, must no longer need the link to the previous NCU (e.g. for
active data backup via RS-232 interface). If this rule is contravened, the control
system outputs a corresponding message.
Concerning the NCU to which the changeover takes place, the MMC behaves
as with a restart. In this case, it is in the operating area set as the “start
operating area”.

HMI Advanced The “Connections” softkey is only displayed if the M:N function is activated on
changeover the control. The “M:N” function is activated in the “Start-up/MMC/Operator panel
behavior front” menu. All communications connections remain established with any
changeover and the applications which have used these connections remain
active. Concerning the new NCU, the MMC is after the changeover in the same
operating range as before with another NCU.

Possible defects With change of the connection to another NCU, it is possible that the NCU with
which the connection is to be established rejects this. There may be a defect in
the NCU or no other MMC unit can be operated at that time from the NCU any
more.
MD 10134: MM_NUM_MMC_UNITS (number of possible simultaneous MMC
communications partners) contains the setting which defines how many MMCs
can be processed by an NCU at one time. The OP030 uses one unit, the HMI
Embedded and HMI Advanced, as supplied, each use two units. More units (up
to 12) are required for larger OEM packages.

Alarms/messages HMI Embedded, OP030


Only the alarms of the NCU with which a link is currently active can be output.
Acceptance of configuration acc. configuration diagram in Chapter 1,
subsection “Configurability”.
HMI Advanced
The alarms and messages of all connected NCUs can be processed
simultaneously.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-63
Several Operator Panel Fronts and NCUs (B3) 06.05
2.2 Several operator panel fronts and NCUs, standard functionality

Alarm text HMI Embedded, OP030


management Only one version of the alarm texts can be stored on the operator component.
The standard alarm texts are stored once in the same formulation for all NCUs.
The possible alarms for all connected NCUs must be stored in the one possible
area for user alarms.
HMI Advanced
It is not possible to set up user alarm texts that apply specifically to the NCU
(MMC only manages one alarm text file, SW 3.4 HMI Advanced).

Link check HMI Embedded, HMI Advanced


The address of a connected NCU (on OPI bus only) can be altered in the
“Connections/Service” menu.
The new NCU address is stored on the NCU.
The soft key labeled “Service” is only displayed if the password for “Protection
level service” has been entered.
When the function is started up, a direct connection between the MMC and the
relevant NCU must be established before the address is altered to ensure that
the address is not programmed more than once on the bus.
(See paragraph “Power-up” below for instructions on modifying the address.)

Note
With replacement of the NCU (service case) or with failure of the backup
battery, the address is no longer stored.
A general reset on the NCU does not delete the NCU address. The address
can only be changed via an MMC.
To ensure that the current connection is shown in the basic display, the channel
name must be assigned unambiguously in MD 20000: CHAN_NAME (channel
name).

2.2.3 Switchover of connection to another NCU (SW 4 and higher)

Note
The channel menu function is an option and must be configured in the
“NETNAMES.INI” file.

You can change to the channel menu in all operating areas by activating the
channel switchover key. In this case, only the horizontal and vertical softkeys
change.
The horizontal softkeys are for selecting a channel group (max. 24), up to 8
connections to channels in different NCUs can be set up in one channel group.
The “Channel menu” screen displays all current communication connections
and the associated symbol names.

Copyright © Siemens AG, 2005.


2/B3/2-64 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.2 Several operator panel fronts and NCUs, standard functionality

2.2.4 Creating and using the configuration file

HMI Embedded, The NETNAMES.INI ASCII file generated on the PC or programming device is
OP030 loaded, as described in

References: /IK/, Installation Kit

via the RS-232 interface and permanently stored in the FLASH memory of the
control units.

HMI Advanced The NETNAMES.INI file can be processed directly with an editor (in menu
“Start-up/MMC/Editor” or DOS_SHELL) on the hard disk of the operator
component. The NETNAMES.INI file is stored in the installation directory:
C:\MMC2
SW 4 and higher C:\USER\NETNAMES.INI.

2.2.5 Power-up

Differences Owing to the differences in operating and power-up characteristics, different


between start-up procedures are required.
HMI Embedded – HMI Embedded always runs in “M:N” mode, when “M:N” is configured in
and HMI Advanced the NETNAMES.INI file.
– The mode can be set in the “Start-up/MMC/Operator panel front” menu
on the HMI Advanced. The HMI Advanced always runs in a “1 : 1” link
with an NCU, the NCU address can be specified directly. If the “M:N”
mode is set on the HMI Advanced, then the MMC searches the
NETNAMES.INI file for the names of the partners specified for this
function. The addresses are freely assignable.
Recommendation: Keep address 0 free (for PG )
Keep address 13 free (for servicing: NCU
replacement)
– The OP030 is not functionally capable of “M:N”. It can be used as a
second operator panel front that is permanently assigned to an NCU
(“1 : 1” link). The addresses of the connected partners can be set for this
purpose.

Note
It is advisable to make a written record of the procedure (address assignments,
etc.) beforehand.

Installation and The NCUs are assigned bus address 13 in the delivery state. Every NCU on the
startup bus must be allocated its own, unique bus address.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-65
Several Operator Panel Fronts and NCUs (B3) 06.05
2.2 Several operator panel fronts and NCUs, standard functionality

Addresses are assigned in:


– MMC: NETNAMES.INI file
– NCK: “Start-up/NC/NCK address” menu
– MCP: Switch... (address and possibly baud rate, see also /IBN/)
OB100 parameters: ...(see also FB1/P3).

Note
An NCK address is not deleted with “Delete SRAM” (switch S3= position “1” on
NCU).

Power-up with The power-up process is the same as described in Subsection 2.1.6 for the HMI
HMI Embedded Embedded.

Power-up with The power-up process is the same as described in Subsection 2.1.6 for the HMI
HMI Advanced Advanced.

2.2.6 NCU replacement

In the case of NCU replacement or an additional NCU, the procedure is


analogous to start-up (see 2.2.5).
Variant 1
1. Establish 1:1 connection between MMC and NCU
2. Power-up MMC on NCU with bus address “13” (see above)
3. Enter new NC address via the Start-up/NC/NC address operating area and
boot NCU.
4. Wire bus again for M:N operation
Variant 2
1. The NCU, which is the “power-up NCU” for an MMC connected to the bus, is
disabled. (The MMC powers up at the first connection configured in the
NETNAMES.INI file)
2. Power-up MMC on NCU with bus address 13 (see above)
3. Enter new NC address via the Start-up/NC/NC address operating area and
boot NCU.
4. Activating “Power-up NCU” again

Note
– Bus address 13 must be reserved for servicing purposes
(i.e. must not be assigned to a bus node).
– HMI Embedded:
The name length in file NETNAMES.INI (configuring in channel menu)
is limited to 5 characters.
– HMI Advanced:
The data “mst_address” is not evaluated, but used for
the purpose of bus node documentation.
If the channels are on different NCUs, “m:n” must be set in the operating
area Start-up/MMC/Operator panel front.

Copyright © Siemens AG, 2005.


2/B3/2-66 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.2 Several operator panel fronts and NCUs, standard functionality

Data exchange In configurations consisting of 1 x MMC and n x NCU, it is often necessary to


between synchronize the NCs.
NC<–>PLC The following synchronization options are available:
– NCK I/Os on drive bus (digital, analog, writing of NC and PLC).
– Normal PLC I/Os (I/O link).
– Link via PROFIBUS-DP (PLC-CPU315 required).
– Link via the global data function of SIMATIC S7 (PLC-CPU315 required).
This option is also available on the PLC-CPU 314 with SW 3.5 and
higher.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-67
Several Operator Panel Fronts and NCUs (B3) 06.05
2.3 Restrictions in relation to equipment

2.3 Restrictions in relation to equipment

Rejection of link On switchover to another NCU, the NCU selected for the new link may reject
the connection. The cause may be a defect in the NCU or no additional MMC
unit can be accepted. In this case, the HMI Embedded automatically switches
over to connection 1 after approx. five seconds. HMI Advanced displays “#” for
the variables.

Alarms, messages Handling of alarms/messages is dependent on the MMC type:


1. HMI Embedded / OP 030
Due to the equipment restrictions on driver level and the limited working
memory, alarms/messages of only one NCU can be processed
simultaneously.
2. HMI Advanced
The MMC manages only one alarm text file. The NCU name assigned in the
NETNAMES.INI file is displayed as the NCU identifier in front of every alarm
or message. To obtain user texts specific to the NCU, it is possible to define
user areas in the PLC for certain NCUs. The alarms/messages of all
connected components can be processed and displayed simultaneously.

Operator interface Handling of alarms/messages is dependent on the MMC type:


1. HMI Embedded
Only fields and variables of one NCU can be displayed simultaneously in a
window. Alarms and messages are displayed only by the NCU that is
currently linked to the MMC.
Up to four connections (one active connection (alarms, messages), three
other connections) can be displayed simultaneously via user configuration
(OEM), whereby all variables of a connection must be contained in one
window (window-specific connections).
2. HMI Advanced
Generally, fields and variables of different NCUs can be displayed in the
same window (as OEM application).
Alarms and messages can be displayed on all NCUs (to which the MMC has
a connection).
3. OP030
OP030 can only be configured as a “1 : 1” connection to an NCU.
When the HMI Embedded and HMI Advanced are used in the standard
configuration (Chapter 1, subsection “Configurability”), it is not necessary to
configure the operator interface. If variables of different NCUs must be output
simultaneously in a display, configuration is necessary.
References: /PK/, SINUMERIK HMI Embedded/UOP Configuration kit
With HMI Embedded, all variables of a window must come from one NCU. With
HMI Advanced, a suitable mixing of the variables of different NCUs is
permissible.

Copyright © Siemens AG, 2005.


2/B3/2-68 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.4 NCU link

2.4 NCU link


2.4.1 Introduction

Owing to the limitation on the memory and computing capacity elements, the
number of channels or axes per NCU is restricted. A single NCU is not sufficient
to fulfill the requirements made by complex and distributed machines, such as
multi-spindle and rotary indexing machines. For this reason, the control system
and closed-loop axis controls are distributed among several NCUs.
In order to ensure, however, that channels and axes can continue to operate on
an interrelated, cross-NCU basis, the system provides so-called

S NCU link functionality.


This includes:

Functional The following applications are possible in SW 5 and higher:


expansions
S Cross-NCU interpolation (coupling of setpoints, actual values and VDI
signals)

S Real exchange of axes


S Cross-NCU access to axis values and axial system variables
S NCU-user communication supported by NCU link variables
S Generation of alarms on the NCU affected by an irregularity, even if the
cause of the problem is on another NCU.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-69
Several Operator Panel Fronts and NCUs (B3) 06.05
2.4 NCU link

2.4.2 Technological description


Link Link
submodule submodule
Link communication

Initial position,
NCU1 status after each machining step NCU2

611D
ËËËËËËËËËËËËËËËËËËËËËËË 611D

ËËËËËËËËËËËËËËËËËËËËËËË
MTR MS2

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
X

ËËËËËËËËËËËËËËËËËËËËËËË
MS1 Z

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
X

ËËËËËËËËËËËËËËËËËËËËËËË
Z

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
Drum/rotary table Position/station 2

LinkËËËËËËËËËËËËËËËËËËËËËËË
submodule
Position/station 1
Link
submodule
Link communication

MS2
NCU1 NCU2

611D
ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
MTR
611D

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
MS1

ËËËËËËËËËËËËËËËËËËËËËËË
X

ËËËËËËËËËËËËËËËËËËËËËËË
Z

ËËËËËËËËËËËËËËËËËËËËËËË
X

ËËËËËËËËËËËËËËËËËËËËËËË
ËËËËËËËËËËËËËËËËËËËËËËË
Z

ËËËËËËËËËËËËËËËËËËËËËËË
Drum/rotary table Position/station 2

ËËËËËËËËËËËËËËËËËËËËËËË
Position/station 1

Rotation of drum/rotary table (MTR machine axis) by one position,


status prior to each machining step

Fig. 2-5 Sectional diagram of a drum changeover

Copyright © Siemens AG, 2005.


2/B3/2-70 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.4 NCU link

Fig. 2-5 shows the main components of a simple multi-spindle plant. Several
spindles are mounted mechanically on the drum, each of which can used to
perform a different machining operation. Together with the slide (X and Z axes),
they form a machining station which is assigned to one channel. A workpiece is
rotated by one spindle.
The workpiece to be machined is loaded and unloaded only once. The tool is
mounted on the slide (e.g. X, Z axes). Various different tools can be loaded for
each machining operation.
The tool is continuously assigned to the machining station. The
workpiece-holding spindles are moved from one machining station to the next.
The spindle can only be checked for the current machining process. The
channel must be able to address the slide axes and the current spindle at any
given time. Every time a spindle moves on to the next machining unit, however,
the spindle addressed by the channel must be a different machine axis. The
“axis container” concept solves the variable imaging of channel axes on
machine axes. The machine axes might belong to another NCU connected by
means of the NCU link. An accessible machine axis belonging to another NCU
is referred to as a link axis (see 2.5).
The following subjects are closely related to the NCU link function and dealt with
in separate subsections.

S Link axes
S Axis container
S User communication across the NCUs
S Configuration of the link grouping

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-71
Several Operator Panel Fronts and NCUs (B3) 06.05
2.5 Link axes

2.5 Link axes

Note
NCU link is available in conjunction with HMI Advanced.
The corresponding option is required to be able to define the number of
available link axes.

Introduction This subsection describes how an axis (for example, B1 in Fig. 2-6), which is
physically connected to the drive control system of NCU2, can be addressed
not only by NCU2, but also by NCU1.

Prerequisites
S The participating NCUs, NCU1 and NCU2, must be connected by means of
high-speed communication via the link module.
References: /PHD/, Configuring Manual NCU 571-573.2, Link Module

S The axis must be configured appropriately by machine data.


S The link axis option must be installed.
S Link communication must be activated with MD 18780:
$MN_MM_NCU_LINK_MASK. The link grouping must be configured as
described in 2.5.1.

NCU 1 611D 1 NCU 2 611D 2


A1 B1
Channel 1
Axes: Channel 1
B1, A1, A2
A2
B2

Channel 2
.
.
.
Ai B3

Link module (HW) Link module (HW)


Link communication

Fig. 2-6 Overview of link axes

Copyright © Siemens AG, 2005.


2/B3/2-72 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.5 Link axes

Terms The following terms are important for understanding the subsequent description:

S Link axis
Link axes are axes that are physically connected to another NCU and
controlled by their servo loop. Link axes can be assigned dynamically to
channels of another NCU. From the standpoint of a particular NCU, they are
not → local axes. Dynamic changes in the assignment to a channel
(exception: channel on another NCU) are implemented according to the 2.6
Axis container concept described above.
Axis exchange with GET and RELEASE from the parts program is only
available for link axes within an NCU. In order to cross the NCU limit, the
axis must first be placed in the NCU or a channel using the axis container
function so that it can then be exchanged optionally in the same way as any
other axis.
S Local axis
A local axis is only addressed by the NCU to whose drive bus it is
connected.
S Link communication
The link communication is implemented by link modules on the NCUs
involved. The link communication consists of setpoints, actual values, alarm
handling, global variables (data) and signals (axis signals, PLC signals).
S Home NCU
The NCU which establishes the drive bus connection for a → link axis and
implements the position control is called the home NCU of the link axis.
In Fig. 2-6 NCU2 is the home NCU for → link axis B1.
S Interpolation
The Link axis option enables for NCUs with → Link communication
interpolation between → local axes and axes on other NCUs.
If the interpolation is not only local, cyclical data exchange (setpoints, actual
values, ...) takes place within an interpolation cycle. In particular, this causes
dead time when waiting for external events.
S Axis change
Use of a → link axis by a specific NCU can change dynamically. An axis
container mechanism is provided for this purpose as described in 2.6. The
parts program command GET is not available for link axes; the parts
program command GETD is only available within an NCU.
Up to SW 4, it was only possible to exchange axes between different
channels of an NCU.
S Configuration of link axes
NCUs that want to use the → link axes must configure the NCU identifiers
for the home NCU of the link axis in addition to the usual channel and axis
machine data.
S Home channel
Channel in which the setpoint-generating parts program for the axis is
executed after the installation has powered up.
S Lead link axis from SW 6
From the point of view of NCU (2) that traverses following axes, a
leading axis that is traversed by another NCU (1). The required data for the
master value axis are supplied via → link communication for NCU (2). Axis
linking between the leading axis and the following axis/axes is implemented,
for example, by means of a curve table.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-73
Several Operator Panel Fronts and NCUs (B3) 06.05
2.5 Link axes

Note
Link axes expand the limit set by the number of possible connections on the
drive bus: With a maximum of 16 NCUs on the NCU link there are theoretical
limits of max. 160 channels and 4960 axes/spindles. The following maximum
values apply for one NCU: 31 simultaneous axes from 31 local and 32 link
axes.

2.5.1 Configuration of link axes


SW 4 Up to SW 4, channel axes are directly mapped on the machine axes of the
same NCU via MD 20070: AXCONF_MACHAX_USED (see Fig. 2-7 left).

SW 5 From SW 5, the channels operate with one of 31 logical axes from the logical
machine axis image. This image points to:
– local axes
– link axes
– container slots.
Container slots in turn point to:
– local axes or
– link axes.
The following diagram illustrates the interrelationships:

Copyright © Siemens AG, 2005.


2/B3/2-74 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.5 Link axes

SW4 SW5
AXCONF_MACHAX_USED AXCONF_MACHAX_USED
Channel 1 Channel 10 Channel 1 Channel 10

... ...

NCU NCU1

AXCONF_LOGIC_MACHAX_TAB
simultaneously addressable axes
on one NCU
1 2 3 ... 31

NC2_AX4
CT1_SL1

CT1_SL2
AX2

AX1 AX2 AX31


AX1 AX2 AX3 AX31
...
...

Local axes Container1 ... Container16


Local axes
NC1_AX1

Axis can be used for all NCUs NC2_AX7 NC3_AX6


that are also using Container 1. NC4_ ...
Axis containers are global for all
NCUs with link module.

1 max.32
Link axis Container link axes
A maximum of 32 link axes can be entered for each axis container.
From the local axes and link axes programmed in
AXCONF_LOGIC_MACHAX_TAB and in containers, NCU1 can address 31 axes
from a maximum of 63 (31 local and 32 link axes) at any one time.

Fig. 2-7 A schematic comparison of the SW4 and SW5 configuration

With link axes To enable link axes to be addressed throughout the system, the configuration
must contain information about the axis NCUs. There are two types of NCU
axis, i.e. local axes and link axes.

Differentiation The table that must be created by means of MD 10002:


local/link axes AXCONF_LOGIC_MACHAX_TAB
differentiates between local and link axes. See Fig. 2-7 center right and Fig. 2-8.

Note
The axis container functions are described in Section 2.6.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-75
Several Operator Panel Fronts and NCUs (B3) 06.05
2.5 Link axes

Logical machine axis image


MD 10002: AXCONF_LOGIC_MACHAX_TAB,
1 2 3 ... 31

NC2_AX4
CT1_SL1

CT1_SL2
A

AX2
AX1 AX2 AX31

B ...

Container1 Container2 ... 16


NC1_AX1

NC2_AX7 NC3_AX6

NC4_ ...

C C
Link axis Container link axes

Fig. 2-8 Assignment of channel axes to local machine axes and link axes

Explanation The logical machine axis image A addresses local machine axes B and link
axes C.
The number of local machine axes in B is limited. The maximum permissible
number for a specific system can be found in Catalog NC60.1.
All axes that can address the NCU are contained in B and C together.

Entries in A have the following format:


$MN_AXCONF_LOGIC_MACHAX_TAB[n] = NCj_AXi
where
n index in Table A
NC stands for NCU with
j NCU number, 1 <= j <= 16
i axis number, 1 <= i <= 31
Channel axes are no longer directly assigned to machine axes in MD 20070:
AXCONF_MACHAX_USED as they were in SW version 4 and earlier, but are
now assigned to logical machine axis image A.
Viewed from the parts program, the only accessible machine axes are those
which can be addressed by the channel (possibly via axis container, see below)
via the logical machine axis image at a given point in time.

Copyright © Siemens AG, 2005.


2/B3/2-76 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.5 Link axes

Default By default, the settings of logical machine axis image A are


local axis name AX1 for entry 1, and
local axis name AX2 for entry 2,
...
With these, MD blocks that were generated for SW lower than 4 can still be
used with SW 5, if only local axes are addressed.

Examples For example, the logical machine image can contain the following expressions:
NC2_AX7 Machine axis 7 of NCU 2
AX2 Local machine axis 2

If only expressions of the latter format AXi are entered in the logical machine
axis image, this corresponds to a configuration up to Software Version 4, where
only local axes are addressed.
Caution: The default settings are as follows:
MD 10002: AXCONF_LOGIC_MACHAX_TAB[0] = AX1
MD 10002: AXCONF_LOGIC_MACHAX_TAB[1] = AX2
...

Note
Another valid format for entries in the logical machine axis image A is:
MD 10002: AXCONF_LOGIC_MACHAX_TAB[n] = CTx_SLy where
CT stands for container
x container number, 1 <= x <= 16
SL stands for Slot
y slot number, 1 <= y <= 32
Axis containers represent a grouping of axes which can be altered
dynamically. Axis containers are described in Section 2.6.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-77
Several Operator Panel Fronts and NCUs (B3) 06.05
2.5 Link axes

2.5.2 Axis data and signals

Introduction Axis data and signals for a link axis are produced on its home NCU. The NCU
that has caused the movement of a link axis is provided with axis data and
signals from the system:

Channel x on NCU1 Channel y on NCU2

Logical view for the


part programs

Interpolation Interpolation

Servo: Physical
AX1 AX2 AX3 AX1 AX2 AX3 axis view
... ...

Fig. 2-9 Views of axes

Implicitly active During interpolation, data are made available for axes which are physically
link subordinate to a non-local servo (identifiable from entries in
communication MD10002: AXCONF_LOGIC_MACHAX_TAB or axis container) via the link
communication in the same manner as they are provided for local axes from the
logical viewpoint of parts programs. The procedure remains concealed from the
applications.

Activating NCU for link


axis B1 on NCU 2 611D

NCU 1 NCU 2 B1

Link com-
Interface signals munication Interface signals
to other NCUs to active NCU
Setpoints Actual values
for B1 from B1 Buffer
Interrupts Interrupts

Fig. 2-10 Exchange of operating data and signals of a link axis

Copyright © Siemens AG, 2005.


2/B3/2-78 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.5 Link axes

Position control The servo loop is implemented on the NCU on which the axis is physically
connected to the drive. This NCU also contains the associated axis interface.
The position setpoints for link axes are generated on the active NCU and
transferred via the NCU link.

Communication There are two types of link communication:


methods
S Cyclic communication
S Non-cyclical communication

Cyclical – Setpoint for the link axis,


communication – Actual values from the link axis
– Status signals of the link axis
– Status signals of the NCUs
are transmitted cyclically. Actual values and status signals of a link axis are
updated and made available to the NCU that is interpolating this axis.

Non-cyclical – Exchange of link variables


communication – Warm start requirements
– Activation of axis container rotation
– Modifications to NCU-global machine and setting data.
– Activation of axial machine data for link axes
– Alarms

Transfer time Delays incurred for transferring setpoints to the home NCU of a link axis and
returning its actual values. With an interpolation group of local axes and link
axes, the control delays the setpoints for the local axes of the interpolating NCU
by one interpolation cycle, such that consistent values are taken into account
for the interpolation.
If a channel needs the actual values of an axis of another NCU, e.g. a spindle
with thread cutting, two interpolation cycles will lapse before they are available.
The setpoints then generated are sent one interpolation cycle later to the
position control for the above reason.

Response of the If the server cannot supply any values for an axis (e.g. because the axis
AXIS-VAR server concerned is a link axis), then it returns a default value (generally 0).
to errors
For the purpose of testing, machine data 11398:
AXIS_VAR_SERVER_SENSITIVE can be used to set the axis data server
sensitively so that it returns an error message rather than default values.
0: Default value
1: Error message

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-79
Several Operator Panel Fronts and NCUs (B3) 05.05
06.05
2.5 Link axes

2.5.3 Output of predefined auxiliary functions for NCU link

Predefined M, S, F For link axes and container link axes, a predefined M, S, and F auxiliary
auxiliary functions function is transferred from the NCK via the NCU link to the home NCU of the
link axes and output from there as system auxiliary functions on the PLC. These
system auxiliary functions are evaluated by the PLC and output as follows:
DB31, ... DBW86 (M function (INT) for spindle)
DB31, ... DBD88 (S function (REAL) for spindle)
DB31, ... DBD78 (F function (REAL) for axis)

Note
The transfer of the NCU link to the home NCU is only relevant for the M3, M4,
M5, M19 and M70 predefined spindle auxiliary functions.
For further information on “Predefined auxiliary functions”, see
References /FB1/, H2 Auxiliary functions on PLC

Alarm 14768 If the system auxiliary functions received via the NCU link cannot be output via
the VDI interface, because, for example, the transfer buffer is full, alarm 14768
“Cannot output axial auxiliary functions received via NCU link” is issued.

Examples An NC program with M3 S1000 is executed for the 7th channel on NCU_2. This
spindle corresponds to the 5th machine axis of NCU_1 and is therefore link
axis. Therefore the auxiliary function output here for NCU_2 is in Channel 7 with
the axis number 0, as the link axis is on another NCU (NCU_1 here). On the
PLC of NCU_2, this results in the output of:
DB21, ... DBW68 (extended address of the M function (16-bit INT))
DB21, ... DBD70 (M function 1 (INT 3))
DB21, ... DBW98 (extended address of S function 1)
DB21, ... DBD100 (S function 1 (REAL 100))
In parallel, the information of the system auxiliary functions is transferred from
NCU_2 via the NCU link to NCU_1 (home NCU of the link axis). The system
auxiliary functions M3 S1000 for the 5th machine axis are output from here.
The PLC on NCU_1 then supplies the following axial signals on the PLC user
interface for machine axis 5:
DB35, ... DBW86 (M function (INT 3) for spindle)
DB35, ... DBD88 (S function (REAL 100) for spindle).

Copyright © Siemens AG, 2005.


2/B3/2-80 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.5 Link axes

2.5.4 Supplementary conditions for link axes

Output of alarms Axis alarms are always output on the NCU which is producing the interpolation
from position value. If an alarm is generated for a link axis by the position controller, then the
controller or drive alarm is transferred to the NCU which is currently processing the interpolation.
On the assumption that axis alarms which cause the NCK-Ready relay to drop
out (Nck-NoReady) are attributable to faults on the drive bus, the alarm is also
output on the NCU to which the axis or the drive bus is physically connected.
The reaction “Ready relay dropout” is only activated on this NCU.
Output of alarms If an EMERGENCY STOP request is activated by the PLC on an NCU, then all
following axes physically connected to drives on this NCU are switched to follow-up
EMERGENCY mode. This means that even axes which are being interpolated by a different
STOP NCU are also switched to follow-up. Since this status prevents any further
constructive machining operations on the other NCUs, an additional alarm is
generated which is designed to stop all axis motions instantaneously.
This additional alarm must be acknowledged by an operator panel reset. If the
original (EMERGENCY STOP) alarm is still active at this time, then the
additional alarm can be successfully reset, but another alarm (self-clearing) is
then produced which prevents axis motion or a new program start until the
original alarm has been acknowledged.
Output of alarms If a serious alarm resulting in dropout of the NCK-Ready relay is activated on an
with alarm reaction NCU, then the effects of the alarm will apply to all other NCUs which are
NCK-NoReady addressing an axis via link communication on the first NCU. An additional alarm
which causes all other axes to stop instantaneously is activated on each of the
other NCUs.
For alarm acknowledgement, see EMERGENCY STOP.

Compensation The compensation functions:


– CEC
– EEC
– QEC
are not available for link axes.

Switching off If an NCU assigned to an NCU grouping is switched off or restarted by NCK
grouped NCUs RESET, then the other NCUs in the grouping are also affected (see also 2.8).
An alarm is generated on the NCUs which are still running to prevent them
continuing with the machining operation.

Powering up an If one NCU in the grouping is restarted, e.g. due to changes to machine data,
NCU grouping then the other NCUs in the grouping also execute a warm restart.

Nibbling and To execute nibbling and punching operations, high-speed inputs and outputs
punching must be connected and parameterized on the “interpolation” NCU (on which the
parts program is being executed). Commands “High-speed nibbling and
punching”, e.g. PONS and SONS are not available for link axes.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-81
Several Operator Panel Fronts and NCUs (B3) 06.05
2.5 Link axes

Travel to fixed stop If an axis container axis is being held against a fixed stop, the axis container
cannot rotate. Axes can travel to fixed stops on different NCUs and be
subsequently clamped without restriction.

Frames Link axes may be included in the program commands for frames only if they are
geometry axes as well. The command only changes the geometry for the
channel in which the axis is currently assigned. A frame command for an axis
which is not defined as a geometry axis is rejected with alarm 14092.

Revolutional Although setting data 43300: ASSIGN_FEED_PER_REV_SOURCE referred


feedrate directly to a machine axis in SW 4 and earlier, the MD refers in SW 5 and higher
to the logical machine image and, via this, to a machine axis (local or link axis).

2.5.5 Programming with channel and machine axis identifiers

Channel axis Example:


identifiers WHENEVER $AA_IW[Z] < 10 DO ... ;Current position of Z axis

Machine axis Example:


identifiers WHENEVER $AA_IW[AX3] < 10 DO ... ;Scan current position of
machine axis AX3
This method of programming is permitted only if machine axis AX3 is known in
the channel at the time of scanning.

Note
In SW 5.2 and higher, system variables which can be used in conjunction with
channel axis identifiers are specially marked in the Advanced Programming
Guide (Appendix).

2.5.6 Flexible configuration

Introduction Rotary indexing machines and multi-spindle machines have special


requirements as regards the flexible assignment of channel axes to machine
axes.

Requirement When advancing the table of the rotary indexing machine or the drum of the
profile multi-spindle machines the axes/spindles are brought to a new station or
position. The NCU which controls the axes of a station as local axes must be
able to address the newly changed axes/spindles. The hitherto addressable
axes/spindles can now be discarded for this purpose.

Copyright © Siemens AG, 2005.


2/B3/2-82 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.5 Link axes

Solution A configuration of the relevant axes in an axis container specified in machine


data enables different machine axes to be located in succession behind a
channel axis that remains constant. Advancing the rotary table or drum is
performed synchronously with the advancing of the axes entered in the axis
container.
Axes in an axis container can also be configured as geometry axes.

Note
The axis container has no mode group reference, i.e. the workpiece-holding,
traveling axis can change from one mode group to another at different
machining stations.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-83
Several Operator Panel Fronts and NCUs (B3) 06.05
2.6 Axis container

2.6 Axis container

Definition An axis container can be imagined as a circular buffer in which

S local axes and/or


S link axes
are assigned to channels. Axes in an axis container are also referred to as
container axes. Assignments can be “shifted” (“rotation” of the circular buffer)
by means of program commands. The term axis in this case refers to both axes
and spindles. All machine axes in the axis container must be assigned to
exactly one channel axis at any given point in time.

Note
Rotation of the drum or rotary table is analogous to the rotation of the circular
buffer with the assigned axis entries.

Description The link axis configuration described in Subsection 2.5.1 allows reference to be
made to axis containers in the logical machine axis image, in addition to direct
reference to local axes or link axes. This type of reference consists of:
S a container number and
S a slot (circular buffer location within the container)
The entry in a circular buffer location contains:
S a local axis or
S a link axis
(either axis or spindle)

Axis container Axis container names can be freely defined with machine data
names in SW 5.2 MD 12750 : AXCT_NAME_TAB
and higher in SW 5.2 and higher. The names assigned can then be used:
S in axis container rotation commands AXCTSWE( ) and AXCTSWED( ) to
address the container to be rotated and
S when scanning the states of axis containers using system variables:
– $AC_AXCTSWA[ ]
– $AN_AXCTSWA[ ]
– $AN_AXCTAS[ ]

SW 5.1 parameter In this software version, channel axis identifiers, which refer to the container
CTi to be rotated via the logical machine axis image, must be used instead of axis
container identifiers.

Definition of Machine data MD 12701 ... 12716: $MN_AXCT_AXCONF_ASSIGN_TAB1 ...n


container contents defines the default assignment between an axis container slot and a machine
axis within an NCU grouping for axis container 1...n. The assignment between
an axis container slot and the selected channel is programmed in MD 20070:
$MC_AXCONF_MACHAX_USED and MD 10002:
$MN_AXCONF_LOGIC_MACHAX_TAB.

Copyright © Siemens AG, 2005.


2/B3/2-84 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.6 Axis container

Example In the example in Fig. 2-11, the 3rd channel axis (3rd entry in
$MC_AXCONF_MACHAX_USED) is a container axis. The 3rd entry in
$MC_AXCONF_MACHAX_USED refers to the 8th entry in
$MN_AXCONF_LOGIC_MACHAX_TAB and this (CT3_SL2) in turn to the 3rd
axis container and its container slot 2. This 2nd entry in
$MN_AXCT_AXCONF_ASSIGN_TAB3 (NC3_AX1) defines the 1st machine
axis of NCU3 as a container axis of axis container 3, i.e. in the initial state, the
4th channel axis is the 1st machine axis of NCU3.
The 5th channel axis is also a container axis: The 5th entry in
$MC_AXCONF_MACHAX_USED refers to the 7th entry in
$MN_AXCONF_LOGIC_MACHAX_TAB and this (CT1_SL1) in turn to the 1st
axis container and its container slot 1. This 1st entry in
$MN_AXCT_AXCONF_ASSIGN_TAB1 (NC1_AX1) assigns the 1st machine
axis of NCU1 to the 1st slot of axis container 1, i.e. in the initial state, the 1st
machine axis of NCU1 is assigned to the 5th channel axis.

Channel axes

MD 10002: AXCONF_LOGIC_MACHAX_TAB,
X 1
y 2 AX2 1 Local machine axis 2
Z 3 AX3 2 Local machine axis 3
S1 6 3
S2 9

NC2_AX3 6 Link axis without container


CT1_SL1 7 Axis container 1 slot 1
CT3_SL2 8 Axis container 3 slot 2
Channel 1 ......

$MC_AXCONF_MACHAX_USED
31

$MC_CHANAX_NAME_TAB Logical machine axis image


Internal axis view of the NCK

Assigned to NCU

Axis container 1 Circular buffer location (slot) MD 12701 ... 12716


NCU 1, M. axis 1 NC1_AX1 1
NCU 2, M. axis 2 NC2_AX2 2 $MN_AXCT_AXCONF_ASSIGN_TAB1
NCU 2, M. axis 1 NC2_AX1 3

Axis container 2 Circular buffer location (slot)


1 $MN_AXCT_AXCONF_ASSIGN_TAB2
2
3

Axis container 3 Circular buffer location (slot)


1
NCU 3, M. axis 1 NC3_AX1 2 $MN_AXCT_AXCONF_ASSIGN_TAB3
3

NCU global, in link memory

Fig. 2-11 Mapping of channel axes onto axis containers via logical machine axis image

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-85
Several Operator Panel Fronts and NCUs (B3) 06.05
2.6 Axis container

Axis container entries contain local machine axes or link axes from the
perspective of an individual NCU. The entries in the logical machine axis image
MD10002: AXCONF_LOGIC_MACHAX_TAB for a single NCU are permanent.

Container rotation The contents of the axis container slots are variable inasmuch as the contents
of the circular buffer (axis container) can be shifted together by  n increments.
The number of increments n is defined for each axis container in
SD 41700: $SN_AXCT_SWWIDTH.
The number of increments n is evaluated modulo in relation to the number of
actually occupied container slots. In doing so, new contents are created for all
slots of an axis container (exception: 0 and slot number = increment number).
System variables provide information about the current status of an axis
container; these system variables can be read addressed from the parts
program and synchronized actions. See 2.6.1.

Axis container 1 Axis container 1

Circular buffer location (slot) Circular buffer location (slot)


NCU 1, M. axis 1 NC1_AX1 1 NCU 1, M. axis 5 NC1_AX5 1
NCU 2, M. axis 2 NC2_AX2 2 NCU 1, M. axis 1 NC1_AX1 2
NCU 2, M. axis 1 NC2_AX1 3 NCU 2, M. axis 2 NC2_AX2 3
... NCU 2, M. axis 1 NC2_AX1
... ...
NCU 1, M. axis 5 NC1_AX5 n ... n

Before rotation 1 After rotation by 1 step

Fig. 2-12 Shifting the entries to the axis container slots

The axis container model has the following characteristics:

S A channel always sees a fixed number of axes with defined channel axis
names (logical machine axis image)

S The “rotation” of the axis container sets new machine axes for all channels
that have axes in the same axis container.

Frames and The assignment between channel axes and machine axes can change when
axis container the axis container rotates. The current frames remain unchanged after a
rotations rotation. The user himself is responsible for ensuring that the correct frames are
selected after a rotation by, for example, programming basic frame masks.

Activation of The application must ensure that the desired local or link axes are addressed
axis container by issuing commands in the parts program for rotating the axis container to a
rotation specific position.

Copyright © Siemens AG, 2005.


2/B3/2-86 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.6 Axis container

For example, when rotating the drum of a multi-spindle machine into a new
position, it must be ensured that each position addresses the newly changed
spindle by rotation of the axis container.

Note
Axis containers can be used jointly by different channels of an NCU and by
channels of other NCUs.
If axes of different channels display reference to the same axis container via
the logical machine axis image, then all channels concerned see different
axes after a rotation. This means: The time for a rotation must be coordinated
between the channels. This is performed by means of the available language
commands.

Each entry in the axis container must be assigned to the correct channel at all
times. The system variables in 2.6.1 offer the possibility for the parts program or
synchronized action to gain information about the current axis container state.

Commands for the The requirement outlined above for coordinating channels that jointly use an
axis container axis container is contained in the effects of the command AXCTSWE.
rotation Notation:

AXCTSWE(CTi) ;The function name stands for:


;AXis ConTainer SWitch Enable

CTi is the identifier of the axis container which must be advanced. The
increment must be stored in setting data

SD 41700: AXCT_SWWIDTH[container number]

(container-specific). SD 41700: AXCT_SWWIDTH (AXis ConTainer SWitch


WIDTH) is available to all NCUs via the link module (i.e. all NCUs connected via
a link module see the same values).
Function:
Each channel whose axes are entered in the specified container issues an
enable for a container rotation if it has finished machining the position/station.
If the enables for all channels for the axes of the container have been received,
container rotation takes place with the increments set in SD 41700:
AXCT_SWWIDTH[container number] (the direction of rotation is also assessed
if there is a leading sign).

The following variant is provided to simplify start-up:


AXCTSWED(CT1) ;The function name stands for:
;AXis ConTainer SWitch Enable Direct
The axis container rotates according to the settings in setting data SD 41700:
AXCT_SWWIDTH[container number]. This call may only be used if the other
channels, which have axes in the container are in the RESET state.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-87
Several Operator Panel Fronts and NCUs (B3) 06.05
2.6 Axis container

Note
In SW 5.2 and higher, the axis container names assigned in
MD 12750: $MN_AXCT_NAME_TAB
can be used for commands AXCTSWE and AXCTSWED.

In the earlier software version SW 5.1, channel axis identifiers must be


specified which refer to the container to be rotated via the logical machine axis
image. The rotation must be specified in a separate command
AXCTSWE(channel axis) for each container.

Implicit wait There is an implicit wait for the completion of a requested axis container rotation
if one of the following events has occurred:

S Part program language commands which will cause a container axis


assigned to this axis container in this channel to move

S GET(channel axis name) for an appropriate container axis


S The next AXCTSWE(CTi) for this axis container

Note
Even an IC(0) will result in a wait including synchronization where necessary
(block-by-block change in addressing according to increment even though
absolute dimension is set globally).

Synchronization If the new container axis assigned to the channel after a container rotation does
with axis position not have the same absolute machine position as the previous axis, then the
container is synchronized with the new position (internal REORG).

Note
SD 41700: AXCT_SWWIDTH[container number] is only updated for new
configurations. If after the incremental rotations of the RVM/MS the position has
reached a switching position before the original position, the container can
continue to be rotated forwards, in order to reach the original position of the
container again. The drum or rotary table must however be turned back to the
original position, so that measuring and supply cables are not interrupted.

Copyright © Siemens AG, 2005.


2/B3/2-88 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.6 Axis container

Home channel If more than one channel has access authorization (i.e. a “reference”) to the axis
of a container axis due to the setting in MD 20070: AXCONF_MACHAX_USED, the write access to
the axis (setpoint input) can be passed on. Machine data MD 30550:
AXCONF_ASSIGN_MASTER_CHAN creates a default assignment between an
axis and a channel. MD 10002: AXCONF_LOGIC_MACHAX_TAB is set to
define which NCU possesses the axis after power-up or is producing the
interpolation value. Since the axial machine data for link axes are identical on all
NCUs, MD 30550: AXCONF_ASSIGN_MASTER_CHAN is evaluated only if the
NCU has write authorization to the axis (see logical machine axis view in MD
10002: AXCONF_LOGIC_MACHAX_TAB).

Axis replacement Passing the write authorization to an axis (setpoint input) by means of Get,
Release,..., works for a container axis in the same way as for a normal axis.
Write authorization can only be replaced between the channels of one NCU.
Write authorization cannot be passed beyond the boundaries of an NCU.

2.6.1 System variables for axis containers

States of an The following system variables allow parts programs and synchronized actions
axis container to access information about the current state of an axis container.
Legend:
r Read
TP Part program
SA Synchronized action
SW Software version
n Axis container identifier with SW 5.2 and
channel axis identifier with SW 5.1

Name Type Description/values Index PP SA


/SW ac- ac-
cess cess
$AC_AXCTSWA[n] BOOLEAN Channel status of axis container rotation/ Identi- r r
(AXis ConTainer SWitch /5 1: The channel has enabled axis container fier
Active) rotation for axis container n and
this rotation is not yet complete.
0: The axis container rotation has ended
Examples: See Chapter 6 “Axis container coordina-
tion”
$AN_AXCTSWA[n] BOOLEAN Axis container rotation/ Identi- r r
/5 1: An axis container rotation is fier
executed immediately by axis
container n
0: No axis container rotation is
active
Examples: See Chapter 6 “Axis container coordina-
tion”
$AN_AXCTAS[n] INT Current rotation of axis container Identi- r r
(AXis ConTainer Actual /5 The number of slots by which the axis container has fier
State) just been rotated is specified for axis container n./
0 to (max. number of occupied slots in axis container
–1)
The default setting is entered after power ON. This is
the value 0.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-89
Several Operator Panel Fronts and NCUs (B3) 06.05
2.6 Axis container

Application/behavior
Activity of drum/
rotary table/ Channel 1 Channel 2 Channel 3
axis container
$AC_AXCTSWA $AC_AXCTSWA $AC_AXCTSWA
$AN_AXCTSWA 0 1
0 1 0 1
0 1
Time

N471 x... z...


x... z...
x... z...
M471 N473 x... z...
AXCTSWE... x... z...
x... z...
M473
N472 x... z... AXCTSWE...
x... z...
x... z...
x... z...
x... z...
M472
AXCTSWE...

Fig. 2-13 Axis container rotation dependent on enable by channels concerned

Copyright © Siemens AG, 2005.


2/B3/2-90 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.6 Axis container

2.6.2 Machining with axis container (schematic)

Begin station/position

Setup once

Wait until
Axis container $AN_AXCTSWA(CTi 1)) = 0
rotation or
terminated? n $AC_AXCTSWA(CTi) = 0

Cyclical setup

Real table/drum
connection Wait
terminated ? n
y

Machine cyclically

Clear up cyclically

Enable container rotation AXCTSWE(CTi)

Continue cycl.
machining? 1) In SW 5.1 instead of CTi
y Channel axis identifiers in
n SW 5.2 plus axis container
name defined in MD
Clear up once AXCT_NAME_TAB.

End station/position

Fig. 2-14 Schematic machining of a station/position

Note:
An NCU machining cycle which is in charge of the rotation of the rotary table or
the drum for multi-spindle machines contains the query of enables for container
rotation of all NCUs concerned. If all enables are present, switching to the next
position/station takes place. The axis containers are rotated accordingly.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-91
Several Operator Panel Fronts and NCUs (B3) 06.05
2.6 Axis container

2.6.3 Axis container behavior after power ON

The container always assumes the state defined in the machine data when the
power is switched on, irrespective of its status as the power supply was
switched off, i.e. the user must distinguish between the actual status of the
machine and the default setting and compensate accordingly by specifying
appropriate axis container rotations. He can do this, for example, by means of
an ASUB containing AXCTSWED in one channel while the other channels are
still in the RESET state.

2.6.4 Axis container response to mode switchover

A container axis in an axis container which has been enabled for rotation
cannot be traversed in JOG mode. An axis container can only be rotated in JOG
mode by means of an ASUB.

2.6.5 Axis container behavior in relation to ASUBs

An enabling command for axis container rotation cannot be canceled, i.e. if an


axis container rotation has been enabled in an ASUB, the enabling command
remains effective even when the ASUB has ended.

2.6.6 Axis container response to RESET

A reset cancels the enabling command for axis container rotation. The reset
channel is then no longer involved in the axis container rotation. The enabling
commands in the other active channels can effect a rotation. If all channels
except one have been reset, the one remaining active channel can set the
rotary position directly with AXCTSWED.

2.6.7 Axis container response to block searches

An axis container rotation (AXCTSWE) cannot be enabled and activated in one


block, but the enabling and activation commands must be programmed in
separate action blocks. In other words, the axis container status changes in
response to each separate rotation command as a function of the status of
other channels.

2.6.8 Supplementary conditions for axis container rotations

Note
Through appropriate programming measures, the user must ensure that
– the right zero offsets are effective after the container switch and
– that no transformations are active during the container switch.

Copyright © Siemens AG, 2005.


2/B3/2-92 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.6 Axis container

Axial machine data If an axis is assigned to an axis container, then certain axial machine data must
be identical for all axes in the axis container as the data are activated. This can
be ensured by making a change to this type of machine data effective all
container axes and all NCUs which see the axis concerned. The message:
“Caution: This MD will be set for all container axes” is output at the same time.
During power-up, all axial machine data of this type are synchronized with the
values of the machine axis in slot 1 of the axis container. In other words, the
relevant machine data are transferred from the machine axis in slot 1 of the axis
container to all other container axes. If machine data with other values are
overwritten by this process, the message: “The axial MD of the axes in axis
container <n> have been adapted” is output.
If a slot in the axis container is re-assigned (through writing of machine data
MD12701–12716: AXCT_AXCONF_ASSIGN_TAB<n>), then the following
message is output: “The MD of the axes in axis container <n> will be adapted
on next power-up”.
Axial machine data of the type discussed above are identified by attribute
containerEqual (equal for all axes in the axis container). With an NCU link, the
axis container is defined on the master NCU (see Section 2.4).

Axis states If a container axis is active in axis mode or as a positioning spindle (POSA,
SPOSA) and its axis container needs to be rotated, then the rotation cannot be
executed until the container axis has reached its end position.
A container axis which is active as a spindle continues to turn as the axis
container rotates.
SPCON (switchover to position control) is attached to the physical spindle, i.e.
this status is passed on with the spindle when an axis container rotates. SETMS
(master spindle), on the other hand, refers to the channel and remains active in
the channel when an axis container rotates.

Continuous path An axis container rotation interrupts G64 mode in a channel in which a
mode G64 container axis in the rotating container is also a channel axis, even if it does not
belong to the path grouping. This interruption does not occur, however, until an
axis in the rotated axis container is programmed again.

PLC axes If a container axis in a container which is enabled for rotation must become a
PLC axis, then this status change request is stored, and the changeover to PLC
axis status does not take place until after completion of the axis container
rotation.

Command axes A container axis in a container enabled for rotation cannot be declared a
command axis. The traverse request is stored in the channel and executed on
completion of the axis container rotation.
Exceptions to this rule are synchronized actions M3, M4, M5 and a
motion-changing S function: If an axis container rotation is active and the
spindle is transferred to the control of another NCU, alarm 20142 (channel %1
command axis %2: Invalid axis type) is output. These synchronized actions do
not change a channel axis into a command axis, but leave it in its original state.
Synchronized actions of this type cannot be stored.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-93
Several Operator Panel Fronts and NCUs (B3) 06.05
2.6 Axis container

References: /FBSY/ Description of Functions Synchronized Actions

Reciprocating axes A container axis in a container enabled for rotation cannot become a
reciprocating axis, i.e. this change in status does not take place until the axis
container has finished rotating. The status change command remains active.

Coupled axes An axis container cannot rotate while an axis coupling, in which one of its
container axes is involved, is still active. The coupling must be deselected
(COUPOF) prior to rotation and selected again (COUPON) afterwards. A new
COUPDEF command is not necessary.

Compile cycles In SW 5.2, a compile cycle axis cannot be a container axis.

Main run offset The main run offset values (DRF offset, online tool offset, synchronized action
values offset, compile cycle offset) for a channel axis assigned to a container slot
remain valid after the relevant axis container has rotated. External zero offsets
cannot remain valid after an axis container rotation as these refer to specific
machine axes. If an external zero offset is active, the axis container rotation is
rejected with alarm 4022.

Axial frame The axial frame of a channel axis, which is also a container axis, is no longer
valid after an axis container rotation. Since the axis container rotation assigns a
new machine axis to the channel axis, but the axial frame is referred to a
machine axis, the rotation thus also changes the axial frame. If the two
frames do not coincide, a synchronization process (internal REORG) is
performed.
The assignment between a channel axis and a machine axis is altered by the
axis container rotation. The current frames remain unchanged after a rotation.
The user himself is responsible for ensuring that the correct frames are selected
after a rotation by, for example, programming basic frame masks.

Transformations If the container axis is a spindle which is involved in a transformation, then the
transformation must be deselected before the axis container rotation is
enabled. Otherwise alarm 17605 is activated.

Gantry grouping Gantry axes cannot be axes in an axis container.

Drive alarms When a drive alarm is active for a container axis, then the associated axis
container cannot rotate until the alarm cause has been eliminated.

Copyright © Siemens AG, 2005.


2/B3/2-94 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.7 Cross-NCU user communication, link variables

2.7 Cross-NCU user communication, link variables

Introduction For large machine tools, rotary indexing machines and multi-spindle machines,
whose movement sequences are controlled by more than one NCU, the
applications on a single NCU must be able to exchange information rapidly with
the other NCUs connected via link module.
For this purpose there are:

S Link variables

2.7.1 Link variables

Definition Link variables are system-global data that can be addressed by the connected
NCUs as system variables if link communication is configured. The
– contents of these variables,
– their data type,
– their use,
– their position (access index) in the link memory
are defined by the user (in this case this is usually the machine manufacturer).

Requirement
– To active NCU link communication, MD 18780: MM_NCU_LINK_MASK
must be set.
– The link grouping must be installed and configured according to 2.8.

Application As link variables are formally system variables, they can be read/write accessed
in
part programs and in
synchronized actions
(as a rule).
Access possibilities for the individual link variables are specified under 2.7.2.

Note
On installations without an NCU link, the link variables can also be used
NCU-locally as an additional means of cross-channel communication.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-95
Several Operator Panel Fronts and NCUs (B3) 06.05
2.7 Cross-NCU user communication, link variables

Structure Each NCU connected to an entire system with link module sees a link memory
in which the link variables are stored uniformly. Data exchange takes place after
changes in the following interpolation cycle.

Size of link The size of the link memory can be configured within the limits set by machine
memory data
MD 18700: MM_SIZEOF_LINKVAR_DATA.

It is necessary to define the same size for all connected NCUs. If there are
deviations, the system adapts the link memory size of all NCUs according to the
largest size specified. If the memory area of the link memory is exceeded during
an access attempt, alarm 17020 is output.

Initialization of After power-up, the link memory is initialized with 0.


link memory

Data types of link The link memory can contain link variables with the following data types:
variables
S INT $A_DLB[i] ; Data Byte (8 bits)
S INT $A_DLW[i] ; Data Word (16 bits)
S INT $A_DLD[i] ; Data Double word (32 bits)
S REAL $A_DLR[i] ; Real data (64 bits)

According to the data type, 1, 2, 4, 8 bytes are addressed when reading/writing


the link variables.
The position offset in bytes in the data area for global data is determined directly
by the programmed field index. This is thus independent of the data type and
specifies the offset in bytes.

Ranges of values The data types have the following value ranges:
BYTE: –128 to 255
WORD: –32768 to 65535
DWORD: –2147483648 to 2147483647
REAL: –4.19e–308 to 4.19e–307
Alarm 17080 is generated when the upper value range limit is violated and
alarm 17090 with violation of the lower value range limit and alarm 14096 in the
case of an illegal type conversion.
The value range of these variables (with a negative value) applies only to write
operations. Only the corresponding positive (unsigned) value can be read back.

Addressing with Index i always represents the distance in bytes from the beginning of the link
access to global memory. The index is counted from 0. This means that:
variables

Copyright © Siemens AG, 2005.


2/B3/2-96 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.7 Cross-NCU user communication, link variables

Type Interpretation of (i)


(counting starts at 0 each time)
$A_DLB[i] Byte i is followed by a data of type Byte.
$A_DLB[7] addresses byte 8 from the beginning of the link memory.
$A_DLW[i] Byte i is followed by a data of the word type.
$A_DLW[4] addresses the word which is located on byte 5 from the begin-
ning of the link memory.
$A_DLD[i] Byte i is followed by a data of the double word type.
$A_DLD[12] addresses the double word which is located on byte 13 from
the beginning of the link memory.
$A_DLR[i] Byte i is followed by a data of the real type.
$A_DLR[24] addresses the real value which is located on byte 25 from the
beginning of the link memory.

Link memory use The link memory can have different assignments for processes that are
completely separated in time. The various NCU applications that access the link
memory jointly at any one time must use the link memory in a uniform way.

Access from If an impermissible index is used for access to the link memory from a
synchronized synchronized action or a parts program, alarm 20149 is issued.
actions
Write access to When writing to link variables of the link memory, for example as follows
link variables $A_DLB[5] = 21,
a write element is required. The write element serves for communication with
further NCUs which must see the modified contents in the link memory. Each
write process to a link variable requires a write element. It is busy with the write
process until the main run executing data exchange with the other NCUs is
completed.
Since global data can be written by all channels and NCUs, the user must
ensure proper coordination of write and read access operations. Variables are
written immediately if an NCU link connection is active. Writing and immediate
read back of a variable produces the same result. Variables are written only in
synchronism with the main run. Writing and immediate read back in the same
parts program block produces a different result.

Number of write The write elements available for writing to link variables are limited. Their
elements number is determined by:
MD 28160: MM_NUM_LINKVAR_ELEMENTS

If no more write elements are available for an intended write process, alarm
14763 is issued. The set number of write elements only limits the number of
write processes that can be written in one block.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-97
Several Operator Panel Fronts and NCUs (B3) 06.05
2.7 Cross-NCU user communication, link variables

Dynamic response Writing the link variables is immediately completed for the local NCU in the
during write current interpolation cycle (in the sequence of commands). If the user does not
exceed the number of possible write processes (can be checked in system
variable $A_LINK_TRANS_RATE) in the current interpolation cycle, all other
NCUs will have access to the written information 2 interpolation cycles later. If
link variables are used exclusively to coordinate the channels of a multi-channel
NCU, they can be written in the same interpolation cycle.

Note
The user (machine manufacturer) must ensure that the time is consistent for
larger data blocks that are logically associated with one another. The
transmission is word by word. The data quantity which can be transferred in the
same interpolation cycle is specified in system variable
$A_LINK_TRANS_RATE (see below). A transmission can be protected by
marking variables of the link memory as semaphores.

2.7.2 System variables of the link memory

The following system variables are available for accessing the link memory:
Legend:
r Read
w Write
R Read with implicit preprocessing stop
W Write with implicit preprocessing stop
TP Part program
SA Synchronized action
SW Software version

Name Type Description/values Index PP SA


/SW ac- ac-
cess cess
$A_DLB[i] INT/5 Addresses a byte in the link memory / Numera- R/w r/w
0 to $MN_MM_SIZEOF_LINKVAR_DATA –1 tor
$A_DLW[i] INT/5 Addresses a data word in the link memory / Numera- R/w r/w
0 to $MN_MM_SIZEOF_LINKVAR_DATA–2 tor
$A_DLD[i] INT/5 Addresses a data double word in the link memory Numera- R/w r/w
/ 0 to $MN_MM_SIZEOF_LINKVAR_DATA–4 tor
$A_DLR[i] REAL/ Addresses a REAL value in the link memory / 0 to Numera- R/w r/w
5 $MN_MM_SIZEOF_LINKVAR_DATA–8 tor
$A_LINK_TRANS_RATE INT/5 For synchronized actions: Number of bytes that r
can still be transferred in the current interpolation
cycle via link communication. / –2147483648
to 2147483647

Note
Use of index i is described in detail in 2.7.1.

Copyright © Siemens AG, 2005.


2/B3/2-98 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.7 Cross-NCU user communication, link variables

2.7.3 Link axis drive information

You can access the drive data via the machine axis identifier, even if the axis is
being applied to another NCU. Software Version 6 and higher supports the use
of the following drive system variables with machine axis identifiers [n] (only
channel axis identifiers up to now):
– $AA_LOAD[n], $VA_LOAD[n]
– $AA_TORQUE[n], VA_TORQUE[n]
– $AA_POWER[n], $VA_POWER[n]
– $AA_CURR[n], $VA_CURR[n]
– $VA_VALVELIFT[n]
– $VA_PRESSURE_A[n]
– $VA_PRESSURE_B[n]
The following section describes how to query the drive status of link axes by
means of these system variables and static synchronized actions.
References: /FBSY/
The connections are described by means of an example that is easily
applicable to the requirements of the control at hand:

NCU1 NCU2

Link module

Logical Logical
NC1_AX2

machine axis image machine axis image


AX1
AX2
AX1
AX3
AX4

Link axis
AX1

AX2

AX3

AX4

AX1

AX2

The machine axis identifier of the home NCU addresses the system variables of the link axis’ drive information
and passes them on via link variables.

Fig. 2-15 Passing on link axis drive information

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-99
Several Operator Panel Fronts and NCUs (B3) 06.05
2.7 Cross-NCU user communication, link variables

Requirement Machine data MD 36730: DRIVE_SIGNAL_TRACKING must be set to value 1.

Sequence The drive system variable values of a link axis are provided in two steps:
1. The home NCU (that is, the NCU that is physically connected to the link
axis) uses a static synchronized action to cyclically read the information
contained in the system variables into a link variable (see 2.7.1). The link
variable can also be accessed on the interpolating NCU (in our example,
NCU2).
2. The interpolating NCU checks (e.g. in another synchronized action) the
state of the link variable and initiates the required response.

Machine data for NCU1:


example $MN_AXCONF_LOGIC_MACHAX_TAB[0] = “AX1”
$MN_AXCONF_LOGIC_MACHAX_TAB[1] = “AX3” ;*
; * If you move the axis that is not defined as a link axis
; closer towards the other axis, this would be AX2.
$MN_AXCONF_LOGIC_MACHAX_TAB[2] = “AX4”
$MA_DRIVE_SIGNAL_TRACKING[AX2] = 1 ; Enabling
; initialization
NCU2:
$MN_AXCONF_LOGIC_MACHAX_TAB[0] = “NC1_AX2” ; Link axis
$MN_AXCONF_LOGIC_MACHAX_TAB[1] = “AX1”
$MN_AXCONF_LOGIC_MACHAX_TAB[2] = “AX2”

Synchronized NCU1:
actions ; Static synchronized action cyclically transfers the drive variable
N111 IDS=1 WHENEVER TRUE DO $A_DLR[0]=$VA_CURR[AX2]
NCU2:
; Static synchronized action accepts value from link variable and
; triggers alarm 61000 if the current exceeds limit of 23A
N222 IDS=1 WHEN $A_DLR[0] > 23.0 DO SETAL(61000)

Copyright © Siemens AG, 2005.


2/B3/2-100 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.8 Configuration of a link grouping

2.8 Configuration of a link grouping

Introduction The preceding chapters described how to configure link axes and axis
containers. Both require a link communication to be established between the
NCUs concerned. Setting up the link communication takes place by means of:

S The link module hardware


References: /PHD/, Configuring Guide NCU 571– 573.2

S Machine data
The following section describes how to use the required machine data.

$NCU_LINKNO

NCU 1 NCU 2 NCU 3 NCU 16

...

Link module Link module Link module Link module


master slave slave slave

Clock generator NCU

Bus terminating resistances active

Fig. 2-16 Link grouping

Link grouping A link grouping consists of a minimum of 2 and maximum of 16 NCUs


interconnected by link modules.
– The link module master (MD 12510: NCU_LINKNO = 1) plays a leading
role in this process. It synchronizes the interpolation cycle and sets up
slave communication in power-up. It is advisable to assign the NCU
numbers in continuous ascending order for the slave modules.
– The first and last module in the physical chain must activate the bus
terminating resistances.
– The software version must be identical on all NCUs in a link grouping.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-101
Several Operator Panel Fronts and NCUs (B3) 06.05
2.8 Configuration of a link grouping

Machine data Machine data


MD 18780: MM_NCU_LINK_MASK
ensures that link communication is established. It provides the dynamic memory
space that is required for communication in the NCUs equipped with link
modules.
Machine data
MD 12540: LINK_BAUDRATE_SWITCH
specifies the data transfer rate of the link communication with the following
assignment:
Set value Rate
0 9.600 Kbaud
1 19.200 Kbaud
2 45.450 Kbaud
3 93.750 Kbaud
4 187.500 Kbaud
5 500.000 Kbaud
6 1.500 Mbaud
7 3.000 Mbaud
8 6.000 Mbaud
9 12.000 Mbaud Default setting

Machine data
MD 12550: LINK_RETRY_CTR
specifies the maximum number of times the link communication is repeated
when an error occurred during frame transfer.
Machine data
MD 12530: LINK_NUM_OF_MODULS
specifies the number of link modules taking part in the link communication
Machine data
MD 12510: NCU_LINKNO
assigns a logical link number to an NCU; this number is used for link
identification in conjunction with link axes and link communication.
Identifications can be assigned independently of the physical sequence of the
modules in the link string. The module with NCU_LINKNO = 1 is master.

Warning
! Assignment of NCU_LINKNO must be unambiguous. An alarm is issued if
there is an error.

Machine data
MD 12520: LINK_TERMINATION
specifies for the software which NCUs correspond to the bus terminating
resistances. The set values refer to the entries defined with MD 12510:
NCU_LINKNO. 0 corresponds to the first definition, 1 to the second, etc. from
MD 12510: NCU_LINKNO.

Note
MD 12520: LINK_TERMINATION need only be set for the prototype hardware
of the link module. It is only meaningful for the software.

Copyright © Siemens AG, 2005.


2/B3/2-102 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.8 Configuration of a link grouping

The NCUs that are physically connected at the beginning and end of the bus
must activate the terminating resistors. This measure is necessary for the link
communication to work.
Machine data
MD 30554: AXCONF_ASSIGN_MASTER_NCU
defines for the purposes of power-up which NCU in an NCU grouping will be
responsible for generating the axis setpoint (master NCU).
Machine data
MD 30560: IS_LOCAL_LINK_AXIS
specifies that the axis drive needs to be started during power-up, even if the
axis is operating under the control of another NCU. It is evaluated only if
machine data required to create a link grouping have been set, but link
communication has failed due to an error.

Note
It may be necessary to increase the interpolation cycle due to the number of
link axes and write elements.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-103
Several Operator Panel Fronts and NCUs (B3) 06.05
2.9 Communication in link grouping

2.9 Communication in link grouping


Although communication by means of link modules is high-speed
communication, the following aspects have to be taken into account during
configuration.

Data transport Both cyclic and acyclic services are used for data communication. The cyclical
data area ensures that the data are transferred in every interpolation cycle.
Other data are transferred in the acyclic service, e.g. machine data, link
variables and data for container rotation. If too many data were selected
simultaneously for the acyclic link communication, the transfer sequence is
governed by an internally defined priority system. The actual value/setpoint data
for the lead link axis are transferred via the cyclic service.

Dependencies The times for communication are determined by:


– Number of data for cyclic exchange
(number of link axes, number of lead link axes (see further below),
number of axes in a cross-NCU container with high priority and
number of link variables having to be exchanged per each interpolation
cycle)
– Type and speed of the NCUs
– Link module speed (currently 12 Mbaud)
– Point-to-point protocol: The cyclic communication load increases sharply
with each additional NCU, as the schematic 2-19 illustrates.
The set interpolation cycle must be identical for all lead link NCUs in the axis
grouping.

Link resources MD 18781: NCU_LINK_CONNECTIONS controls the assignment of


send/receive buffers for link connections. As many as 32 such buffers are
available for each NCU.
A buffer of this kind is reserved on a priority basis for the setpoint/actual value
transfer of a link axis. Only the remaining ones can be used for acyclic data
exchange (alarm, container switch, link variable transfers). The maximum
number of 32 must not be exceeded.
If MD 18781: NCU_LINK_CONNECTIONS is set with 0, the software itself
determines the requirement as 25 connections.
A value not equal to 0 explicitly defines the number of acyclic connections to
other NCUs.

Examples Let an axis container contain 12 slots. Three axes are local on NCU1, three
axes in each case are link axes that are on NCU 2, NCU3, and NCU4. The MD
is set with 0 as the value.

Copyright © Siemens AG, 2005.


2/B3/2-104 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
2.9 Communication in link grouping

NCU 2 Axes
Cyclic connections
12 1
NCU 1
3
12 1

3
NCU 3

12 1
3

Axes
Acyclic 25*
connections
NCU 4

Total 12 1
connections 34!

* MD 18781: 0 corresponds to 25
connections

Fig. 2-17 Resources insufficient

Let an axis container contain 12 slots. Four axes are local on NCU1, four axes
in each case are link axes that are on NCU 2, and NCU3. MD18781 is set with
9 as the value.

NCU 2 Axes
Cyclic
connections
12 1
NCU 1
4
12 1

4
NCU 3

12 1

Axes
Acyclic 9*
connections

Total
connections 17

* MD 18781: 9 corresponds to 9 acyclic connections

Fig. 2-18 Resources sufficient

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-105
Several Operator Panel Fronts and NCUs (B3) 06.05
O
2.9 Communication in link grouping

O
d
Time [ms]

B
15 S
d

S
d
10

S
d

Interpolation cycle
S
5 d

S
d
S
Sd

2 3 4 5 6 7 8 No. NCUs

Fig. 2-19 Rise in Communication Time of the Number NCUs Connected over the Link
(for scaling refer to Interdependencies)

Configuration limit The figure above illustrates how the communication overhead grows as the
number of NCUs increases.
Curve trace A:
Time required for the exchange of link variables/machine data information and
the lead link axis information (one lead link axis) between the NCU giving the
master value and other NCUs that interpolate the following axes as a function of
the leading axis (lead link axis).
Curve trace B:
Time required for the exchange of link variables/machine data information
between the NCU giving the master value and other NCUs that interpolate the
following axes as a function of the leading axis (lead link axis).
Rule:
With a configuration, the time requirement must remain below the interpolation
cycle according to curve trace A. If there is no longer any degree of freedom
with respect to the number of necessary NCUs, the interpolation cycle might
have to adapted.
If the interpolation cycle has to remain unchanged, the number of NCUs in the
lead link axis grouping might have to be reduced.

Copyright © Siemens AG, 2005.


2/B3/2-106 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
2.10 Lead link axis

2.10 Lead link axis

Term A lead link axis allows read access to the axis data (setpoint, actual value, ...)
on another NCU.

Introduction The lead link axis concept offers a solution for the following problems:
The individual machining and handling stations are to move synchronous with
or in relation to a common master value in so-called clocked sequences. The
dependent axes are interpolated from another NCU, not the one interpolating
the leading axis.

Properties of a Linking can be performed right across the NCU landscape,


lead link axis i.e. several NCUs can be linked to a leading axis on another NCU.
The link system can encompass up to 8 NCUs interconnected via link
communication. Axis values and other data are exchanged between the leading
axis and the following axes via the link communication.
Typically, axes and spindles are on a par as the leading unit for coupled axes.
The same interpolation cycle must be set for all NCUs participating in the
linkage.

Restrictions
S An axis (leading axis) that is referenced by a lead link axis cannot be a link
axis, i.e. be moved by any other NCUs apart from its local NCU. See 2.5.

S An axis (leading axis) that is referenced as a lead link axis cannot be a


container axis, i.e. addressed alternately by different NCUs. See 2.6.

S A lead link axis must not itself be a container axis.


S A leading link axis cannot be the programmed leading axis in a gantry
grouping.

S Couplings with leading link axes cannot be cascaded.


S Axis replacement can only be implemented within the home NCU of the
leading link axis. See below.

Differential Lead link axes allow cross-NCU linkages where the master value axis and the
features from SW 5 following axes are programmed/interpolated on different NCUs. (See
supplementary conditions).
Although it was possible to create a cross-NCU linkage in SW 5 by means of a
link axis, programming and interpolating the leading value axis and following
axes had to be performed on one NCU.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-107
Several Operator Panel Fronts and NCUs (B3) 10.00
06.05
2.10 Lead link axis

Couplings The following linkage types can be used:


– Leading value (setpoint, actual value, simulated leading value)
– Coupled motion
– Tangential correction
– Electronic gear (ELG)
– Synchronous spindle

Configuration The lead link axis that is being interpolated as a leading axis on the NCU is
leading axis NCU configured on the interpolating NCU as a standard local axis. It is configured by
means of channel axis and machine axis machine data, and via the logical
machine axis image. In addition, there are the following requirements:
– The machine axis must be identified as lead link axis in
MD 30554: AXCONF_ASSIGN_MASTER_NCU
– Number of link module must be specified in MD 12510: NCU_LINKNO
– The link functionality must be activated in
MD 18780: MM_NCU_LINK_MASK = 1
– Number of link modules must be specified in MD 18782:
MM_LINK_NUM_OF_MODULES
– Size of servo buffer specified in: MD 18720: MM_SERVO_FIFO_SIZE =
4

Configuration In addition to configuring the standard channel/machine axis machine data, you
following axis NCU need to configure machine axis machine data on the NCU that is deriving
following axis movements from the non-local leading axis (lead link axis):
– Number of link module must be specified in MD 12510: NCU_LINKNO
– The link functionality must be activated in
MD 18780: MM_NCU_LINK_MASK = 1
– Number of link modules must be specified in MD 18782:
MM_LINK_NUM_OF_MODULES
– If nec. MD 18402: MM_NUM_CURVE_SEGMENTS
– If nec. MD 18404: MM_NUM_OF_CURVE_POLYNOMS
– Size of servo buffer specified in: MD 18720: MM_SERVO_FIFO_SIZE =
2
– The lead link axis must be configured in the logical machine axis image
with
MD : AXCONF_LOGIC_MACHAX_TAB[i] = “NCm_AXn”
This allows a relation to be established with the NCU that is interpolating
the lead link axis.
– The lead link axis must also be configured in the channel axes.

Note
For further information about link-specific machine data, please refer to the
preceding subsections, Chapter 4, and the configuration and programming
example provided in Chapter 6.

Copyright © Siemens AG, 2005.


2/B3/2-108 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
2.10 Lead link axis

Schematic The figure below shows the constellation used in the example with the main
sequence data flows.
NCU 1 provides:
Interpolation and position control for master value axis or supplies the lead link
axis of NCU2 with setpoint and actual value.
NCU 2 provides:
Coupling between lead link axis and master value axis (of NCU1) and
generation of a dependent axis motion (following axis).

NCU 1
NCU 2

1.3
Interpolator
Interpolator
1.3 1.2 3.2
~ simultaneous
3.3
Buffer for Following
4.1
MM_SERVO_FIFO_SIZE = 2 position control axis/axes
Buffer for 4.1
5. position control MM_SERVO_FIFO_SIZE = 4 Position control
1.1 Master value axis Local axes 2
Position control
3.1
Local axes 1

2. Setpoint and actual value Link module 1

Link module 1
4.2

Fig. 2-20 Data flows for leading value axis, lead link axis and subordinate following axis/axes

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-109
Several Operator Panel Fronts and NCUs (B3) 10.00
06.05
2.10 Lead link axis

The following steps are illustrated:


– 1.1 Position control on NCU1 reads in actual values of leading value axis
from the drive and writes them in the communication buffer for
interpolation.
– 1.2 In the same cycle as (1.1), the actual values from the NCU1
interpolator are written to the link module.
– 1.3 NCU1 interpolator writes the generated setpoints of the leading value
axis to the link module and in the local buffer for position control.
– 2. Setpoints and actual values are transferred from NCU1 to NCU2 via
the link module.
– 3.1 NCU2 interpolator receives setpoints of the leading value axis via the
link module and calculates the setpoints of the following axis.
– 3.2 NCU2 interpolator writes the generated setpoints of the following axis
in the buffer for position control.
– 3.3 NCU2 interpolator sends reaction feedback of following axis to
leading value axis to the link module.
– 4.1 NCU1 position control receives setpoint for leading axis (delay
caused by: MM_SERVO_FIFO_SIZE=4). NCU2 position control receives
setpoint for the following axis.
– 4.2 Reaction feedback is transferred from NCU2 to NCU1.
– 5. NCU1 interpolator receives reaction feedback and can incorporate it
when calculating setpoints for the leading value axis.

Transporting lead
link data
The system variables $AA_LEAD_SP and $AA_LEAD_SV (see below) are
transferred via the acyclic service. These system variables have a lower
transfer priority than the link variables.
Approx. 320 bytes of data are exchanged for the lead link axis (setpoints and
actual values). The communication time required for this operation is approx.
equal to that required for a link axis.
In contrast to local NCU linkages, with cross-NCU linkages the leading axis
setpoints (on NCU1) are delayed to achieve synchronously clocked
assignments of setpoints for the leading/following axis. (See step 4.1.)
The set interpolation cycle must be identical for all lead link NCUs in the axis
grouping.

Axis replacement The channels of the NCU that is driving the following axes are not allowed to
traverse or replace a lead link axis. The real leading axis can be replaced on its
home NCU.
The commands GET, GETD and also Auto-Get ( $MA_AUTO_GET_TYPE) are
rejected by the alarm “Channel %1 axis replacement for axis %1 not allowed”.

Copyright © Siemens AG, 2005.


2/B3/2-110 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
2.10 Lead link axis

2.10.1 Programming a lead link axis

Leading value axis Only the NCU that is physically assigned to the leading value axis can program
view traversing movements for this axis. The travel program must not contain any
special functions or operations. The configuration summarized in the preceding
pages allows the control to perform the required setpoint delay automatically so
that the leading axis and following axes are interpolated synchronously on the
other NCUs.

Following axes The programming on the NCU of the following axes must not contain motion
view commands for the leading value axis (master value axis). Any violation of this
rule triggers an alarm.
The leading value axis is addressed in the usual manner via the channel axis
identifier. The states of the leading value axis can be accessed via special
system variables.

System variables The following system variables can be used in conjunction with the channel axis
identifier of the leading value axis:
$AA_LEAD_SP ; Simulated leading value – position
SAA_LEAD_SV ; Simulated leading value – velocity
If these system variables are updated by the home NCU of the master axis, the
new values are also transferred to any other NCUs which wish to control slave
axes as a function of this master axis.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-111
Several Operator Panel Fronts and NCUs (B3) 10.00
06.05
2.11 NCU link with different interpolation cycles

2.11 NCU link with different interpolation cycles

Problem In the real industrial world, parts deviating from a precise round/cylindrical
description shape are also required. (Example: Pistons that are oval in the manufacturing
state. The operating temperature gives them their required almost round shape
during use). The eccentric shapes are, e.g.:
– Oval shapes
– Trefoil shapes
– Cam
– More complex shapes
If you want to manufacture parts belonging to this category cost-effectively on
turning machines, you can use the link functions described below, which are an
expansion of the link functions described in 2.4 and the following sections.
However, the boundary conditions must be complied with.

C
X

Fig. 2-21 Example of oval eccentric turning

Copyright © Siemens AG, 2005.


2/B3/2-112 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
2.11 NCU link with different interpolation cycles

Sequence of While the workpiece is rotating about the C axis, the X axis must be advanced
motions with high precision between the smallest and largest radius/diameter according
to the required shape (sine, double sine, etc.). In general, a smaller linear
movement per rotation is sufficient in Z direction. If the workpiece is to be
moved at a typical speed (e.g. 3000 rpm), the X axis must be highly dynamic.
This means that
– shorter interpolation cycle
– shorter position control cycle
compared to the requirements of the C and Z axis.

Solution The requirements described in the motion sequences are met by a NCU link
grouping; where the NCU with the shorter interpolation cycle drives the highly
dynamic X axis and another NCU with standard interpolation cycle drives the
less dynamic C and Z axes. General polynomials are used to specify the motion
for the X axis.

Note
The NCU constellation with different interpolation cycles – where one is always
faster than the others – is called “FAST-IPO-LINK” in alarm messages.

NCU-link communication
Link submodule Link submodule

NCU2 NCU1
Standard Shorter
IPO cycle IPO cycle

611D 611D
C

Fig. 2-22 NCU link with different interpolation cycles

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-113
Several Operator Panel Fronts and NCUs (B3) 10.00
06.05
2.11 NCU link with different interpolation cycles

Generalized In a link grouping with several (up to 8) NCUs, some NCUs are set up with short
solution interpolation cycles, some with standard interpolation cycles, and the axes are
configured as in Fig. 2-22. The requirements for NCUs can be optimized in this
manner. Eccentric machining is possible for multi-spindle turning machines in
conjunction with the axis container concept (see 2.6).

Note
Alternatively, you can specify the motion for the X axis as follows:
Master value coupling of the X axis to the spindle (LEADON). This alternative is
still possible and is sufficient for tasks with low dynamic performance
requirements. However, it does not offer a specific function extension for
eccentric turning, and does not allow setpoints to be specified on a NCU with
faster IPO cycle via a NCU link.
Reference: /PGA/, Programming Guide Advanced

2.11.1 Diagram of general solution

Scalable machine configuration according to the


number of axes and required performance.

NCU-A NCU-B NCU-U


S1 Z1 S5 Z5
... ... ... ... UR
S4 Z4 S8 Z8

Position control Position control Position control


cycle i X1 ... cycle i X5 ... cycle j X9
X4 X8

IPO cycle m IPO cycle m IPO cycle n

Link cycle m Link cycle m Link cycle m

Link module A Link module B Link module U

Link cycle

Fig. 2-23 Schematic example of a configuration with several NCUs and eccentric machining unit

Copyright © Siemens AG, 2005.


2/B3/2-114 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
2.11 NCU link with different interpolation cycles

Abbreviations and
terms
NCU-A, NCU-B NCUs with standard interpolation cycle
NCU-U Eccentric NCU with fast interpolation cycle
Position control cycle i “slower” position control cycle
Position control cycle j “faster” position control cycle
IPO cycle m “slower” interpolation cycle
IPO cycle n “faster” interpolation cycle
Link cycle m Uniform link cycle from NCU-A to NCU-U
S1–S8 Spindles 1 – 8
Z1 – Z8 Z axes 1–8
X1 – X8 X axes for concentric machining via NCU-A/NCU-B
X9 X axis for eccentric machining
UR On NCU-U channels are defined which drive the spindles
and Z axes of NCU-A/NCU-B as link/container axes and
interpolate the highly dynamic X axis with fast interpolation
and position control cycles.

Cycles IPO cycle m is an integral multiple of IPO cycle n.


Position control cycle i may be greater than the fast IPO cycle n.
The slow IPO cycle m is used as communication cycle between NCU-A/NCU-B
and NCU-U.

Spindle speed The parts program manufacturer must first perform an OFFLINE calculation to
ascertain the maximum spindle speed to program so that the axes (especially
the X axis) are not overloaded when accelerating. If this maximum speed is
incorrect, the spindle speed is reduced at parts where one of the participating
axes would be overloaded. This in turn has a bearing on contour precision and
should therefore be avoided.

Contour deviations Spindle decelerations/accelerations lead to deviations from the programmed


contour because the cycles of NCU-A/NCU-B and NCU-U have different
lengths; therefore, the acceleration processes should already be terminated
before initiating eccentric contour machining.

Axis assignments Link axes may only be connected to NCUs that have the same IPO cycle as the
link cycle.
Example: Axis X9 on the fast NCU-U in Fig. 2-23 cannot be interpolated as a
link axis by NCU-A or NCU-B. However, axis Z4 can be interpolated by NCU-A,
NCU-B and NCU-U.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-115
Several Operator Panel Fronts and NCUs (B3) 10.00
06.05
2.11 NCU link with different interpolation cycles

Setpoint delay From NCU-U’s point of view, it is interpolating with the local X axis and the two
link axes C and Z when performing eccentric machining. To achieve a correct
contour, it is necessary to compensate for the time delay -- which occurs when
the setpoints are transferred to the link axes -- and the differences in clock
cycles by delaying the setpoints to the local X axis. This can be done by setting
MD 18720: MM_SERVO_FIFO_SIZE.
Use the following formula for assigning MM_SERVO_FIFO_SIZE:
MM_SERVO_FIFO_SIZE = 2 * link cycle / IPO cycle +1
This formula is only applicable for NCU-U and NCU-A/NCU-B as in Fig. 2-23.
Examples:
NCU-U:
Link cycle = 16 ms
IPO cycle n = 2 msec
The cycle ratio is therefore 8; the value of the formula 2 * 8 + 1 = 17
NCU-A/NCU-B:
Link cycle = 16 msec
IPO cycle m = 16 msec
The cycle ratio is therefore 1; the value of the formula 2 * 1 + 1 = 3
In some cases, an alarm is generated to indicate setting errors in MD 18720:
MM_SERVO_FIFO_SIZE.

Effect of the
SERVO_FIFO_SIZE
– All functions that use actual values when interpolating for setpoint
settings generation will be affected by the delay of the slower link cycle instead of
the fast IPO cycle. This also applies to the response at faults (alarms
that are issued to disable a mode group or for interpolatory braking).
– Alarm responses that are triggered directly in the servo are not affected
by any additional delay.
– Acceleration processes on the link axes are always output with the link
cycle and are therefore not exactly synchronous with the axes physically
connected to the fast NCU. Therefore, it is only advisable to use this
configuration with interpolating axes on NCUs with different IPO cycles if
you are machining with link axes that are only accelerated a little or not
at all. Thus the axes with high dynamic requirements must be physically
connected to the fast NCU.
– If high precision is required for the machining operation, the tool should
not have contact with the workpiece during acceleration/deceleration of
the axes. Otherwise contour violations will result.

Copyright © Siemens AG, 2005.


2/B3/2-116 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
2.11 NCU link with different interpolation cycles

– It is only permissible to switch axis containers with rotating spindles on


NCUs with IPO cycles that are equal to the link cycle. If it is possible to
delay the container rotation, switching is delayed until the spindle is
motionless. Otherwise alarm 4019 is issued. Axis container switching
with motionless axes and spindles is also permissible on the faster
NCUs. (See 2.6).

2.11.2 Different position control cycles

The general solution described in 2.11.1 also allows different position control
cycles for NCU-A/NCU-B and NCU-U as in Fig. 2-23.
By setting the parameters as described below, you can improve the quality for
some controller types.
When interpolating, the different cycle times are detected in fine interpolation
and in the position control due to the different position control cycles; they are
compensated for internally by delaying the setpoints for the axes with the faster
position control cycle.

Standard result If the axis with the slower position control cycle is not accelerated or is only
accelerated very slowly, contour errors are largely avoided. However, contour
errors will always occur when accelerating, therefore accelerations should not
take place while machining.

Special MD In some cases, it may be necessary to be able to adapt the delay (see
settings examples below).
MD 10065: POSCTRL_DESVAL_DELAY has been added for this purpose. This
allows you to adapt the setpoint delay in the position controller for the entire
NCU. You can use positive and negative values. The set values (time in
seconds, max. +/– 0.1sec) are added to the automatically calculated values.
See under “Information”.

Setting notes The required position setpoint delay depends on the controller structure used
(DSC (dynamic stiffness control), feedforward control); this delay is taken into
account when switching to the respective controller (e.g. FFWON (travel with
feedforward control ON)). The automatic setting function obtains the maximum
value for the position control cycles of the individual NCUs and delays the times
on all the NCUs, thus providing compensation at constant speed for the different
cycle times on all types of controller structures. In this manner, an additional
delay can even be active on the axis with the slowest position control cycle.
The controller structure with
the most compensation is operation of torque feedforward control or with
speed feedforward control and activated ramp encoder in the drive,
the least compensation is DSC or if feedforward control is deactivated.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-117
Several Operator Panel Fronts and NCUs (B3) 10.00
06.05
2.11 NCU link with different interpolation cycles

Information The setpoint delay for the three controller structures


– Without feedforward control (index 0)
– Speed feedforward control (index 1)
– Torque feedforward control (index 2)
is displayed in the read-only machine data MD 32990:
POSCTRL_DESVAL_DELAY_INFO.
Negative values in MD 10065: POSCTRL_DESVAL_DELAY reduce the values
for all three controller structures; positive values increase them.

Appropriate It is appropriate to change the settings in MD 10065:


changes to POSCTRL_DESVAL_DELAY in the following cases:
parameter settings – DSC is always activated or always run without feedforward control in
axis mode.
In these cases, additional delay is only necessary on the NCU with the
fast position controller cycle. Then the following steps are appropriate:
1.) MD 32990: POSCTRL_DESVAL_DELAY_INFO[0] on any axis on the
NCU with the slowest position controller cycle.
2.) Subtract this time from the effective value in MD 10065:
POSCTRL_DESVAL_DELAY on all NCUs.
– With the typically used controller structure, there will be a delay in MD
32990: POSCTRL_DESVAL_DELAY_INFO in the axis with the fast
position control cycle; the delay is not an integral multiple of the position
control cycle.
As there are particularly high dynamic performance requirements on the
axis with the fast position control cycle, even the necessary averaging
for generating the delay may lead to problems.
Example: Typically, machining is conducted with speed feedforward
control. In the axis X on NCU-U in Fig. 2-23 a value of 7 msec is read out
in MD 32990: POSCTRL_DESVAL_DELAY_INFO[1]; the position control
cycle on this NCU is 2 ms.
In this case it may be practical to increase MD 10065:
POSCTRL_DESVAL_DELAY by 1msec on all NCUs. The value of
8msec resulting in MD 32990: POSCTRL_DESVAL_DELAY_INFO[1] is
an integral multiple of the position control cycle of 2msec.

Copyright © Siemens AG, 2005.


2/B3/2-118 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
2.11 NCU link with different interpolation cycles

2.11.3 Supplementary conditions

S The option “different interpolation cycle” can only be used in conjunction with
NCU link (options, dependent on the axis number). The connected NCUs
must all be fitted with the link module hardware components.
– The configuration rules according to 2.8 apply.
– Link axes must be configured as described in Subsection 2.5.1.
– Axis containers can be used as described in Section 2.6.

S It is only permissible to use link axes on NCUs whose IPO cycle length is
the same as that of the link cycle,

S Axis container
– It is only permissible to switch axis containers with rotating spindles on
NCUs with IPO cycles that are equal to the link cycle.
– Axis containers can also be switched with motionless axes and spindle
on the NCUs with faster IPO cycles.

S Acceleration and deceleration processes on axes with slower interpolation


or position controller cycles will cause contour errors.

2.11.4 Activating NCU links with different interpolation cycles

S Setting different IPO cycle times in one link grouping


S Setting bit 1 in MD 18780: MM_NCU_LINK_MASK
S The option “NCU link with different interpolation cycles” is available.

Example Please refer to Chapter 6 for an example of eccentric turning using the “NCU
link with different interpolation cycles” function.

2.11.5 Different IPO cycles, behavior at power ON, RESET, etc.

The necessary setpoint delay on the servo causes a delay for two link cycles
during boot, at reset, at New Config, etc. At reset, an additional delay of at least
two link cycles is required to account for the necessary synchronization.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-119
Several Operator Panel Fronts and NCUs (B3) 10.00
06.05
2.12 Link grouping system of units

2.11.6 System variable with different interpolation cycles

There are no new system variables.


The existing general system variable $A_LINK_TRANS_RATE only displays a
value not equal to zero in the link communication cycle on an NCU with an
IPO cycle with a shorter length than the link communication cycle. The
displayed value is available to the user; the transfer is only really conducted in
this cycle.
If it is not possible to transfer all the link variables in one cycle, alarm 14764
“NCU link cannot transfer all link variables at once” is displayed as previously.
This alarm can be suppressed.

2.12 Link grouping system of units

Introduction Cross-NCU interpolations are possible in the link grouping with:

S Link axes (see 2.5)


S Lead link axes (see 2.10)
S Link axes on NCUs with different interpolation cycles (see 2.11)
With all constellations, it is only possible to achieve a correct result if all the
NCUs connected via the NCU link are using the same system of units.

Link grouping, To ensure consistency across the configuration, if the system of units is
global setting switched over on the operator panel of one NCU in the grouping, with SW 5 and
higher this affects the entire NCU grouping.
If the conditions:
S MD 10260: CONVERT_SCALING_SYSTEM=1.
S Bit 0 of MD 20110: RESET_MODE_MASK set in every channel
S All channels in the reset state
S Axes are not being traversed via JOG, DRF or the PLC
S Constant grinding wheel peripheral speed (GWPS) is not active
are met on all connected NCUs, the switchover is valid for all NCUs. If one of
the switchover conditions for the system of units is not fulfilled on one or more
NCUs, none of the NCUs will switch to the other unit system.
Actions such as parts program start or mode change are disabled for the
duration of the switchover.

Copyright © Siemens AG, 2005.


2/B3/2-120 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
2.12Link grouping system of units

Different systems It is only possible to use different unit systems in time intervals where there are
of units no cross-NCU interpolations even though the link grouping is installed. The
necessary settings must then be made NCU-specifically via G codes, as
described in
References: /FB/, G2, Velocities, Setpoint/Actual Value Systems,
Closed-Loop Control.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/2-121
Several Operator Panel Fronts and NCUs (B3) 10.00
06.05
2.12 Link grouping system of units

Notes

Copyright © Siemens AG, 2005.


2/B3/2-122 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
3.1 Several operator panels and NCUs with control unit management option

Supplementary Conditions 3
3.1 Several operator panels and NCUs with control unit
management option

Configuring The number of configurable control units/NCUs is only limited by the availability
of bus addresses on the individual bus segments of the different bus types.
The restrictions relating to the current SW version specified in the catalog or
release notes apply.

Availability The control unit management option is available in SW 5.3 and higher.

SW 6.3 The control unit management option is expanded to provide a link of up to nine
MMCs to a total of nine NCUs. The conditions for use of this option stipulated in
previous chapters apply as before.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/3-123
Several Operator Panel Fronts and NCUs (B3) 06.05
3.2 Several operator panel fronts and NCUs, standard functionality

3.2 Several operator panel fronts and NCUs, standard


functionality

Availability with “Several operator panel fronts and several NCUs” configuration:
SW 3.1 and later Available in the basic version. The number of NCUs that can be connected is
limited to 1 and the operator panel fronts to 2. One of the operator panel fronts
must be an OP030.
Programming language Step 7
can be used.

Expansions Configuration “1 operator panel front and up to 3 NCUs”


SW 3.2 or higher available according to Figs. 1–2 and 1–3.
When the link is created via the MPI line (187.5 kbps), a PLC-CPU315 must be
used if the configuration includes more than one NCU since this PLC allows
variable setting of the NC address.
Addresses must likewise be specified for exchange of data between PLCs via
PROFIBUS-DP (PLC-CPU315 only) or for global data (duplicate address
assignments).

Expansions Configuration “1 operator panel front and up to 4 NCUs and locally 1 MMC
SW 3.5 or higher each”
available according to Fig. 1–4.
Data exchange between NC and PLC is now also available with the PLC-CPU
314.

Expansions Operation of the m:n connection


SW 4 or higher via the channel menu (see Subsection 2.1.11) which can be selected via the
“Switchover channel” key.
Prerequisite for the channel menu is a configuration via the NETNAMES.INI file
(see /IAD/, Installation and Start-up Guide 840D, section MMC).
The channel menu function is an option.
Bus connection:
The address space (previously 0, ..., 15) has been extended to (0, ..., 31).

Note
If an address > 15 is used, all components connected to the bus must be
capable of processing addresses between 0 and 31.

Copyright © Siemens AG, 2005.


2/B3/3-124 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
3.6 NCU link with different interpolation cycles

3.3 Link axes

Availability
1. Precondition is that the NCUs are networked with link modules.
2. The link axis function is an option that is available from SW 5 for NCU
573.2 in variants for 12 axes and 31 axes; it is required for each link axis
(max. 32). It is determined by number.
3. The axis container function is an option that is available from SW 5 for
NCU 573 12 axes/31 axes; it is required for each container. If a link module
is employed, this function can be used without the additional option.
References: /PHD/, Configuring Guide NCU 571-573.2

3.4 Axis container

Availability Axis container is an option that is available for the NCU 573.2 with SW 5 and
higher. In cases where axis containers are configured for link axes, the
supplementary conditions for such containers as defined in Section 3.3 “Link
axes” also apply.

3.5 Lead link axis

Availability Software Version 6 and higher supports cross-NCU coupling with lead link axes.
The functionality builds on the NCU link. Therefore, the NCU link options must
be installed.

3.6 NCU link with different interpolation cycles

Availability SW 6 and higher offers the NCU link with different interpolation cycles as an
option.
All requirements that apply for link axes must be fulfilled.
(See 3.3).
If the non-local axes – seen from the point of view of the NCU with the fast
interpolation cycle – are container axes (e.g. with multi-spindle
turning machines) the corresponding option (see 3.4) must also be installed.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/3-125
Several Operator Panel Fronts and NCUs (B3) 06.05
3.6 NCU link with different interpolation cycles

Notes

Copyright © Siemens AG, 2005.


2/B3/3-126 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
4.1 Machine data for several operator panel fronts

Data Descriptions (MD, SD) 4


4.1 Machine data for several operator panel fronts

10134 MM_NUM_MMC_UNITS
MD number Resource units for MMC communications partners that are possible at the same time
Default setting: 6 Minimum input limit: 1 Maximum input limit: 10
(FM-NC: 4, NCU571: 3, 810D: 3,
HMI Emb. and Advanced: 2, OP030: 1)
Changes effective after POWER ON Protection level: 2 / 2 Unit: –
Data type: DWORD Applies from SW: 3.2
Meaning: Number of simultaneously possible MMC communication partners with which the NCU can
exchange data.
The value influences how many communications jobs can be managed by the NC.
The higher the value, the more MMCs can be simultaneously connected to the NC.
Depending on the value entered in the machine data, DRAM is made available in the NCU
for this function. Instructions regarding the modification of memory areas must be observed
(see FB2/S7/).
The unit of MD 10134 is a “resource unit”.
A standard OP030 requires one, an HMI Emb. or Advanced requires two resource units.
OEM variants may require more or fewer resources.

S Setting the value lower (than would normally be required by the number of connected
MMCs) does not necessarily cause problems. Occasionally operations may not work if
several communication-intensive operator actions (e.g. loading program) are being
conducted at the same time: Alarm 5000 is displayed. The operator action must be
repeated.

S If the value is set higher, more dynamic memory than necessary will be used up. If the
memory is required for other purposes, the value should be reduced accordingly.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/4-127
Several Operator Panel Fronts and NCUs (B3) 09.99
10.00
06.05
4.2 Machine data for link communication

4.2 Machine data for link communication


4.2.1 General machine data

10002 AXCONF_LOGIC_MACHAX_TAB[n]
MD number List of machine axes available on an NCU
(logical NCU machine axis image)
Default setting: AX1, AX2, ... Minimum input limit: – Maximum input limit: –
Changes effective after POWER ON Protection level: 1 / 1 Unit: –
Data type: STRING Applies from SW: 5
Meaning: MD AXCONF_LOGIC_MACHAX_TAB maps channel axes onto:
1. Local axes (default: AX1, AX2 ... AX31)
The entry $MN_AXCONF_LOGIC_MACHAX_TAB[n] = AX3 assigns local axis AX3
to axis index n. (For n = 3 the default setting AX3 is available. Therefore MD blocks
for Software Version 4 and lower are compatible in SW 5).
2. Link axes (axes that are physically connected to another NCU)
The entry $MN_AXCONF_LOGIC_MACHAX_TAB[n] = NCj_AXi
assigns axis AXi on NCU j to axis index n (link axis).
Limits:
n Machine axis address (of local NCU) 1 ... 31
j NCU number 1 ... 16
i Machine axis address (of local/remote NCU) 1 ... 31
3. Axis containers which in turn contain local or link axes.
The entry $MN_AXCONF_LOGIC_MACHAX_TAB[n] = CTr_SLs
assigns container r and slot s to axis index n.
Limits:
n Machine axis address (of local NCU) 1 ... 31
r Container number 1 ... 16
s Slot number (location) in containers 1 ... 32
If several NCUs refer to the same machine axis in the NCU link grouping via this MD, it is
necessary to define in axial machine data MD 30554:
AXCONF_ASSIGN_MASTER_NCU which NCU is the master NCU, i.e. which NCU is to
generate the setpoints for the position controller after boot.
MD irrelevant for ... ... Systems without link modules
Application example(s) Initial.ini (extract) on NCU3:
$MN_AXCONF_LOGIC_MACHAX_TAB[4] = NC5_AX7
CHANDATA(2)
$MC_AXCONF_MACHAX_USED[1] = 5
$MC_AXCONF_CHANAX_NAME_TAB[1] = MyAx_Y
Part program block “G0 MyAx_Y = 100” running on NCU3/channel 2 traverses the 7th axis
of NCU 5.
Related to .... AXCT_AXCONF_ASSIGN_TABi (create entries in containers i)
AXCONF_ASSIGN_MASTER_NCU

10065 POSCTRL_DESVAL_DELAY
MD number Position setpoint.Delay
Default setting: 0.0 Minimum input limit: –0.1 Maximum input limit: 0.1
Changes effective after POWER ON Protection level: 2 / 7 Unit: s
Data type: DOUBLE Applies from SW: 6
Meaning: Setpoint delay in position controller.

A setpoint delay can be parameterized in the


position controller with this machine data. This is used for the NCU link if
different position control cycles are to be parameterized on the NCUs
and these axes are still supposed to interpolate with one another.
This MD is for optimizing the automatic setting function.
MD irrelevant for ... ... Missing NCU link option
Related to .... MD 32990: POSCTTRL_DESVAL_DELAY_INFO

Copyright © Siemens AG, 2005.


2/B3/4-128 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
4.2 Machine data for link communication

10087 SERVO_FIFO_SIZE
(from SW 6: 18720) MM_SERVO_FIFO_SIZE
MD number Size of data buffer between interpolator and position control
Default setting: 2 Minimum input limit: 2 Maximum input limit: 3

Changes effective after POWER ON Protection level: 3 / 2 Unit: –


Data type: DWORD Applies from SW: 5.2
Meaning: The MD specifies the size of the data buffer between the interpolator and position control.
If several NCUs for rotary indexing machines/multi-spindle turning machines are connected
via the NCU link, the value for all connected NCUs must be set to 3. This setting compen-
sates for the difference in transmission time between local setpoints and set points from
another NCU via the NCU link.

11398 AXIS_VAR_SERVER_SENSITIVE
MD number Response of the AXIS-VAR server to errors
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: BYTE Applies from SW: 5
Meaning: If the server cannot supply any values for an axis (e.g. because the axis concerned is a link
axis), then it returns a default value (generally 0).

For the purpose of testing, this machine data can be used to set the axis data server sensi-
tively so that it returns an error message rather than default values.
0: Default value
1: Error message
MD irrelevant for ... ... Systems without link modules
Related to .... MM_NCU_LINK_MASK

12510 NCU_LINKNO
MD number NCU number in an NCU group
Default setting: 1 Minimum input limit: 1 Maximum input limit: 16
Changes effective after POWER ON Protection level: 1 / 1 Unit: –
Data type: DWORD Applies from SW: 5
Meaning: Number or name for identifying an NCU within an NCU grouping.
In an NCU grouping (NCU cluster), the NCUs are interconnected via a link bus.
MD irrelevant for ... ... Systems without link modules
Application example(s) See Chapter 2 “Configuration of link axes”
Related to .... MM_NCU_LINK_MASK

12520 LINK_TERMINATION
MD number NCU numbers for which bus terminating resistors are active
Default setting: 0 Minimum input limit: 0 Maximum input limit: 15
Changes effective after POWER ON Protection level: 1 / 1 Unit: –
Data type: BYTE Applies from SW: 5
Meaning: LINK_TERMINATION defines for which NCUs the bus terminating resistors must be acti-
vated by the link module for the timing circuit.
Related to .... MM_NCU_LINK_MASK

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/4-129
Several Operator Panel Fronts and NCUs (B3) 06.05
4.2 Machine data for link communication

12530 LINK_NUM_OF_MODULES
MD number Number of NCU link modules
Default setting: 2 Minimum input limit: 2 Maximum input limit: 16
Changes effective after POWER ON Protection level: 1 / 1 Unit: –
Data type: DWORD Applies from SW: 5
Meaning: The machine data specifies how many link modules are taking part in the link communica-
tion.
MD irrelevant for ... ... Systems without link modules
Related to .... MM_NCU_LINK_MASK

12540 LINK_BAUDRATE_SWITCH
MD number Link bus baud rate
Default setting: 9 Minimum input limit: 0 Maximum input limit: 9
Changes effective after POWER ON Protection level: 1 / 1 Unit: –
Data type: DWORD Applies from SW: 5
Meaning: The baud rate selected for link communication is defined by the values entered here :
Set value Rate
0 9.600 Kbaud
1 19.200 Kbaud
2 45.450 Kbaud
3 93.750 Kbaud
4 187.500 Kbaud
5 500.000 Kbaud
6 1.500 Mbaud
7 3.000 Mbaud
8 6.000 Mbaud
9 12.000 Mbaud
MD irrelevant for ... ... Systems without link modules
Related to .... MM_NCU_LINK_MASK

12550 LINK_RETRY_CTR,
MD number Maximum number of message frame repeats in event of error
Default setting: 4 Minimum input limit: 1 Maximum input limit: 15
Changes effective after POWER ON Protection level: 1 / 1 Unit: –
Data type: DWORD Applies from SW: 5
Meaning: Maximum number of message frame repeats in event of error. If an error is detected during
data transfer, the transmission can be repeated as often as specified in the MD.

Baud rate Recommended repetition value

187.500 Kbaud 1
500.000 Kbaud 1
1.500 Mbaud 1
3.000 Mbaud 2
6.000 Mbaud 3
12.000 Mbaud 4

MD irrelevant for ... ... Systems without link modules


Related to .... MM_NCU_LINK_MASK

Copyright © Siemens AG, 2005.


2/B3/4-130 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
4.2 Machine data for link communication

12701 ... 12716 AXCT_AXCONF_ASSIGN_TAB1[s] ... AXCT_AXCONF_ASSIGN_TAB16[s]


MD number List of axes in axis container 1, ..., 16
Default setting: “ ” (empty string) Minimum input limit: – Maximum input limit: –
Changes effective after POWER ON Protection level: 7 / 2 Unit: –
Data type: STRING Applies from SW: 5
Meaning: Assignment of an axis container slot (slot s) to a machine axis or link axis. Up to 32 slots
can be assigned to axes in an axis container.
Notation for entries:
NCm_AXn with NCU number m: 1...16 and machine axis address n: 1... 31
Example:
NC2_AX1 ; The axis is on NCU2 where it is the 1st machine axis.
AX5 ; Local axis 5 with only one NCU; the axis container mechanism is used
; only by more than one channel on an NCU.
The reference to an axis container slot of a channel is defined by machine data
MD $MC_AXCONF_MACHAX_USED and
MD $MN_AXCONF_AXCONF_LOGIC_MACHAX_TAB.
The axis that is actually assigned at a specific time depends on the container rotation state.
All channels that access an axis container use the entries stored here. If channels from
different NCUs access this container, pay attention to consistency across the NCUs!
Example:
CHANDATA(1)
$MC_AXCONF_MACHAX_USED[4]=9
$MN_AXCONF_LOGIC_MACHAX_TAB[8]=“CT1_SL1”
$MN_AXCT_AXCONF_ASSIGN_TAB1[0]=“NC1_AX1”
$MN_AXCT_AXCONF_ASSIGN_TAB1[1]=“NC2_AX1”
This machine data is distributed via the NCU link.
If $MA_AXCONF_ASSIGN_MASTER_CHAN is set for a container axis, then
$MC_AXCONF_MACHAX_USED in the assigned channel must refer to the entry in
$MN_AXCONF_LOGIC_MACHAC_TAB. This contains a reference to the axis container
slot to which this axis is assigned in the default setting. A power-up alarm is otherwise
generated.
Related to .... AXCONF_LOGIC_MACHAX_TAB,

12750 AXCT_NAME_TAB
MD number List of axis container names
Default setting: “CT1”, “CT2”, ... “CT16” Minimum input limit: – Maximum input limit: –
Changes effective after POWER ON Protection level: 1 / 1 Unit: –
Data type: STRING Applies from SW: 5.2
Meaning: A name can be assigned to each axis container. The axis container rotation
commands AXCTSWE and AXCTSWED can be used in conjunction with these names. If
no container names are defined, channel axis names must be used (SW 5.1) which ad-
dress the desired axis container via the logical machine axis image. This also applies to the
addressing of system variables for axis containers.
The default axis container names are CT1, CT2, ..., CT16
Application example(s) The name of the 1st axis container is AXCT1. Definition in MD:
$MN_AXCT_NAME_TAB[0] = “AXCT1”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/4-131
Several Operator Panel Fronts and NCUs (B3) 09.99
10.00
06.05
4.2 Machine data for link communication

18700 MM_SIZEOF_LINKVAR_DATA
MD number Size of the NCU link variable memory
Default setting: 0 Minimum input limit: 0 Maximum input limit: 100
Changes effective after POWER ON Protection level: 7 / 2 Unit: –
Data type: DWORD Applies from SW: 5
Meaning: Defines the number of bytes of link memory for NCU-global data.

18720 MM_SERVO_FIFO_SIZE
MD number Size of data buffer between interpolator and position control
Default setting: 2 Minimum input limit: 2 Maximum input limit: 35
Changes effective after POWER ON Protection level: 3 / 2 Unit: –
Data type: DWORD Applies from SW: 6.1
Meaning: The MD specifies the size of the data buffer between the interpolator and position control.
If several NCUs for rotary indexing machines/multi-spindle turning machines are connected
via the NCU link, the value for all connected NCUs must be set to 3. This setting compen-
sates for the difference in transmission time between local setpoints and set points from
another NCU via the NCU link.
In order to ensure the same time sequences for the leading axis and the following axes
when using a lead link axis, the size of the servo buffer on the NCU which is supplying the
master value must be set to 4. The default value 2 is maintained on the NCUs that are in-
terpolating the following axes.
When interpolating via NCUs with different IPO cycles, the maximum cycle ratio of the link
cycle to IPO cycle (of the fast NCU) can be 17. Use the following formula for assigning
MM_SERVO_FIFO_SIZE:
MM_SERVO_FIFO_SIZE = 2 * link cycle / IPO cycle +1
This formula applies for the NCU with the fast IPO cycle and the NCU with the slow IPO
cycle. Examples:
NCU with fast IPO cycle:
Link cycle = 16 ms
IPO cycle n = 2 ms
The cycle ratio is 8, the value of the formula 2 * 8 + 1 = 17
The value 3 must be set on the slow NCU.

18780 MM_NCU_LINK_MASK
MD number Activation of NCU link communication
Default setting: 0 Minimum input limit: 0 Maximum input limit: 3
Changes effective after POWER ON Protection level: 1 / 1 Unit: –
Data type: DWORD Applies from SW: 5
Meaning: Activation of NCU link communication.
Bit-coded activation data.
Bit 0 must be set to activate link communication.
(can be used for start-up of local axes [1:1], before link connections are powered up)
If, in addition, enabling is to be activated for the NCU link with different IPO and position
controller cycles (SW 6), then bit 1 must also be set.
Related to .... IS_LOCAL_LINK_AXIS, NCU_LINK_NO, LINK_TERMINATION,
LINK_NUM_OF_MODULES, LINK_BAUDRATE_SWITCH, LINK_RETRY_CTR

18781 NCU_LINK_CONNECTIONS
MD number Number of internal link connections
Default setting: 0 Minimum input limit: 0 Maximum input limit: 32
Changes effective after POWER ON Protection level: 0 / 3 Unit: –
Data type: DWORD Applies from SW:

Copyright © Siemens AG, 2005.


2/B3/4-132 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
4.2 Machine data for link communication

18781 NCU_LINK_CONNECTIONS
MD number Number of internal link connections
Meaning: Value = 0:
The software determines the internal link connections automatically

Value > 0:
Number of internal link connections from each NCU to every other NCU. These link con-
nections record the non-cyclic messages. Each of these connections can transmit 240
bytes of raw data.
Non-cyclic messages occur in the case of alarms, container switches and link variables
MD irrelevant for ... ... Systems without link modules
Fig. 2-17, 2-18
Application examples See Section 2.9
Special cases, errors, ... Total of cyclic and non-cyclic connections > 32.
...
Related to .... No. of link axes, lead link axes, no. of NCUs, no. of link modules
References

18790 MM_MAX_TRACE_LINK_PIONTS
MD number Size of trace data buffer for NCU link
Default setting: 8 Minimum input limit: 0 Maximum input limit: 500
Changes effective after POWER ON Protection level: 1 / 1 Unit: –
Data type: DWORD Applies from SW: 5
Meaning: MM_MAX_TRACE_LINK_DATAPOINTS defines the size of an internal data buffer contain-
ing the trace recordings for the NCU link functionality.
The MD is evaluated only if bit 0 is set in MM_TRACE_LINK_DATA_FUNCTION.
Related to .... TRACE_SCOPE_MASK, MM_TRACE_DATA_FUNCTION,
MM_MAX_TRACE_DATAPOINTS,
TRACE_STARTTRACE_EVENT, TRACE_STARTTRACE_STEP,
TRACE_STOPTRACE_EVENT, TRACE_STOPTRACE_STEP,
TRACE_VARIABLE_NAME, TRACE_VARIABLE_INDEX,
MM_TRACE_LINK_DATA_FUNCTION

4.2.2 Channelspecific machine data

28160 MM_NUM_LINKVAR_ELEMENTS.
MD number Number of write elements for the NCU link variables
Default setting: 0 Minimum input limit: 0 Maximum input limit: –
Changes effective after POWER ON Protection level: 7 / 2 Unit: –
Data type: DWORD Applies from SW: 5
Meaning: Defines the number of elements available to the user for writing link variables ($A_DLx)
from the parts program.
Each write process to a link variable requires a write element. Enabling the element is syn-
chronous with the next traversing block. This way the MD defines the number of global link
variables that can be written from a parts program block. Enabled write elements can be
reused for new write processes.
The memory requirements per element are approx. 24 bytes. One element is required to
write one link variable. The element is enabled in synchronism with the next motion block.
The elements are also used for block search with NCU link variables.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/4-133
Several Operator Panel Fronts and NCUs (B3) 10.00
06.05
4.2 Machine data for link communication

4.2.3 Axis-specific machine data

30554 AXCONF_ASSIGN_MASTER_NCU
MD number Initial setting defining which NCU generates setpoints for the axis
Default setting: 0 Minimum input limit: 0 Maximum input limit: 16
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: BYTE Applies from SW: 5.3
Meaning: The MD is evaluated only if NCU link communication is configured.
If a machine axis is activated via $MC_AXCONF_LOGIC_MACHAX_TAB in several NCUs
of a grouping, then a master NCU must be defined. This master NCU will be assigned the
task of generating setpoints for the axis during power-up.
In the case of axes activated in only one NCU, the number of the relevant NCU or 0 must
be entered here. Any other entry will generate an alarm during power-up.
Related to .... MD 10002: AXCONF_LOGIC_MACHAX_TAB,
MD 30550: AXCONF_ASSIGN_MASTER_CHAN

30560 IS_LOCAL_LINK_AXIS
MD number Axis is a local link axis
Default setting: 0 Minimum input limit: 0 Maximum input limit: 0
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: BOOLEAN Applies from SW: 5
Meaning: The MD is evaluated only if the NCU link function “$MN_MM_NCU_LINK_MASK = 1” has
been activated, but NCU link communication is not yet functional, e.g. owing to the fact that
not all NCUs in the NCU link grouping have yet been started up.
Setting IS_LOCAL_LINK_AXIS = 0 determines that the axis will not be linked to the local
NCU during power-up, because this would require an external partner (another NCU).
Drive data can, however, be supplied to the drive for this axis.
MD irrelevant for ... ... Systems without link modules
Related to .... MM_NCU_LINK_MASK

32990 POSCTRL_DESVAL_DELAY_INFO
MD number Current position setpoint delay
Default setting: 0.0 Minimum input limit: – Maximum input limit: –
Changes effective after –, read-only Protection level: 0 / 7 Unit: s
Data type: DOUBLE Applies from SW: 6
Meaning: This MD displays the position controller’s additional setpoint delay
with the current controller structure. With NCU link with different
position controller cycles, the setting is performed automatically and can be changed for
the entire NCU in
MD 10065: POSCTRL_DESVAL_DELAY.
The value without feedforward control is displayed in index 0.
The value with speed feedforward control is displayed in index 1.
The value with torque feedforward control is displayed in index 2.
MD irrelevant for ... ... Systems without NCU link.
Related to .... MD 10065: POSCTRL_DESVAL_DELAY

Copyright © Siemens AG, 2005.


2/B3/4-134 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
4.3 Setting data for link communication

4.3 Setting data for link communication

41700 AXCT_SWWIDTH
SD number Axis container rotation setting
Default setting: 1 Minimum input limit: 1 Maximum input limit: –
Changes effective after NewConfig Protection level: 3 / 3 Unit: –
Data type: BYTE Applies from SW: 5
Meaning: Setting specifying how many increments an axis container must rotate.
The SD is NCU-global.
As an axis container in which not only local axes are administered is NCU-global, in this
case SD 41700 is also NCU-global. All NCUs whose axes appear in the axis container use
the increment value stored here.
All channels that access an axis container use the increment value stored here.
If a value which is higher than the number of slots occupied in the relevant axis
container is entered, the value is calculated modulo in relation to the number of occupied
slots.
Unlike other setting data, a NEWCONF must be performed to refresh this setting data.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/4-135
Several Operator Panel Fronts and NCUs (B3) 06.05
4.3 Setting data for link communication

Notes

Copyright © Siemens AG, 2005.


2/B3/4-136 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
5.1 Defined logical functions/defines

Signal Descriptions 5
5.1 Defined logical functions/defines

Note
The specified values must be entered in the interface areas indicated in the
tables below. The values must be checked to distinguish between the logical
functions and results.

Table 5-1 BUSTYP

Name Value Interface DB19 Meaning


MPI 1 DBW 100,102,104, MMC to MPI, 187.5 kbaud
120, 130
bits 8–15
OPI 2 ” MMC to MPI, 1.5 kbaud

STATUS

Table 5-2 Functions

Name: Status Value Interface DB19 Meaning


OFFL_REQ_PLC 1 Online interface PLC to MMC: PLC would like to suppress MMC,
1. : DBB 124 sends offline request to MMC
2. : DBB 134
OFFL_CONF_PLC 2 Online interface MMC to PLC: Acknowledgement of OFFL_REQ_PLC
1. : DBB 124 The meaning of the signal is dependent on Z_INFO
2. : DBB 134 DBB 125 or DBB 135
OFFL_REQ_OP 3 Online interface MMC to PLC: MMC would like to go offline from this
1. : DBB 124 NCU and outputs an offline request
2. : DBB 134
OFFL_CONF_OP 4 Online interface PLC to MMC: Acknowledgement of OFFL_REQ_OP
1. : DBB 124 The meaning of the signal is dependent on Z_INFO
2. : DBB 134 DBB 125 or DBB 135
ONL_PERM 5 Online request inter- PLC to MMC: PLC notifies MMC as to whether it can
face go online or not.
DBB 108 The meaning of the signal is dependent on
PAR_Z_INFO: DBB109
S_ACT 6 Online interface MMC to PLC: MMC goes online or changes operat-
1. : DBB 124 ing focus.
2. : DBB 134 The meaning of the signal is dependent on Z_INFO
DBB 125 or DBB 135

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/5-137
Several Operator Panel Fronts and NCUs (B3) 06.05
5.1 Defined logical functions/defines

Table 5-2 Functions

Name: Status Value Interface DB19 Meaning


OFFL_REQ_FOC 7 Online interface MMC to PLC: MMC would like to remove operating
1. : DBB 124 focus from this NCU
2. : DBB 134
OFFL_CONF_FOC 8 Online interface PLC to MMC: Acknowledgement of OFFL_REQ_FOC
1. : DBB 124 The meaning of the signal is dependent on Z_INFO
2. : DBB 134 DBB 125 or DBB 135
ONL_REQ_FOC 9 Online interface MMC to PLC: MMC would like to set operating focus
1. : DBB 124 to this NCU
2. : DBB 134
ONL_PERM_FOC 10 Online interface PLC to MMC: Acknowledgement of ONL_REQ_FOC
1. : DBB 124 The meaning of the signal is dependent on Z_INFO
2. : DBB 134 DBB 125 or DBB 135

Copyright © Siemens AG, 2005.


2/B3/5-138 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
5.1 Defined logical functions/defines

Table 5-3 Z_INFO

Name Value Interface DB19 Meaning


DISC_FOC 9 DBB125 MMC switches operating focus to another NCU.
DBB135
OK 10 DBB 109 bits 0–3 Positive acknowledgement
DBB125
DBB135
CONNECT 11 DBB125 MMC has gone online on this NCU.
DBB135
MMC_LOCKED 13 DBB 109 bits 0–3 MMC has set switchover disable.
DBB125 Processes which must not be interrupted by a
DBB135 switchover operation are currently in progress on this
MMC.
PLC_LOCKED 14 DBB 109 bits 0–3 The MMC switchover disable is set in the MMC-PLC
DBB125 interface. MMC cannot go offline from this NCU or
DBB135 change operating focus.
PRIO_H 15 DBB 109 bits 0–3 MMCs with a higher priority are operating on this
DBB125 NCU. MMC cannot go online to this NCU.
DBB135

Table 5-4 STATUS and Z_INFO can be combined as follows

Name: Status Z_INFO Meaning


OFFL_REQ_PLC OK PLC would like to suppress online MMC and sends the
offline request
OFFL_CONF_PLC OK MMC positively acknowledges the offline request from the
PLC. The MMC then goes offline.
OFFL_CONF_PLC MMC_LOCKED MMC outputs negative acknowledgement to offline re-
quest.
MMC does not go offline because uninterruptible pro-
cesses are in progress on the MMC.
OFFL_REQ_OP OK MMC would like to go offline from the online NCU and out-
puts an offline request
OFFL_CONF_OP OK PLC positively acknowledges the offline request.
The MMC then goes offline from this NCU.
OFFL_CONF_OP PLC_LOCKED PLC outputs negative acknowledgement to offline request
from MMC.
User has set the MMC switchover disable, MMC cannot
go offline, MMCx_SHIFT_LOCK = TRUE, x=1 or 2, 1st or
2nd MMC-PLC interface.
ONL_PERM No. of MMC-PLC PLC issues the online enabling command to the request-
online interface, ing MMC. MMC can then go online to this NCU. Contents
OK of Z_INFO:
Bit 0 ..3: OK
Bit 4 .. 7: No. of the MMC-PLC online interface to which
MMC must be connected:
1 First MMC-PLC online interface
2 Second MMC-PLC online interface
ONL_PERM MMC_LOCKED The requesting MMC cannot go online.
Two MMCs on which uninterruptible processes are in
progress are connected online to this NCU. The PLC can-
not suppress either of the two MMCs.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/5-139
Several Operator Panel Fronts and NCUs (B3) 06.05
5.1 Defined logical functions/defines

Table 5-4 STATUS and Z_INFO can be combined as follows

Name: Status Z_INFO Meaning


ONL_PERM PLC_LOCKED The requesting MMC cannot go online.
User has set the MMC switchover disable,
MMCx_SHIFT_LOCK = TRUE,
x=1 or 2, 1st or 2nd MMC online interface.
ONL_PERM PRIO_H The requesting MMC cannot go online.
Two MMCs that are both higher priority than the request-
ing MMC are connected online to the NCU.
The PLC cannot suppress either of the two MMCs.
S_ACT CONNECT The requesting MMC has gone online.
The PLC now switches on the MMC sign-of-life monitoring
function.
S_ACT DISC_FOCUS Server MMC has disconnected the operating focus from
this NCU.
OFFL_REQ_FOC OK Server MMC would like to disconnect the operating focus
from this NCU and outputs an offline focus request.
OFFL_CONF_FOC OK PLC positively acknowledges the focus offline request.
Server MMC can disconnect the operating focus.
OFFL_CONF_FOC PLC_LOCKED PLC negatively acknowledges the offline focus request.
User has set the MMC switchover disable, server MMC
cannot disconnect the operating focus,
MMCx_SHIFT_LOCK = TRUE.
x=1 or 2, 1st or 2nd MMC-PLC interface.
ONL_REQ_FOC OK Server MMC would like to set the operating focus on this
NCU and outputs an online focus request.
ONL_PERM_FOC OK PLC positively acknowledges the online focus request.
Server MMC then switches the operating focus to this
NCU.
ONL_PERM_FOC PLC_LOCKED PLC negatively acknowledges the online focus request.
User has set the MMC switchover disable, server MMC
cannot set the operating focus, MMCx_SHIFT_LOCK =
TRUE,
x=1 or 2, 1st or 2nd MMC-PLC interface.

Copyright © Siemens AG, 2005.


2/B3/5-140 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
5.2 Interfaces in DB 19 for M:N

5.2 Interfaces in DB 19 for M:N


The MMC-PLC interface in DB19 is divided into 3 areas

Online request The online request sequence is executed on this interface if an MMC wants to
interface go online.

MMC writes its client ID to ONL_REQUEST and waits for the return of the client
ID in
ONL_CONFIRM.
After the positive acknowledgement from the PLC, the MMC sends its
parameters and waits for online permission (in PAR_STATUS, PAR_Z_INFO).

MMC parameter transfer:


Client identification –> PAR_CLIENT_IDENT
MMC type –> PAR_MMC_TYP
MCP address –> PAR_MSTT_ADR
With the positive online permission, the PLC also sends the number of the
MMC-PLC online interface DBB109.4–7 to be used by the MMC.
The MMC then goes online and occupies the online interface assigned by the
PLC.

Online interfaces Two MMCs can be connected online to one NCU at the same time.
The online interface is available for each of the two online MMCs separately.
After a successful online request sequence, the MMC receives the number of its
online interface from the PLC.
The MMC parameters are then transferred to the corresponding online interface
by the PLC.
The MMC goes online and occupies its own online interface via which data are
then exchanged between the MMC and PLC.

MMC data User data from/to the MMC are defined on these:
interfaces
– DBB 0–49 MMC 1 interface
– DBB 50–99 MMC 2 interface
These data and signals are always needed to operate MMCs.

M:N sign-of-life This is an additional monitoring function which must not be confused with the
monitoring MMC sign-of-life monitor. For further information, please refer to the relevant
signals.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/5-141
Several Operator Panel Fronts and NCUs (B3) 06.05
5.2 Interfaces in DB 19 for M:N

In certain operating states, MMCs with activated M:N switchover


(parameterizable in NETNAMES.INI) must be capable of determining from a
PLC data whether they need to wait or not before linking up with an NCU.
Example:
MMC with an activated control unit switchover function must be capable of
starting up an NCU without issuing an online request first.
MMC must go online for service-related reasons.
The operation is coordinated in the online request interface via data DBW110:
M_TO_N_ALIVE
The M:N sign of life is a ring counter which is incremented cyclically by the PLC
or set to a value of 1 when it overflows.
Before an MMC issues an online request, it must check the sign of life to
establish whether the M:N switchover is activated in the PLC.
Procedure:
MMC reads the sign of life at instants T0 and T0 + 1.
Case 1: Negative acknowledgement for read operation, DB19 does
not exist.
MMC goes online without prior online request.
Case 2: m_to_n_alive = 0
Control unit switchover not activated.
MMC goes online without prior online request.
Case 3: m_to_n_alive (T0) = m_to_n_alive (T0+1)
Control unit switchover not activated
MMC goes online without prior online request.
Case 4: m_to_n_alive (T0) <> m_to_n_alive (T0+1)
Control unit switchover activated
Cases 1 to 3 apply only under special conditions and not in normal operation.

Online request
interface

No. Name
Possible value Meaning

DB19 DBW100 ONL_REQUEST


Client_Ident MMC would like to go online and use the online request interface. It first writes
its Client_Ident as a request.

Bit 8 .. 15: Bus type:


MPI 1 or
MCP 2
Bit 0 .. 7: MMC bus address

Copyright © Siemens AG, 2005.


2/B3/5-142 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
5.2 Interfaces in DB 19 for M:N

DB19 DBW102 ONL_CONFIRM.


Client_Ident If the online request interface is not being used by another MMC, the PLC re-
turns the Client identification as positive acknowledgement.
Bit 8 .. 15: Bus type:
MPI 1 or
MCP 2
Bit 0 .. 7: MMC bus address

DB19 DBW104 PAR_CLIENT_IDENT MMC parameter transfer to PLC


Client_Ident Bit 8 .. 15: Bus type:
MPI 1 or
OPI 2
Bit 0 .. 7: MMC bus address

DB19 DBB106 PAR_MMC_TYP MMC parameter transfer to PLC


MMC type from NETNAMES.INI Type properties of the MMC configured in file NETNAMES.INI. Evaluated by
the PLC when MMC is suppressed (server, main/secondary operator panel, ...),
see description of file NETNAMES.INI

DB19 DBB107 PAR_MSTT_ADR MMC parameter transfer to PLC


MCP address from NETNAMES.INI Address of MCP to be switched over or activated/deactivated with the MMC.
Parameter from NETNAMES.INI
255 No MCP is assigned to MMC, no MCP will be activated/deactivated

DB19 DB108 PAR_STATUS PLC sends MMC pos./neg. online permission


ONL_PERM (5) PLC notifies MMC as to whether it can go online or not. The meaning of the
signal is dependent on PAR_Z_INFO:

DB19 DBB109 PAR_Z_INFO PLC sends MMC pos./neg. online permission


No. of MMC-PLC online interface, OK PLC issues the online enabling command to the requesting MMC.
(10) MMC can then go online to this NCU.
Bit 0 ..3: OK
Bit 4 .. 7: No. of the MMC-PLC online interface to which
MMC must be connected:
1 First MMC-PLC online interface
2 Second MMC-PLC online interface
MMC_LOCKED (13) The requesting MMC cannot go online. Two MMCs on which uninterruptible
processes are in progress are connected online to this NCU. The PLC cannot
displace either of the two MMCs.
PLC_LOCKED (14) The MMC switchover disable is set in the MMC-PLC interface.
PRIO_H (15) The requesting MMC cannot go online. Two MMCs that are both higher priority
than the requesting MMC are connected online to the NCU. The PLC cannot
displace either of the two MMCs.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/5-143
Several Operator Panel Fronts and NCUs (B3) 06.05
5.2 Interfaces in DB 19 for M:N

Sign of life of M:N


switchover

DB19 DBW110 M_TO_N_ALIVE


1 .. 65535 Ring counter that is cyclically incremented by the PLC. Indicator for the MMCs
that the M:N switchover is active and ready.

1. MMC-PLC online
interface

DB19 DBW120 MMC1_CLIENT_IDENT


See PAR_CLIENT_IDENT
After issuing positive online permission, the PLC transfers the MMC parame-
ters to the online interface PAR_CLIENT_IDENT –> MMC1_CLIENT_IDENT

DB19 DBB122 MMC1_TYP


See PAR_MMC_TYP
After issuing positive online permission, the PLC transfers the MMC parame-
ters to the online interface PAR_MMC_TYP –> MMC1_TYP

DB19 DBB123 MMC1_MSTT_ADR


See PAR_ MSTT_ADR
After issuing positive online permission, the PLC transfers the MMC parame-
ters to the online interface PAR_ MSTT_ADR –> MMC1_MSTT_ADR

DB19 DBB124 MMC1_STATUS


Requests from online MMC to PLC or vice versa
The meaning of the signal is dependent on MMC1_Z_INFO
see also:
DEFINEs possible combinations of STATUS and Z_INFO
for control unit switchover
OFFL_REQ_PLC (1) PLC to MMC: PLC would like to suppress MMC, sends offline request to MMC
OFFL_CONF_PLC (2) MMC to PLC: Acknowledgement of OFFL_REQ_PLC
OFFL_REQ_OP (3) MMC to PLC: MMC would like to go offline from this NCU and outputs
an offline request
OFFL_CONF_OP (4) PLC to MMC: Acknowledgement of OFFL_REQ_OP
S_ACT (6) MMC to PLC: MMC goes online or changes operating focus
OFFL_REQ_FOC (7) MMC to PLC: MMC would like to take operating focus away from this NCU
OFFL_CONF_FOC (8) PLC to MMC: Acknowledgement of OFFL_REQ_FOC
ONL_REQ_FOC (9) MMC to PLC: MMC would like to set operating focus to this NCU
ONL_PERM_FOC (10) PLC to MMC: Acknowledgement of ONL_REQ_FOC

Copyright © Siemens AG, 2005.


2/B3/5-144 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
5.2 Interfaces in DB 19 for M:N

DB19 DBB125 MMC1_Z_INFO


Requests from online MMC to PLC or vice versa
The meaning of the signal is dependent on MMC1_STATUS,
see also:
DEFINEs possible combinations of STATUS and Z_INFO
for control unit switchover
DISC_FOC (9) MMC switches operating focus to another NCU
OK (10) Positive acknowledgement
CONNECT (11) MMC has gone online to this NCU
PLC_LOCKED (14) The MMC switchover disable is set in the MMC-PLC interface. MMC cannot go
offline from this NCU or change operating focus.
PRIO_H (15) MMCs with higher priority are online to this NCU. MMC cannot go online to this
NCU.

Bit signals

DB 19 MMC1_SHIFT_LOCK
DBX 126.0 Disable/enable MMC switchover
Data Block
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 5
Signal state 1 or signal MMC switchover or change in operating focus is disabled.
transition 0 –––> 1 The current MMC-NCU connection status remains unchanged.
Signal state 0 or signal
transition 1 –––> 0 MMC switchover or change in operating focus is enabled.

DB 19 MMC1_MSTT_SHIFT_LOCK
DBX 126.1 Disable/enable MCP switchover
Data Block
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 5
Signal state 1 or signal MCP switchover is disabled.
transition 0 –––> 1 The current MCP-NCU constellation remains unchanged.
Signal state 0 or signal
transition 1 –––> 0 MCP switchover is enabled

DB 19 MMC1_ACTIVE_REQ
DBX 126.2 MMC 1 requests active operating mode
Data Block
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 5
Signal state 1 or signal
transition 0 –––> 1 MMC to PLC: Passive MMC 1 requests active operating mode
Signal state 0 or signal
transition 1 –––> 0 PLC to MMC: Request received

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/5-145
Several Operator Panel Fronts and NCUs (B3) 06.05
5.2 Interfaces in DB 19 for M:N

DB 19 MMC1_ACTIVE_PERM
DBX 126.3 Active/passive operating mode
Data Block
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 5
Signal state 1 or signal PLC to MMC:
transition 0 –––> 1 Passive MMC can change to active operating mode
Signal state 0 or signal PLC to MMC:
transition 1 –––> 0 Active MMC must change to passive operating mode

DB 19 MMC1_ACTIVE_CHANGED
DBX 126.4 Active/passive operating mode of MMC
Data Block
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 5
Signal state 1 or signal MMC to PLC:
transition 0 –––> 1 MMC has completed changeover from passive to active mode
Signal state 0 or signal MMC to PLC:
transition 1 –––> 0 MMC has completed changeover from active to passive mode

DB 19 MMC1_CHANGE_DENIED
DBX126.5 Operating mode changeover rejected
Data Block
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 5
Signal state 1 or signal MMC to PLC or PLC to MMC depending on interface:
transition 0 –––> 1 Operating mode cannot be changed owing to uninterruptible processes on active MMC
Signal state 0 or signal MMC to PLC or PLC to MMC depending on interface:
transition 1 –––> 0 Acknowledgement of MMC1_CHANGE_DENIED (FALSE ––>TRUE)

2. MMC-PLC online The signals of the 2nd MMC-PLC online interface are analogous in meaning to
interface the signals of the 1st MMC-PLC online interface. MMC2_ ... replaces MMC1_...
in the explanatory texts.

DB19 DBW130 MMC2_CLIENT_IDENT


See DB19 DBW120

DB19 DBB132 MMC2_TYP


See DB19 DBW122

DB19 DBB133 MMC2_MSTT_ADR


See DB19 DBB 123

DB19 DBB134 MMC2_STATUS


See DB19 DBB124

Copyright © Siemens AG, 2005.


2/B3/5-146 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
5.2 Interfaces in DB 19 for M:N

DB19 DBB135 MMC2_Z_INFO


See DB19 DBB 125

DB19 DBX136.0 MMC2_SHIFT_LOCK


See DB19 DBX126.0

DB19 DBX136.1 MMC2_MSTT_SHIFT_LOCK


See DB19 DBX126.1

DB19 DBX136.2 MMC2_ACTIVE_REQ


See DB19 DBX126.2

DB19 DBX136.3 MMC2_ACTIVE_PERM


See DB19 DBX 126.3

DB19 DBX136.4 MMC2_ACTIVE_CHANGED


See DB19 DBX 126.4

DB19 DBW136.5 MMC2_CHANGE_DENIED


See DB19 DBX126.5

MMC sign-of-life After an MMC has gone online to an NCU, the MMC sign of life is set in the
monitor interface. (E_BTSSReady, E_MMCMPI_Ready, E_MMC2Ready)
The signals are automatically set by the MMC when it goes online and stay set
for as long as it remains online.
They are provided separately for each MMC-PLC interface and used by the
PLC to monitor the MMC sign of life.
First MMC-PLC online interface
A distinction between an MMC link via the OPI (1.5 Mbaud) or
the MPI (187.5 kbaud) is made on this interface.
The signal corresponding to the bus type is set while the MMC is online.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/5-147
Several Operator Panel Fronts and NCUs (B3) 06.05
5.2 Interfaces in DB 19 for M:N

DB10 DBX104.0 MCP1 ready


FALSE MCP1 is not ready
TRUE MCP1 is ready

DB10 DBX104.0 MCP2 ready


FALSE MCP2 is not ready
TRUE MCP2 is ready

DB10 DBX104.2 HHU ready


FALSE HHU is not ready
TRUE HHU is ready

DB10 DBX108.3 E_MMCBTSSReady


FALSE No MMC online to OPI
TRUE MMC online to OPI

DB10 DBX108.2 E_MMCMPIReady


FALSE No MMC online to MPI
TRUE MMC online to MPI

Second MMC-PLC online interface


This interface utilizes a group signal for both bus types. No distinction is made
between OPI and MPI.

DB10 DBX108.1 E_MMC2Ready


FALSE No MMC online to OPI or MPI
TRUE MMC online to OPI or MPI

The sign-of-life monitor is switched on by the PLC as soon as an MMC has


gone online to its interface and switched off again when it goes offline.
Sign-of-life monitor is switched on:
– As soon as an MMC logs on online to its MMC-PLC interface with
S_ACT/ CONNECT.

Copyright © Siemens AG, 2005.


2/B3/5-148 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
5.2 Interfaces in DB 19 for M:N

Sign-of-life monitor is switched off:


– As soon as MMC goes offline
1. MMC wants to switch over and logs off from the PLC with
OFFL_REQ_OP/ OK
PLC acknowledges the MMC with OFFL_CONF_OP/ OK
2. MMC is suppressed by the PLC with OFFL_REQ_PLC/ OK
MMC acknowledges the PLC with OFFL_CONF_PLC/ OK
In both instances the PLC detects that an MMC is going offline and waits for the
TRUE-FALSE edge of its sign-of-life signal.
The PLC then ceases to monitor the sign-of-life signal.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/5-149
Several Operator Panel Fronts and NCUs (B3) 06.05
5.3 Signals for NCU link and axis container

5.3 Signals for NCU link and axis container

DB 10 NCU link active


DBX 107.6
Data Block Signal from NC channel –> PLC
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 5
Signal state 1 or signal NCU link communication is active
transition 0 –––> 1
Signal state 0 or signal No NCU link communication is active
transition 1 –––> 0
Signal irrelevant for ... ... Systems without NCU link modules
References PHD

DB 31–61 NCU link axis active


DBX 60.1
Data Block Signal from NC axis –> PLC
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 5
Signal state 1 or signal Axis is active as NCU link axis
transition 0 –––> 1
Signal state 0 or signal Axis is used as a local axis
transition 1 –––> 0
Signal irrelevant for ... ... Systems without NCU link modules
References PHD

DB 31–61 Axis container rotation active


DBX 61.1
Data Block Signal from NC axis –> PLC
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 5
Signal state 1 or signal An axis container rotation is active for the axis
transition 0 –––> 1
Signal state 0 or signal An axis container rotation is not active for the axis
transition 1 –––> 0

DB 31–61 Axis ready


DBX 61.2
Data Block Signal from NC axis –> PLC
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 5
Meaning The signal is processed on the home NCU in the NCU link grouping.
The home NCU is the NCU to which the axis is physically connected.
Signal state 1 or signal Axis is ready
transition 0 –––> 1
Signal state 0 or signal Axis is not ready
transition 1 –––> 0 This status is set if
– the channel or
– the operating mode group or
– the NCK
has generated the “not ready” alarm.

Copyright © Siemens AG, 2005.


2/B3/5-150 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.1 Configuration file NETNAMES.INI with control unit management option

Examples 6
6.1 Configuration file NETNAMES.INI with control unit
management option
A sample configuration file NETNAMES.INI for the MMC 1 control unit for a
system with four NCUs on the OPI is outlined below.
See Subsection 2.1.4 for explanations.

Note
The marginal notes (bold print) on the left of the page serve to structure the
information and are not part of the file.

; NETNAMES.INI Example 1 start

MMC identification ; Identification entry


[own]
owner = MMC_1

MMC-to-NCU ; Connection entry


connections [conn MMC_1]
conn_1 = NCU_1 ; NCU 1
conn_2 = NCU_2 ; NCU 2
conn_3 = NCU_3 ; NCU 3
conn_4 = NCU_4 ; NCU 4

Bus identification ; Descriptive entry


[param network]
bus = OPI ; OPI bus (1.5 Mbaud)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-151
Several Operator Panel Fronts and NCUs (B3) 06.05
6.1 Configuration file NETNAMES.INI with control unit management option

MMC description [param MMC_1]


mmc_typ = 40 ; = 0100 0000: MMC is server and
; main control panel
mmc_bustyp = BTSS ; bus the MMC is attached to
mmc_address = 10 ; MMC address
mstt_address =6 ; address of MCP to be switched simult–
; aneously
name = MMC_LINKS ; Name of MMC
start_mode = ONLINE ; MMC switches online to the DEFAULT
; NCU during booting according to
; channel data, see below

Description of [param NCU_1]


NCU components
type = NCU_572 ; NCU type
nck_address = 20 ; address j of NCU component on bus
plc_address = 20 ; address p of PLC component on bus
name = NCU1 ; name of NCU
[param NCU_2]
type = NCU_572 ; NCU type
nck_address = 21 ; address j of NCU component on bus
plc_address = 21 ; address p of PLC component on bus
name = NCU2 ; name of NCU
[param NCU_3]
type = NCU_572 ; NCU type
nck_address = 22 ; address j of NCU component on bus
plc_address = 22 ; address p of PLC component on bus
name = NCU3 ; name of NCU
[param NCU_4]
type = NCU_572 ; NCU type
nck_address = 23 ; address j of NCU component on bus
plc_address = 23 ; address p of PLC component on bus
name = NCU4 ; name of NCU
; End of descriptive entry

Copyright © Siemens AG, 2005.


2/B3/6-152 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.1 Configuration file NETNAMES.INI with control unit management option

Channel data ; Sample of a channel menu configuration


; with M:N assignment option
[chan MMC_1]
DEFAULT_logChanSet = G_1 ; group setting during power-up
DEFAULT_logChan = K_1_1 ; channel setting during power-up
ShowChanMenu = TRUE ; display channel menu
; List of channel groups
logChanSetList = G_1, G_2, G_3, G_4
[G_1]
logChanList = K_1_1, K_1_2 ; Group G_1 channels
[G_2]
logChanList = K_2_1, K_2_2 ; Group G_2 channels
[G_3]
logChanList = K_3_1, K_3_2 ; Group G_3 channels
[G_4]
logChanList = K_4_1, K_4_2 ; Group G_4 channels
[K_1_1]
logNCName = NCU_1 ; 1st channel of 1st group
ChanNum =1
[K_1_2]
logNCName = NCU_1 ; 2nd channel of 1st group
ChanNum =2
[K_2_1]
logNCName = NCU_2 ; 1st channel of 2nd group
ChanNum =1
[K_2_2]
logNCName = NCU_2 ; 2nd channel of 2nd group
ChanNum =2
[K_3_1]
logNCName = NCU_3 ; 1st channel of 3rd group
ChanNum =1
[K_3_2]
logNCName = NCU_3 ; 2nd channel of 3rd group
ChanNum =2
[K_4_1]
logNCName = NCU_4 ; 1st channel of 4th group
ChanNum =1
[K_4_2]
logNCName = NCU_4 ; 2nd channel of 4th group
ChanNum =2

; NETNAMES.INI example 1 end

Note
You will find further examples in the subsection entitled Quick installation
guide

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-153
Several Operator Panel Fronts and NCUs (B3) 06.05
6.2 User-specific re-configuring of PLC program control unit switchover

6.2 User-specific re-configuring of PLC program control unit


switchover

Introduction The solution outlined roughly below should be selected only if at least one of the
following configuring requirements is applicable:
– Displacement strategy which differs from standard functionality
– Operating mode switchover which differs from standard functionality
– Independent handling of override switch for switchover of control unit
– Existence of a 2nd machine control panel on an MMC
Method of description:
1. Description of operational sequences
2. Description of available functionality (Defines)
3. Graphic representation of sequences in diagrammatic form
Implementation details can also be obtained from the standard configuration
which is included in the toolbox.

6.2.1 Description of operational sequences (overview)

Overview:

MMC call waiting An MMC would like to link up with an NCU and sends this request to the PLC of
the relevant NCU.

MMC coming An MMC goes online to an NCU, i.e. it links up to the NCU.

MMC going An MMC breaks off the link to an NCU.

Forced break An MMC must abort the link with an NCU because another MMC wants to go
online to the same NCU.

Operating focus A server maintains a permanent link to the NCUs to which it is assigned. The
changeover to operator can switch the operating focus from one NCU to another without
server mode interrupting the existing link.

Copyright © Siemens AG, 2005.


2/B3/6-154 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.2 User-specific re-configuring of PLC program control unit switchover

Active/passive An online MMC can operate in two different modes:


operating mode
Active mode: Operator can control and monitor
Passive mode: Operators sees header information and the “passive” identifier.

MCP switchover As an option, an MCP assigned to the MMC can be switched over at the same
time as the MMC.

6.2.2 Description of operational sequences (details)

Introduction The operational sequences are described using identifiers for defined, logical
functions (example: OFFL_REQ_OP/ OK) whose programming application has
been described earlier in this section. The functions are coded according to
Section 5.1. The functions store values in the interface which can be addressed
from the PLC and the MMC. An MMC utilizes the online-request interface while
it competing for the use of an online interface. MMCs which are already linked
to an NCU utilize one of the two available online interfaces. Details of these
interfaces can be found in Chapter 5 and in
References: Lists
are programmed.
In order to illustrate complete operating sequences, the description covers MMC
activities which cannot be influenced as well as modifiable PLC activities.

MMC call waiting If the MMC is already linked online to an NCU (online NCU) and would like to
communicate with another NCU (target NCU), it must first notify the PLC of the
online NCU that it wishes to switch over to the target NCU.
It sends the offline request OFFL_REQ_OP/ OK to the online PLC.
OFFL_CONF_OP/ OK:
Online PLC has received the offline request. MMC can now send an online
request to the target PLC.
OFFL_CONF_OP/ PLC_LOCKED
Online PLC has received the offline request. The MMC switchover is disabled in
the MMC-PLC interface. The MMC cannot link up with another NCU and must
remain online.
On receipt of the positive acknowledgement OFFL_CONF_OP/ OK, the MMC
sends its online request to the target PLC of the relevant NCU by transmitting its
client identification.
Client identification: Unique MMC identifier comprising bus type and
MMC bus address. (ONL_REQUEST
DB19, DBW100)
The target PLC sends the MMC a positive or negative acknowledgement:

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-155
Several Operator Panel Fronts and NCUs (B3) 06.05
6.2 User-specific re-configuring of PLC program control unit switchover

Pos. acknowledgement: Target PLC returns the client identification to


the MMC. (ONL_CONFIRM, DB19, DBW102)
MMC sets its parameters on the online-request
interface. (Client ident, MMC type, MCP address).
MMC can go online once it has received online
permission from the target PLC.
Neg. acknowledgement: Target PLC does not return the client identification to
the MMC. (ONL_CONFIRM, DB19, DBW102 not
identical to client identification of requesting MMC).
MMC cannot go online.
Example:
Another MMC is currently switching over to the same NCU. This switchover
operation must not be interrupted. The MMC remains online to the online NCU.
Once the MMC has received positive acknowledgement from the PLC, it may
need to displace another online MMC. It will then receive positive/negative
online permission from the PLC.
Positive:
ONL_PERM/ OK
On receipt of positive online permission (DB 19, DBB 108, 109), the MMC can
go online. An MMC-PLC interface is allocated to the MMC at the same time as
online permission. (1 or 2, details can be found in the interface description in
Chapter 5).

Negative:
ONL_PERM/ MMC_LOCKED
The requesting MMC cannot go online. Two MMCs on which uninterruptible
processes are in progress are connected online to this NCU. The PLC cannot
displace either of the two MMCs. The MMC remains online to the online NCU.
ONL_PERM/ PLC_LOCKED
The requesting MMC cannot go online. The MMC switchover is disabled in the
MMC-PLC interface. The MMC remains online to the online NCU.
ONL_PERM/ PRIO_H
The requesting MMC cannot go online. Two MMCs that are both higher priority
than the requesting MMC are connected online to the NCU. The PLC cannot
displace either of the two MMCs. The MMC remains online to the online NCU.

MMC coming Once the MMC has sent an online request to the target PLC and received
online permission from it, it can set up a link to the target NCU.
It goes online and notifies the PLC with (station active) S_ACT/ CONNECT that it
has linked up with the NCU.
The MMC sets up its sign of life signal in accordance with the allocated
interface.

Copyright © Siemens AG, 2005.


2/B3/6-156 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.2 User-specific re-configuring of PLC program control unit switchover

The MMC then requests


in the case of operator panel front: Active operating mode on the target NCU or
in the case of a server: Operating focus on the target NCU.
The PLC then activates MMC sign-of-life monitoring for the new MMC.
See: Active/passive operating mode
See: Operating focus changeover to server mode

MMC going An MMC aborts communication with an NCU.


Communication can be aborted for two different reasons:
1. The operator wishes to switch the MMC to another NCU. The MMC has sent
an online request to the target PLC and received online permission
(ONL_PERM/ OK). It has notified the online PLC of its intention to switch over
with OFFL_REQ_OP/ OK and received a positive acknowledgement
(OFFL_CONF_OP/ OK). Due to the switchover to the target NCU, the MMC
sign of life in the online PLC is changed from TRUE to FALSE. The falling
edge combined with the sequence described above signals to the online
PLC that the MMC has broken off the link to the online NCU. If an MCP is
assigned to the MMC and activated, it is now deactivated by the PLC.
Passive operating mode is set in the PLC for the MMC which has gone
offline.
See: Active/passive operating mode
2. The MMC is excluded (displaced) from the PLC by the online request from
another MMC. See displacement.

Forced break Two MMCs are linked online to an NCU, each is occupying an MMC-PLC
interface. A third MMC would like to go online.
The PLC must displace one of the two MMCs according to a predefined
strategy.
It requests the MMC to be displaced to abort communication with the NCU by
sending it the offline request (OFFL_REQ_OP/ OK).
The MMC returns a positive or negative acknowledgement to the PLC:
Positive:
OFFL_CONF_PLC/ OK
MMC breaks off the link to the NCU and switches to the offline state.
The MMC sign of life in the PLC changes from TRUE to FALSE.
The falling edge combined with the sequence described above signals to the
online PLC that the MMC has broken off the link to the online NCU.
If an MCP is assigned to the MMC and activated, it must now be deactivated by
the PLC.
The PLC also ceases to monitor the MMC sign of life signal.
Passive operating mode is set in the PLC for the MMC which has been
displaced.
See “Active/passive operating mode” further below.
Negative:

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-157
Several Operator Panel Fronts and NCUs (B3) 06.05
6.2 User-specific re-configuring of PLC program control unit switchover

OFFL_CONF_PLC/ MMC_LOCKED
Processes which must not be interrupted are running on the MMC (e.g.:
operation via RS232C, data exchange between NCU and MMC).
The MMC remains online to the current NCU.

Operating focus A server maintains a permanent link to the NCUs to which it is assigned. The
changeover to operator can switch the operating focus from one NCU to another without
server mode interrupting the existing link.
If the operator wishes to switch the operating focus to another NCU, the focus
PLC and target PLC must first be interrogated to determine whether they will
permit a focus switchover.
The MMC first sends the focus offline request signal (OFFL_REQ_FOC/ OK) to
the focus PLC.
The focus PLC returns either a positive or negative acknowledgement to the
MMC:
Positive:
OFFL_CONF_FOC/ OK
PLC positively acknowledges the offline focus request. MMC can disconnect
the operating focus.
Negative:
OFFL_CONF_FOC/ PLC_LOCKED
PLC negatively acknowledges the online focus request. The operating focus
changeover is disabled in the MMC-PLC interface (same signal as for MMC
switchover disable). The operating focus remains on the current NCU.

After a positive acknowledgement (OFFL_CONF_FOC/ OK) from the focus PLC,


the MMC sends query signal ONL_REQ_FOC/ OK regarding focus changeover
to the target PLC.
The target PLC sends the MMC a positive or negative acknowledgement:
Positive:
ONL_PERM_FOC / OK
PLC positively acknowledges the offline focus request. MMC can disconnect
the operating focus.
Negative:
ONL_PERM_FOC / PLC_LOCKED
PLC negatively acknowledges the online focus request. The operating focus
changeover is disabled in the MMC-PLC interface (same signal as for MMC
switchover disable). The operating focus remains on the current NCU.
After the MMC has received permission from the target PLC to change the
operating focus (ONL_PERM_FOC, OK), the MMC logs off from the focus PLC
with S_ACT/ DISC_FOCUS and changes the focus to the target PLC.
The MMC must finally request active operating mode in the target NCU. The
previous focus PLC must set active operating mode for this MMC-PLC interface
after receiving S_ACT/ DISC_FOCUS and deactivate any active MCP assigned
to the MMC which has gone offline.
See: Active/passive operating mode

Copyright © Siemens AG, 2005.


2/B3/6-158 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.2 User-specific re-configuring of PLC program control unit switchover

Active/passive After an MMC has gone online to an NCU, it can assume one of two different
operating mode operating states:

Active mode: Operator can control and monitor


Passive mode: Operator sees header information and the “passive”
status identifier.
After switching to an NCU, it first requests active operating mode in the online
PLC.
If two MMCs are linked online simultaneously to an NCU, one of the two is
always in active mode and the other in passive mode.
The operator can request active mode on the passive MMC at the press of a
button.
If an MCP has been configured for the online MMCs, the MCP of the active
MMC is switched on.
The MCP of the passive MMC is deactivated, i.e. only one MCP is active at a
time on an NCU.
Four signals are provided in the MMC-PLC interface for each of the two online
MMCs. These signals are used by the PLC to control operating mode
changeovers.

Table 6-1 Signals (x = 1, 2: 1. 1st or 2nd MMC-PLC interface)

MMC-PLC interface Value Meaning


MMCx_ACTIVE_REQ FALSE–>TRUE MMC to PLC: Passive MMC requests active operating mode
TRUE–>FALSE PLC to MMC: Request received
MMCx_ACTIVE_PERM FALSE–>TRUE PLC to MMC: Passive MMC can change to active operating mode
TRUE–>FALSE PLC to MMC: Active MMC must change to passive operating mode
MMCx_ACTIVE_CHANGED FALSE–>TRUE MMC to PLC: MMC has completed changeover from passive to active
mode
TRUE–>FALSE MMC to PLC: MMC has completed changeover from active to passive
mode
MMCx_CHANGE_DENIED FALSE–>TRUE MMC to PLC or PLC to MMC depending on interface: Operating mode
cannot be changed owing to uninterruptible processes on active MMC
TRUE–>FALSE MMC to PLC or PLC to MMC depending on interface: Acknowledge-
ment of MMCx_CHANGE_DENIED(FALSE–>TRUE)

An example of how operating modes can be switched over is described in the


following sequence.
Two MMCs online to one NCU, MMC_1 in active operating mode, MMC_2 in
passive operating mode, operator requests active operating mode on MMC_2.
These sequence applies equally to the following cases:
– An MMC goes online to an NCU to which another MMC is linked online
and in active mode. It requests active operating mode.
– An MMC goes online to an NCU to which no other MMC is linked online.
It requests active operating mode. (The sequence PLC requests active
MMC to switch to passive operating mode is not included here).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-159
Several Operator Panel Fronts and NCUs (B3) 06.05
6.2 User-specific re-configuring of PLC program control unit switchover

Signal state for this case:

Table 6-2

MMC_1 VALUE MMC_2 Value


MMC1_ACTIVE_REQ FALSE MMC2_ACTIVE_REQ FALSE
MMC1_ACTIVE_PERM TRUE MMC2_ACTIVE_PERM FALSE
MMC1_ACTIVE_CHANGED TRUE MMC2_ACTIVE_CHANGED FALSE
MMC1_CHANGE_DENIED FALSE MMC2_CHANGE_DENIED FALSE

MMC_2 requests active operating mode and sets MMC_2_AKTIVE_REQ =


TRUE.
The PLC acknowledges the request from MMC_2 with MMC_2_ACTIVE_REQ
= FALSE.
The PLC then requests MMC_1 to change to passive operating mode with
MMC1_ACTIVE_PERM = FALSE.
Communication can be aborted for two different reasons:
1. MMC_1 can change to passive operating mode:
MMC_1 switches from active to passive operating mode and acknowledges
the changeover with
MMC1_ACTIVE_CHANGED = FALSE.
If an MCP is assigned to the MMC and activated, it is now deactivated by
the PLC.
The PLC notifies MMC_2 that it can change to active operating mode by
sending MMC2_ACTIVE_PERM = TRUE.
MMC_2 changes state and acknowledges the change with
MMC2_ACTIVE_CHANGED = TRUE. If an MCP is assigned to MMC_2, it is
now activated by the PLC.
2. MMC_1 cannot change to passive mode (processes which cannot be
interrupted are in progress on MMC_1):
MMC_1 sets MMC1_CHANGE_DENIED = TRUE, operating status cannot
be changed.
The PLC acknowledges with MMC1_CHANGE_DENIED = FALSE and
grants MMC_1 permission to remain in active mode with
MMC1_ACTIVE_PERM = TRUE. By sending MMC2_CHANGE_DENIED =
TRUE, it notifies MMC_2 that MMC_1 cannot switch over to passive mode.
MMC_2 then acknowledges with MMC2_CHANGE_DENIED = FALSE and
remains in passive operating mode.

Copyright © Siemens AG, 2005.


2/B3/6-160 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.2 User-specific re-configuring of PLC program control unit switchover

MMC_1 requests active mode, MMC_2 is in passive mode


MMC1_ACTIVE_REQ MMC2_ACTIVE_REQ
MMC1_ACTIVE_PERM MMC2_ACTIVE_PERM
A
MMC1_ACTIVE_CHANGED MMC2_ACTIVE_CHANGED
MMC1_CHANGE_DENIED MMC2_CHANGE_DENIED

MMC_1 PLC_1
FALSE FALSE
FALSE FALSE
FALSE B
MMC_1 has gone FALSE
online, requests active FALSE FALSE
operating mode
TRUE FALSE
FALSE FALSE
FALSE FALSE
FALSE FALSE

PLC_1 acknowledges,
outputs active mode
enable
MMC_1 waits for FALSE FALSE
Acknowledgment of
TRUE FALSE
MMC_1 waits for
active permission FALSE FALSE
FALSE FALSE
MMC_1 switches to
active mode, sets FALSE FALSE
Active–Changed
TRUE FALSE
TRUE FALSE
FALSE FALSE

PLC_1 activates
MCP

Fig. 6-1 MMC_1 requests active mode, MMC_2 is in passive mode

Please note The arrangement of the signals of a block in box PLC_x (marked as B)
corresponds to the arrangement of signal names in the header section (marked
as A). Blocks B repeat in box PLC_x from top to bottom as a function of time.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-161
Several Operator Panel Fronts and NCUs (B3) 06.05
6.2 User-specific re-configuring of PLC program control unit switchover

MMC_1 requests active mode, MMC_2 is in active mode,


can change to passive mode

MMC1_ACTIVE_REQ MMC2_ACTIVE_REQ
MMC1_ACTIVE_PERM MMC2_ACTIVE_PERM
MMC1_ACTIVE_CHANGED MMC2_ACTIVE_CHANGED
MMC1_CHANGE_DENIED MMC2_CHANGE_DENIED

MMC_1 PLC_1 MMC_2


FALSE FALSE
FALSE TRUE
FALSE TRUE
MMC_1 requests act. FALSE FALSE
operating mode
TRUE FALSE
FALSE TRUE
FALSE TRUE
FALSE FALSE
PLC_1 acknowledges,
cancels active mode
for MMC_2
FALSE FALSE
MMC_1 waits for
Acknowledgment of FALSE FALSE MMC_2 receives
FALSE TRUE Requirement: Change to
FALSE FALSE passive mode
MMC_2 changes from
FALSE FALSE
active to passive mode
FALSE FALSE
FALSE FALSE
FALSE FALSE
PLC_1 outputs active
mode enable to MMC_1
PLC_1 deactivates
MCP
FALSE FALSE
TRUE FALSE
MMC_1 waits for FALSE FALSE
active permission
FALSE FALSE
MMC_1 switches to
active mode, sets FALSE FALSE
Active–Changed TRUE FALSE
TRUE FALSE
FALSE FALSE
PLC_1 activates
MCP

Fig. 6-2 MMC_1 requests active mode, MMC_2 is in active mode, can change to passive mode

Copyright © Siemens AG, 2005.


2/B3/6-162 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.2 User-specific re-configuring of PLC program control unit switchover

MMC_1 requests active mode, MMC_2 is in active mode,


cannot change to passive mode
MMC1_ACTIVE_REQ MMC2_ACTIVE_REQ
MMC1_ACTIVE_PERM MMC2_ACTIVE_PERM
MMC1_ACTIVE_CHANGED MMC2_ACTIVE_CHANGED
MMC1_CHANGE_DENIED MMC2_CHANGE_DENIED

MMC_1 PLC_1 MMC_2


FALSE FALSE
FALSE TRUE
FALSE TRUE
MMC_1 requests act. FALSE FALSE
operating mode
TRUE FALSE
FALSE TRUE
FALSE TRUE
FALSE FALSE

PLC_1 acknowledges,
cancels active mode
for MMC_2

FALSE FALSE
MMC_1 waits for
Acknowledgment of FALSE FALSE
MMC_2 receives passive
FALSE TRUE Requirement: None
FALSE FALSE Change to passive mode
not allowed, uninterruptible
FALSE FALSE processes in progress
FALSE FALSE
FALSE TRUE
FALSE TRUE

PLC_1 to MMC_2:
MMC_2 remains active
PLC_1 to MMC_1:
Change not allowed

FALSE FALSE
FALSE TRUE
MMC_1 waits for
active permission FALSE TRUE
MMC_1 receives: TRUE FALSE
Change not allowed
FALSE FALSE
MMC_1 remains in
passive mode FALSE TRUE
FALSE TRUE
FALSE FALSE

Fig. 6-3 MMC_1 requests active mode, MMC_2 is in active mode, but cannot change to passive mode

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-163
Several Operator Panel Fronts and NCUs (B3) 06.05
6.2 User-specific re-configuring of PLC program control unit switchover

MCP A control unit consists of an MMC and an MCP; these can both be switched
SWITCHOVER over as a unit.
If an MCP has been configured for the MMC in configuring file NETNAMES.INI,
it will be activated and deactivated with the MMC.
The MCP of whichever MMC is currently in active operating mode is activated.
In other words, only one MCP is ever active at any time on an NCU.
The MCP is activated by the PLC:
– MMC changes to active operating mode. (signal
MMCx_ACTIVE_CHANGED: FALSE –> TRUE,
x = 1,2 first or second MMC-PLC interface)
The MCP is deactivated by the PLC
– MMC changes to passive operating mode
(signal MMCx_ACTIVE_CHANGED: TRUE –> FALSE,
x = 1,2 first or second MMC-PLC interface)
– MMC goes offline as a result of switchover or displacement
The MMC sign-of-life signal changes from TRUE to FALSE when an
MMC goes offline. After the edge change, the PLC deactivates the
allocated MCP.
– Server MMC disconnects operating focus from the current NCU and
switches it over to another. The server transmits S_ACT/ DIS_FOCUS
as the last signal on its own MMC-PLC interface. The PLC then
deactivates the corresponding MCP.

6.2.3 Defined logical functions/defines

Note
Please refer to Section 5.1 for the legal values for bus type, functions/status
and additional information plus permissible combinations of status and
additional information. The logical identifiers of functions are used in the
following diagrams.

Copyright © Siemens AG, 2005.


2/B3/6-164 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.2 User-specific re-configuring of PLC program control unit switchover

6.2.4 Graphic representation of function sequences

Overview Figs. 6-4 to 6-9 describe the switchover operation for an operator station and
Figs. 6-10 to 6-12 the switchover operation for a server.
The diagrams describe how an operator station is switched over (switchover
from NCU_1 to NCU_2).
If an MMC in the offline status wishes to go online to an NCU (e.g.: during
power-up), sequence OFFL_REQ_OP (...) and OFFL_CONF_OP(...) is omitted.

PLC_1 MMC_1

MMC_1 sends offline


Request
MMC switchover OFFL_REQ_OP/
OK
disabled is set
OFFL_CONF_OP/ MMC_1 waits for
PLC_LOCKED confirmation
MMC_1 remains online
to NCU_1

Fig. 6-4 MMC_1 is linked online to NCU_1 and wants to switch over to NCU_2, switchover disable is set in PLC_1

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-165
Several Operator Panel Fronts and NCUs (B3) 06.05
6.2 User-specific re-configuring of PLC program control unit switchover

PLC_1 MMC_1 PLC_2


:
:
:
OFFL_REQ_OP/ MMC_1 sends offline Another MMC sends
OK Request online request
MMC switchover disa. online–req. interf. busy
not set :
OFFL_CONF_OP/ :
OK
MMC_1 waits for :
confirmation
MMC_1 sends onl. req. :
transmits its client ident. :
Online–req. interf. busy,
CLIENT_IDENT PLC_2 does not return
client ident.
MMC_1 waits for :
return of client :
ident :
After timeout:
MMC_1 remains
online to NCU_1

Fig. 6-5 MMC_1 online to NCU_1, MMC_1 wants to switch over to NCU_2, online-request interface in PLC_2
occupied by another MMC

Copyright © Siemens AG, 2005.


2/B3/6-166 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.2 User-specific re-configuring of PLC program control unit switchover

PLC_1 MMC_1 PLC_2


MMC_1 sends offline
OFFL_REQ_OP/ Request
MMC switchover OK
disable not set
OFFL_CONF_OP/ MMC_1 waits for
OK confirmation
MMC_1 sends on. req.
transmits its client ident.
CLIENT_IDENT Online-req. interf. free,
PLC_2
MMC_1 waits for CLIENT_IDENT returns client ident.
return of client
ident
MMC_1 occupies onl.–
SS
Occupy onl.- PLC_2 waits for assign-
req. interf. ment of onl.-req. interf.
PLC_2 outputs:
Neg. online permission
NCU_2 occupied
by higher-priority MMCs
or MMC switchover
disable set
MMC_1 waits for ONL_PERM
PRIO_H
online permission Or
ONL_PERM
MMC_1 remains onl. to PLC_LOCKED
NCU_1

Fig. 6-6 MMC_1 online to NCU_1, MMC_1 wants to switch over to NCU_2, but does not receive permission from
PLC_2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-167
Several Operator Panel Fronts and NCUs (B3) 06.05
6.2 User-specific re-configuring of PLC program control unit switchover

PLC_1 MMC_1 PLC_2


MMC_1 sends offline
Request
MMC switchover OFFL_REQ_OP/
OK
disable not set
OFFL_CONF_OP/ MMC_1 waits for
OK
confirmation
MMC_1 sends on. req
transmits its client id.
CLIENT_IDENT Onl.-req. interf. free,
PLC_2 returns client ident.
MMC_1 waits for CLIENT_IDENT
return of client
ident
MMC_1 occupies onl.– PLC_2 waits for assign-
SS ment of onl.-interf.
Occupy onl.-
req. interf. PLC_2 outputs:
Pos. online permission
MMC_1 waits for No. MMC-PLC-onl. interf.
ONL_PERM
online permission OK, No.
MMC_1 switches over, MMC_PLC-
sign of life signal SS
ceases.
PLC_1:Deact. sign-of-life MMC sign-of-life MMC_1 goes online to S_ACT/
is deactivated NCU_2 CONNECT
monitoring
Deact. MCP if applic. MMC_1 sets up PLC_2 waits for assign-
sign of life log-on
MMC_1, passive mode
MMC sign-of-life PLC_2 sets up
setting up sign-of-life monitoring

MMC_1 requests active MMCx_ACTIVE_ with change of


REQ
active mode, continue operating mode
with change of
operating mode

Fig. 6-7 MMC_1 online to NCU_1, MMC_1 switches over to NCU_2 (no displacement)

Copyright © Siemens AG, 2005.


2/B3/6-168 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.2 User-specific re-configuring of PLC program control unit switchover

PLC_1 MMC_1 PLC_2 MMC_2


OFFL_REQ_OP/ MMC_1 sends offline
OK Request
MMC switchover
disable not set
OFFL_CONF_OP/ MMC_1 waits for
OK confirmation
MMC_1 sends onl. req.
transmits its client ident.
CLIENT_IDENT Onl. req. interf. free, PLC_2
returns client ident.
MMC_1 waits for CLIENT_IDENT
return of client
ident
MMC_1 occupies onl.–
SS
Occupy onl.– PLC_2 waits for assign- OFFL_REQ_PLC/
req. interf. ment of onl.-req. interf. OK

PLC_2 displaces acc. to MMC_2 outputs neg.


MMC_2 strategy confirmation
Uninterruptible
processes
MMC_2 rem. online
to NCU_2
PLC_2 waits for assign- OFFL_CONF_PLC/
confirmation MMC_LOCKED

PLC_2 outputs:
Neg. online permission
MMC_1 waits for ONL_PERM
MMC_LOCKED
online permission
MMC_1 remains onl. to
NCU_1

Fig. 6-8 MMC_1 online to NCU_1, MMC_2 online to NCU_2, MMC_1 wants to switch over to NCU_2, but MMCs
executing uninterruptible processes are online to NCU_2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-169
Several Operator Panel Fronts and NCUs (B3) 06.05
6.2 User-specific re-configuring of PLC program control unit switchover

PLC_1 MMC_1 PLC_2 MMC_2


OFFL_REQ_OP/ MMC_1 sends offline Online-req. interf. free,
OK Request PLC_2 returns client id.
MMC switchover disable CLIENT_IDENT
not set CLIENT_IDENT

MMC_1 waits for


OFFL_CONF_OP/ confirmation
OK
MMC_1 sends online req., PLC_2 waits for assign-
transmits its client ident. ment of onl.-req. interf.
PLC_2 displaces acc.
to MMC_2 strategy OFFL_REQ_PLC/
MMC_1 waits for OK
return of client MMC_2 outputs pos.
Occupy onl.-
ident req. interf.
OFFL_CONF_PLC/
confirmation
OK
MMC_1 occupies onl.- PLC_2 waits for assign- MMC_2 switches to
SS confirmation offline mode
ONL_PERM MMC_2 sign-of-life
OK, No.
MMC-PLC-SS signal ceases
MMC_1 waits for PLC_2: Deactivates MMC sign-of-life
online permission sign-of-life monitoring is deactivated
Deactivates MCP if applic.
MMC_1 switches over, MMC_2, passive mode
sign of life signal
MMC sign-of-life PLC_2 outputs:
is deactivated ceases. Pos. online permission
PLC_1: Deactivates MMC_1 goes online to No. MMC-PLC-Onl. interf.
sign-of-life monitoring NCU_2
S_ACT/
Deactivates MCP if appl. CONNECT
MMC_1, passive mode MMC_1 sets up PLC_2 waits for assign-
sign of life log-on
MMC sign–of–life PLC_2 sets up
is set up sign-of-life monitoring
MMCx_ACTIVE_
REQ

MMC_1 requests active With change of


active mode, continue operating mode
with change of
operating mode

Fig. 6-9 MMC_1 online to NCU_1, MMC_2 online to NCU_2, MMC_1 switches from NCU_1 to NCU_2, MMC_2 is
displaced

Copyright © Siemens AG, 2005.


2/B3/6-170 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.2 User-specific re-configuring of PLC program control unit switchover

PLC_1 MMC_1

MMC_1 sends offline


offline request
MMC switchover disa. OFFL_REQ_FOC/
OK
is set
OFFL_CONF_FOC/ MMC_1 waits for
PLC_LOCKED
confirmation
MMC_1 operat. focus
remains on NCU_1

Fig. 6-10 MMC_1 server, wishes to switch operating focus from NCU_1 to NCU_2, switchover disabled in PLC_1

PLC_1 MMC_1 PLC_2

MMC_1 sends offline


offline request
MMC switchover disab. OFFL_REQ_FOC/
OK
not set
OFFL_CONF_FOC/ MMC_1 waits for
OK confirmation
MMC_1 sends focus
offline request
ONL_REQ_FOC/ MMC switchover disab.
OK
is set
MMC_1 waits for ONL_CONF_FOC/
confirmation PLC_LOCKED

MMC_1 operat. focus


remains on NCU_1

Fig. 6-11 MMC_1 is server, wishes to switch operating focus from NCU_1 over to NCU_2, switchover is disabled in
PLC_2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-171
Several Operator Panel Fronts and NCUs (B3) 06.05
6.2 User-specific re-configuring of PLC program control unit switchover

PLC_1 MMC_1 PLC_2

MMC_1 sends offline


offline request
MMC switchover disab. OFFL_REQ_FOC/
not set OK

OFFL_CONF_FOC/ MMC_1 waits for


OK confirmation
MMC_1 sends focus
offline request
ONL_REQ_FOC/ MMC switchover disable
OK not set
MMC_1 waits for ONL_CONF_FOC/
confirmation OK

MMC_1 disconnects
operating focus from
NCU_1,
changes to NCU_2
PLC_1: S_ACT/
Deactivates MCP if appl. DISC_FOCUS MMC_1 requests active MMCx_ACTIVE_ with change of
MMC_1, passive mode active mode, continue REQ operating mode
with change of
operating mode

Fig. 6-12 MMC_1 is server, wishes to switch operating focus from NCU_1 over to NCU_2, switchover not disabled in
PLCs, MMC_1 can change operating focus

Copyright © Siemens AG, 2005.


2/B3/6-172 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.3 Configuration file NETNAMES.INI, standard functionality

6.3 Configuration file NETNAMES.INI, standard functionality

6.3.1 Two operator panel fronts and one NCU

For a system according to SW 3.1 (consisting of two control units and one NCU
on the OPI, see Chapter 1), a sample configuration file for the second control
unit is detailed below.
For explanations, see Chapter 1 “Configurability”.

; NETNAMES.INI Example 2 Start

; Identification entry
[own]
owner = MMC_2
; Connection entry
[conn MMC_1]
conn_1 NCU_1

[conn MMC_2]
conn_1 NCU_1
; Descriptive entry
[param network]
bus = btss

[param MMC_1]
mmc_address = 1

[param MMC_2]
mmc_address = 3

[param NCU_1]
nck_address = 13
plc_address = 13

; NETNAMES.INI Example 2 end

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-173
Several Operator Panel Fronts and NCUs (B3) 06.05
6.3 Configuration file NETNAMES.INI, standard functionality

6.3.2 One operator panel front and three NCUs

For a system according to SW 3.2 (consisting of one control unit and three
NCUs on the OPI, see Chapter 1, paragraph “Configurability”), a sample
configuration file is detailed below.
For explanations, see Chapter 1, paragraph “Configurability”.
Any adaptations which may need to be made are described in Chapter 2,
paragraph “Configurations”.

; NETNAMES.INI Example 3 Start


; Identification entry
[own]
owner = MMC_1
; Connection entry: For the total of 3 connections provided
[conn MMC_1]
conn_1= NCU_1
conn_2= NCU_2
conn_3= NCU_3
; Descriptive entry: The network is clearly defined
[param network]
bus= opi

[param MMC_1]
name= arbitrary_name
type= MMC_100
mmc_address= 1

[param NCU_1]
name= arbitrary_name1
type= ncu_572
nck_address= 12
plc_address= 12

[param NCU_2]
name= arbitrary_name2
type= ncu_573
nck_address= 14
plc_address= 14

[param NCU_3]
name= arbitrary_name3
type= ncu_573
nck_address= 15
plc_address= 15
; NETNAMES.INI, example 3 end

Copyright © Siemens AG, 2005.


2/B3/6-174 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.4 M:N quick installation guide with examples

6.4 M:N quick installation guide with examples

Introduction The MPI/OPI bus network rules are not described.


See /BH/, Operator Components Manual
Three examples are used to demonstrate the steps involved in starting up an
M:N interconnection. Each description begins by presenting a configuration. If
you do not find your configuration here, we recommend you use the detailed
description in Chapter 2 and make the appropriate additions or amendments.

6.4.1 Example 1

Hardware The hardware comprises the following components:


configuration
– 1 HMI Advanced / PCU50
– 1 MCPs
– Two NCUs with two channels each

HMI Advanced/
PCU50
OP 10, 12, 15

NCU1 NCU2

Fig. 6-13 One operator panel for two NCUs

Use Operator panel 1 (HMI Advanced/PCU50 server) with machine control panel
can access NCU1 (channel 1, channel 2) and NCU2 (channel 1, channel 2).

Step 1:

Configuration file For this example, the following entries are set in the NETNAMES.INI file:
NETNAMES.INI
[own]
owner= MMC_1

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-175
Several Operator Panel Fronts and NCUs (B3) 06.05
6.4 M:N quick installation guide with examples

; Connection entry
[conn MMC_1]
conn_1 = NCU_1
conn_2 = NCU_2
; Extcall not required for a PCU
; Network parameters
[param network]
bus = opi
; MMC definitions
[param MMC_1]
mmc_address = 1
; All other parameters not required
; NCU components descriptive entry
[param NCU_1]
type = NCU_573
nck_address = 22
plc_address = 22
name = NCU1

[param NCU_2]
type = NCU_573
nck_address = 23
plc_address = 23
name = NCU2

; Channel data
[chan MMC_1]
DEFAULT_logChanSet = Station_1
DEFAULT_logChan = N1_K1
ShowChanMenu = True
logChanSetList = Station_1, Station_2

[Station_1]
logChanList = N1_K1, N1_K2
[N1_K1]
logNCName = NCU_1
ChanNum = 1
[N1_K2]
logNCName = NCU_1
ChanNum = 2

Copyright © Siemens AG, 2005.


2/B3/6-176 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.4 M:N quick installation guide with examples

[Station_2]
logChanList = N2_K1, N2_K2
[N2_K1]
logNCName = NCU_2
ChanNum = 1
[N2_K2]
logNCName = NCU_2
ChanNum = 2
; End

Step 2:

Load file HMI Advanced/PCU50: Once the NETNAMES.INI file has been created, it is
NETNAMES.INI transferred into the USER directory of the operator panel.

Step 3:

Set the NCK bus Starting at the main screen of the operator interface, the action:
addresses Start-up → MMC → operator panel front opens the “Operator panel front
interface parameters” input window. Enter the following here:
Connection: M:N Select M:N instead of 1:1
NCK address: 22
PLC address: 22
; according to NETNAMES.INI also for NCU2 address 23

S Select “Save”
S Restart the operator panel

Step 4:

PLC An FB9 call is not required for this configuration, because no displacement or
active/passive switching takes place.

Softkey In order to distinguish which NCU is to be addressed, texts must be defined for
designation the inscription of the softkeys of the operator panel for HMI Embedded/PCU20.
See example 2. For HMI Advanced/PCU50, the texts are copied from the
NETNAMES.INI file. No extra texts over and above those in NETNAMES.INI are
required for the present example.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-177
Several Operator Panel Fronts and NCUs (B3) 06.05
6.4 M:N quick installation guide with examples

6.4.2 Example 2

Hardware The hardware comprises the following components:


configuration
– 1 HMI Advanced / PCU50
– 1 HMI Embedded / PCU20
– 2 MCPs
– Two NCUs with two channels each

HMI Advanced/ HMI Embedded/


PCU50 PCU20
OP 10, 12, 15 OP 10, 12, 15

NCU1 NCU2

Fig. 6-14 Two operator panels for two NCUs

Use Control panel 1 (server) can access NCU1 (channel 1, channel 2) and NCU2
(channel 1, channel 2) with machine control panel switchover.
Control panel 2 (secondary control panel) can also access NCU1 and NCU2.

Step 1a):

NETNAMES.INI In this example, own entries are input for the operator panels in NETNAMES.INI
configuration files files.

Operator panel 1 Entries for HMI Advanced / PCU50:


[own]
owner= MMC_1
; Connection entry
[conn MMC_1]
conn_1 = NCU_1
conn_2 = NCU_2
EXTCALL_conns = conn_1, conn_2

Copyright © Siemens AG, 2005.


2/B3/6-178 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.4 M:N quick installation guide with examples

; Network parameters
[param network]
bus = opi
; MMC definitions
[param MMC_1]
mmc_typ = 0x40
mmc_bustyp = OPI
mmc_address= 1
mstt_address = 6
name = MMC_Serv
start_mode = ONLINE
; NCU components descriptive entry
[param NCU_1]
type = NCU_573
nck_address = 22
plc_address = 22
name = NCU1

[param NCU_2]
type = NCU_573
nck_address = 23
plc_address = 23
name = NCU2

; Channel data
[chan MMC_1]
DEFAULT_logChanSet = Station_1
DEFAULT_logChan = N1_K1
ShowChanMenu = True
logChanSetList = Station_1, Station_2

[Station_1]
logChanList = N1_K1, N1_K2
[N1_K1]
logNCName = NCU_1
ChanNum = 1
[N1_K2]
logNCName = NCU_1
ChanNum = 2

[Station_2]
logChanList = N1_K1, N1_K2
[N1_K1]
logNCName = NCU_2
ChanNum = 1
[N1_K2]
logNCName = NCU_2
ChanNum = 2
; End

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-179
Several Operator Panel Fronts and NCUs (B3) 06.05
6.4 M:N quick installation guide with examples

Step 2a):

Load file HMI Advanced/PCU50: After the NETNAMES.INI is created, it is transferred to


NETNAMES.INI the USER directory of the HMI Advanced / PCU 50 control unit.

Step 1b):

Operator panel 2 Entries for HMI Embedded / PCU20:


[own]
owner= PCU 20
; Connection entry
[conn PCU20]
conn_1 = NCU_1
conn_2 = NCU_2
; Network parameters
[param network]
bus = opi

; MMC definitions
[param PCU20]
mmc_typ = 0x10
mmc_bustyp = OPI
mmc_address = 2
mstt_address = 7
name = MMC_Neben
start_mode = OFFLINE

; NCU components descriptive entry


[param NCU_1]
type = NCU_573
nck_address = 22
plc_address = 22
name = NCU1

[param NCU_2]
type = NCU_573
nck_address = 23
plc_address = 23
name = NCU2

; Channel data
[chan PCU20]
DEFAULT_logChanSet = Station_2
DEFAULT_logChan = N1_K1
ShowChanMenu = True
logChanSetList = Station_1, Station_1

Copyright © Siemens AG, 2005.


2/B3/6-180 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.4 M:N quick installation guide with examples

[Station_1]
logChanList = N1_K1, N1_K2
[N1_K1]
logNCName = NCU_1
ChanNum = 1
[N1_K2]
logNCName = NCU_1
ChanNum = 2

[Station_2]
logChanList = N1_K1, N1_K2
[N1_K1]
logNCName = NCU_2
ChanNum = 1
[N1_K2]
logNCName = NCU_2
ChanNum = 2
; End

Softkey In order to distinguish which NCU is to be addressed, texts must be defined in


designation chan.txt for the inscription of the soft keys of the operator panel:

//*Max. length of text 2*9 characters*/


//* Create new line with %n at the end of the first line*/
//* Name of channel area 1 and names of the channels of this area */
T_CHAN_AREA_1 “Stat_1”
T_CHAN_AREA_1_CHANNEL_1 “N1_K1”
T_CHAN_AREA_1_CHANNEL_2 “N1_K2”
//* Name of channel area 2 and names of the channels of this area */
T_CHAN_AREA_2 “Stat_2”
T_CHAN_AREA_2_CHANNEL_1 “N2_K1”
T_CHAN_AREA_2_CHANNEL_2 “N2_K2”

Step 2b:

PCU20 After the NETNAMES.INI and chan.txt files have been created, they are
included in the *.abb file with the application.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-181
Several Operator Panel Fronts and NCUs (B3) 06.05
6.4 M:N quick installation guide with examples

Step 3:

Set the NCK bus HMI Advanced/PCU50:


addresses Starting at the main screen of the operator interface, the action:
Start-up → MMC → operator panel front opens the “Operator panel front
interface parameters” input window. Enter the following here:
Connection: M:N instead of 1:1
NCK address: 22
PLC address: 22
; according to NETNAMES.INI also for NCU2 address 23

S Select “Save”
S Restart the operator panel

HMI Embedded/PCU20:
Transfer *.abb onto the system using a PC card and perform a software update.

Note
If you have forgotten to include the “chan.txt” file in *.abb, no inscribed soft keys are visible
when you select the channel menu key. The selection function is available, however.

Step 4:

PLC Include FB9 in the PLC user program. You will find more details after the
examples below.

Copyright © Siemens AG, 2005.


2/B3/6-182 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.4 M:N quick installation guide with examples

6.4.3 Example 3

Hardware The hardware comprises the following components:


configuration
– HMI Advanced/PCU50
– 1 HT6
– 1 MCP
– 2 NCUs with two channels each

Fig. 6-15 Operator panel front and HT6 for two NCUs

Use Operator panel 1 (HMI Advanced/PCU 50 server) without machine control panel
can access NCU1 (channel 1, channel 2) and NCU2 (channel 1, channel 2).
Operator panel 2 (secondary control panel, HT6) can only access NCU2, HT6 is
implicitly the MCP.

Step 1a: Create the NETNAMES.INI file for HMI Advanced/PCU 50


[own]
owner= MMC_1
; Connection entry
[conn MMC_1]
conn_1 = NCU_1
conn_2 = NCU_2
EXTCALL_conns = conn_1, conn_2
; Network parameters
[param network]
bus = opi

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-183
Several Operator Panel Fronts and NCUs (B3) 06.05
6.4 M:N quick installation guide with examples

; MMC definitions
[param MMC_1]
mmc_typ = 0x40
mmc_bustyp = OPI
mmc_address= 1
mstt_address = 255 ; 255 is required if no MCP
; is installed.
name = MMC_Serv
start_mode = ONLINE
; Description of NCU components
[param NCU_1]
type = NCU_573
nck_address = 22
plc_address = 22
name = NCU1

[param NCU_2]
type =NCU_573
nck_address = 23
plc_address = 23
name = NCU2
; Channel data
[chan MMC_1]
DEFAULT_logChanSet = Station_1
DEFAULT_logChan = N1_K1
ShowChanMenu = True
logChanSetList = Station_1, Station_2
[Station_1]
logChanList = N1_K1, N1_K2
[N1_K1]
logNCName = NCU_1
ChanNum = 1
[N1_K2]
logNCName = NCU_1
ChanNum = 2

[Station_2]
logChanList = N1_K1, N1_K2
[N1_K1]
logNCName = NCU_2
ChanNum = 1
[N1_K2]
logNCName = NCU_2
ChanNum = 2
; End

Copyright © Siemens AG, 2005.


2/B3/6-184 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.4 M:N quick installation guide with examples

Step 1b: Create the NETNAMES.INI file for operator panel 2 (HT6)
[own]
owner = HT_6
; Connection entry
[conn HT_6]
conn_1 = NCU_2
; Network parameters
[param network]
bus = opi
; MMC definitions
[param HT_6]
mmc_typ = 0x10
mmc_bustyp = OPI
mmc_address = 14
mstt_address = 14 ; is always identical to
; mmc address
name = MMC_Neben
start_mode = OFFLINE
; Description of NCU components
[param NCU_2]
type =NCU_573
nck_address = 23
plc_address = 23
name = NCU2
; Channel data
[chan HT_6]
DEFAULT_logChanSet = Station_2
DEFAULT_logChan = N1_K1
ShowChanMenu = True
logChanSetList = Station_2
[Station_2]
logChanList = N2_K1, N2_K2
[N2_K1]
logNCName = NCU_2
ChanNum = 1
[N2_K2]
logNCName = NCU_2
ChanNum = 2
;End of file

Step 2a: MMC/PCU50:


After the NETNAMES.INI is created, it is transferred or copied to the USER
directory of the corresponding MMC/PCU.

Step 2b: HT6:

See example 2 for the creation of the soft key texts.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-185
Several Operator Panel Fronts and NCUs (B3) 06.05
6.4 M:N quick installation guide with examples

After the NETNAMES.INI and chan.txt files have been created, they are
included in the *.abb file with the application.

Step 3:

Set the NCK bus HMI Advanced/PCU50:


addresses Starting at the main screen of the operator interface, the action:
Start-up → MMC → operator panel front opens the “Operator panel front
interface parameters” input window. Enter the following here:
Connection: M:N instead of 1:1
NCK address: 22
PLC address: 22
; according to NETNAMES.INI also for NCU2 address 23

S Select “Save”
S Restart the operator panel

Step 4: Include FB9 in the PLC user program. You will find more details in the following
section.

Copyright © Siemens AG, 2005.


2/B3/6-186 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.4 M:N quick installation guide with examples

6.4.4 Description of FB9

Description of This block allows switchover between several control units (MMC operator
functions panel fronts and/or MCP machine control panels) which are connected to one or
more NCU control modules over a bus system.
The interface between the individual control units and the NCU (PLC) is the M :
N interface in data block DB19 (see Chapter 5 Signal Descriptions and /LIS/,
Lists, Chapter 4).
FB 9 uses the signals of this interface.
Apart from initialization, sign-of-life monitoring and error routines, the following
basic functions are also performed by the block for control unit switchover:

Table 6-3 Overview of functions

Basic function Meaning


MMC call waiting MMC wants to go online to an NCU
MMC coming MMC is connecting to an NCU
MMC going MMC is disconnecting from an NCU
Forced break MMC must break connection to an NCU
Operating focus changeover to server mode Change operating focus from one NCU to the other
Active/passive operating mode Operator control and monitoring/monitoring only
MCP switchover As an option, MCP can be switched over with the
MMC

The following descriptions supplement the information in 6.2.1 and 6.2.2 with
particular reference to the behavior in the last three examples.

Brief description Active/passive operating mode


of important
functions
An online MMC can operate in two different modes:
Active mode: Operator can control and monitor
Passive mode: Operator can monitor (MMC header only)
After switchover to an NCU, this initially requests active operating mode in the
PLC of the online NCU. If two MMCs are simultaneously connected online to
one NCU, one of the two is always in active and the other in passive operating
mode. The operator can request active mode on the passive MMC at the press
of a button.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-187
Several Operator Panel Fronts and NCUs (B3) 06.05
6.4 M:N quick installation guide with examples

MCP switchover:
As an option, an MCP assigned to the MMC can be switched over at the same
time. To achieve this, the MCP address must be entered in the mstt_adress
parameter of the NETNAMES.INI configuration file of the MMCs and
MCPEnable set to true. The MCP of the passive MMC is deactivated. This
means only one MCP is ever active on an NCU.
Power-up condition:
To prevent the previously selected MCP from being activated again when the
NCU is restarted, input parameters MCP1BusAdr = 255 (address of 1st MCP)
and MCP1STOP =TRUE (deactivate 1st MCP) must be set when FB1 is called
in OB100.
Enabling commands:
When one MCP is switched over to another, any active feedrate or axis
enabling signals may be transferred at the same time.
Important:
Keys actuated at the moment of switchover remain operative until the new MCP
is activated (by the MMC which is subsequently activated). The override
settings for feedrate and spindle also remain valid. To deactivate actuated keys,
the input image of the machine control signals must be switched to nonactuated
signal level on a falling edge of DB10.DBX104.0. The override settings should
remain unchanged.
Measures for deactivating keys must be implemented in the PLC user program.
(see below: Example of override switchover)

Declaration of the FUNCTION_BLOCK FB9


function
VAR_INPUT
Quit : BOOL; // Acknowledge alarms
OPMixedMode : BOOL:= FALSE ; // Hybrid operation with non M:N-capable
// OP deactivated!
AktivEnable : BOOL:= TRUE ; // Activate active/passive switchover.
MCPEnable : BOOL:= TRUE ; // Activate MCP switchover
END_VAR
VAR_OUTPUT
Alarm1 : BOOL ; // Alarm: Error in MMC bus address, bus
type!
Alarm2 : BOOL ; // Alarm: No confirmation MMC1 offline!
Alarm3 : BOOL ; // Alarm: MMC1 is not going offline!
Alarm4 : BOOL ; // Alarm: No confirmation MMC2 offline!
Alarm5 : BOOL ; // Alarm: MMC2 is not going offline!
Alarm6 : BOOL ; // Alarm: Queuing MMC is not going online!
Report : BOOL ; // Alarm: Sign-of-life monitoring
ErrorMMC : BOOL ; // Error detection MMC
END_VAR

Copyright © Siemens AG, 2005.


2/B3/6-188 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.4 M:N quick installation guide with examples

Explanation of the The following table shows all formal parameters of function FB9
formal parameters

Table 6-4 Formal parameters of FB9

Signal Type Type Remarks


Quit E BOOL Acknowledge alarms
OPMixedMode E BOOL Hybrid operation with non M:N-capable OP
AktivEnable E BOOL Activate active/passive operator panel switchover
TRUE = Operator panel can be switched to active/passive.
FALSE = Operator panel cannot be switched to active/passive and
remains in its current state.
MCPEnable E BOOL Activate MCP switchover
TRUE = MCP is switched with operator panel
FALSE: = MCP is not switched with operator panel.
Alarm1 A BOOL Alarm: Error in MMC bus address, bus type!
Alarm2 A BOOL Alarm: No confirmation MMC1 offline!
Alarm3 A BOOL Alarm: MMC1 is not going offline!
Alarm4 A BOOL Alarm: No confirmation MMC2 offline!
Alarm5 A BOOL Alarm: MMC2 is not going offline!
Alarm6 A BOOL Alarm: Queuing MMC is not going online!
Report A BOOL Message: Signoflife monitoring
ErrorMMC A BOOL Error detection MMC

Note
The block must be called by the user program. The user must provide an
instance DB with any number for this purpose. The call is not
multi-instance-capable.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-189
Several Operator Panel Fronts and NCUs (B3) 06.05
6.4 M:N quick installation guide with examples

6.4.5 FB9 call

CALL FB 9 , DB 109 (
Quit := Fehler_Quitt, // e.g. MCP reset
OPMixedMode := FALSE,
AktivEnable := TRUE, // Enable MMC switchover
MCPEnable := TRUE, // Enable MCP switchover
Alarm1 := DB2.dbx188.0, // Error message 700.100
Alarm2 := DB2.dbx188.1, // Error message 700.101
Alarm3 := DB2.dbx188.2, // Error message 700.102
Alarm4 := DB2.dbx188.3, // Error message 700.103
Alarm5 := DB2.dbx188.4, // Error message 700.104
Alarm6 := DB2.dbx188.5, // Error message 700.105
Report := DB2.dbx192.0, // Operational message 700.132
ErrorMMC := DB2.dbx192.1) // Operational message 700.133

Note
AktivEnable := true enables MMC active/passive switchover.
MCPEnable := true allows MCP switchover.
The default value of this parameter is thus enabled and does not have to be
enabled explicitly when the function is called.

Alarms, errors The output parameters “Alarm1” to “Alarm6” and “Report” can be passed in the
DB2 areas for MMC alarm and error messages.
If execution of an MMC function has failed (for which an appropriate error
message cannot be displayed), status parameter ErrorMMC is set to ’logic 1’
(e.g. booting error when no connection is made).

Example call for (call in OB100):


FB1

CALL “RUN_UP” , “gp_par” (


MCPNum := 1,
MCP1In := P#E 0.0,
MCP1Out := P#A 0.0,
MCP1StatSend := P#A 8.0,
MCP1StatRec := P#A 12.0,
MCP1BusAdr := 255, // Address of 1st MCP
MCP1Timeout := S5T#700MS,
MCP1Cycl := S5T#200MS,
MCP1Stop := TRUE, // MCP disabled
NCCyclTimeout := S5T#200MS,
NCRunupTimeout := S5T#50S);

Copyright © Siemens AG, 2005.


2/B3/6-190 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.4 M:N quick installation guide with examples

6.4.6 Example of override switchover

The example uses auxiliary flags M100.0, M100.1, M100.2, M100.3.


The positive edge of MCP1Ready must check for override and initiate
measures for the activation of the MCP block.
This example applies to the feedrate override. The interface and input bytes
must be exchanged for spindle override.

A DB10.DBX 104.0; //MCP1Ready


FN M 100.0; //Edge trigger flag 1
JCN wei1;
S M 100.2; //Set auxiliary flag 1
R M 100.3; //Reset auxiliary flag 2
// Save override
L DB21.DBB 4; // Feedrate override interface
T IB 28; // Buffer memory (free input
// or memory byte)
wei1:
A M 100.2; //Switchover
O DB10.DBX 104.0; //MCP1Ready
JCN wei2;
A DB10.DBX 104.0; //MCP1Ready
FP M 100.1; //Edge trigger flag 2
JC wei2;
A M 100.2; //Switchover
R M 100.2; //Reset auxiliary flag 1
SPB wei2;
A M 100.3; //Comparison made
JC MCP; //Call MCP program
// Route saved override to interface of switched MCP
// until the override values match
L EB28; //Redirect buffer memory
T DB21.DBB 4;//to override interface
L EB 3; //Override input byte for feed
<>i; //Match ?
JC wei2; //no, exit
S M100.3; //yes, set auxiliary flag 2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-191
Several Operator Panel Fronts and NCUs (B3) 06.05
6.4 M:N quick installation guide with examples

// When override values match, call the MCP program again


MCP: CALL “MCP_IFM”( //FC 19
BAGNo := B#16#1,
ChanNo := B#16#1,
SpindleIFNo := B#16#0,
FeedHold := M 101.0,
SpindleHold := M 101.1);
wei2: NOP 0;

6.4.7 Switchover between MCP and HT6

CALL FCxx
L DB7.DBB 27 // Act. MCP
L6 // Machine control panel
==I
JC MSTT // Call FC 19
L DB7.DBB 27 // Act. MCP
L 14 // HT 6
==I
JC HT6 // Call FC 26
JU ENDE
HT6: NOP 0
L B#16#40 // Shift inputs of HT6 to input byte 8+n
T DB7.DBB7
L B#16#40 // Shift outputs of HT6 to output byte 8+n
T DB7.DBB13
CALL FC26 // Call HT6 block
JU ENDE
MCP: NOP 0
L0
T DB7.DBB7
T DB7.DBB13

CALL FC19 // Call machine control panel block


END: NOP 0

Copyright © Siemens AG, 2005.


2/B3/6-192 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.4 M:N quick installation guide with examples

6.4.8 General notes

S In a configuration with only one NCU, the additional entry : “ ,SAP=202 ”


must be set for the PLC address in the [param NCU_xx] section of the
NETNAMES.INI file.
Example:
[param NCU_1]
type =NCU_573
nck_address= 11
plc_address= 11, SAP=202
name = NCU1

S In a configuration without a machine control panel (operator panel without


MCP), “mstt_address = 255 must be set in the [param MMC_xx] section of
the relevant NETNAMES.INI file.
This does not apply in the case of an HMI Embedded / PCU20 / HT6 as
bt_conf signals an error for these devices.

S FB1 is configured by default in the PLC program (OB100 call), see “FB9
description”.
Example:
[param MMC_1]
mmc_typ = 0x40
mmc_bustyp = BTSS
mmc_address = 1
mstt_address = 255
name = MMC_Serv
start_mode = ONLINE

S Recommendation: The OPI/MPI addresses 0 (for PG) and 13 (for servicing


purposes: replace NC) should be kept free.

S OFFLINE – mode for HMI Advanced / PCU 50: A server cannot be


configured with boot property start_mode = Offline.
If a main or secondary control panel is to be booted in offline mode, the
following setting should be entered in the MMC.INI file.
Enter the following setting in the [Global] section
NcddeDefaultMachineName = LOCAL.

After you do this, you should not select “Save” in the “Operator panel front
interface parameters” menu, otherwise this entry will be overwritten again.

HT6 removal/ The following are required for fault-free insertion and removal of the HT 6 while
insertion the machine is running:

S Release or override of the HT 6 EMERGENCY STOP


S Connection of the HT 6 to the OPI/MPI via a PROFIBUS repeater.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-193
Several Operator Panel Fronts and NCUs (B3) 06.05
6.4 M:N quick installation guide with examples

NCU/ ON OFF OFF ON


CCU MPI/OPI

ON ON ON

Distributor Distributor

HT 6
Repeater RS-485

OFF ON
Terminating resistor open

ON Terminating resistor closed

Fig. 6-16 Connecting the HT 6 using a PROFIBUS repeater

A PROFIBUS repeater must be connected upstream of the HT 6 distributor box


for each branch. The individual bus segments (MPI/OPI cable and/or the local
segments between repeater and HT 6) must be terminated with connector
resistors at the ends of the bus.

Repeater RS-485 The repeater can be ordered under Order No. 6ES7972-0AA01-0XA0. For
further information, please refer to the Catalog
/IK10/ Industrial Communication Networks SIMATIC-NET

Note

S The HT 6 already has an installed bus terminating resistor.


S The cable length from the repeater to the distributor box must not exceed
2 m.

You can find suggested circuits for the emergency stop in:
References: /BH/, Operator Components Manual.

Copyright © Siemens AG, 2005.


2/B3/6-194 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.5 Link axis

6.5 Link axis

Assumption NCU1 and NCU2 have one link axis each,


machine data e.g.:
; Machine data of NCU1:
$MN_NCU_LINKNO = 1 ; Set NCU number to 1
; (master NCU)
$MN_MM_NCU_LINK_MASK = 1 ; Activate link function
$MN_MM_SERVO_FIFO_SIZE = 3 ; Size of data buffer 1)
; between interpolation
; and servo loop
$MN_MM_LINK_NUM_OF_MODULES = 2 ; Number of link modules

$MN_AXCONF_LOGIC_MACHAX_TAB[0] = “AX1”
$MN_AXCONF_LOGIC_MACHAX_TAB[1] = “AX2”
$MN_AXCONF_LOGIC_MACHAX_TAB[2] = “NC2_AX3” ; Link axis

; Unique NCU axis names


$MN_AXCONF_MACHAX_NAME_TAB[0] = “NC1_A1”
$MN_AXCONF_MACHAX_NAME_TAB[1] = “NC1_A2”
$MN_AXCONF_MACHAX_NAME_TAB[2] = “NC1_A3”

CHANDATA(1)
$MC_AXCONF_MACHAX_USED[0] = 1
$MC_AXCONF_MACHAX_USED[1] = 2
$MC_AXCONF_MACHAX_USED[2] = 3

...

; Machine data of NCU2:


$MN_NCU_LINKNO = 2 ; Set NCU number to 2 (slave NCU)
$MN_MM_NCU_LINK_MASK = 1
$MN_MM_SERVO_FIFO_SIZE = 3 ; 1)
$MN_MM_LINK_NUM_OF_MODULES = 2

$MN_AXCONF_LOGIC_MACHAX_TAB[0] = “AX1”
$MN_AXCONF_LOGIC_MACHAX_TAB[1] = “AX2”
$MN_AXCONF_LOGIC_MACHAX_TAB[2] = “NC1_AX3” ; Link axis

; Unique NCU axis names


$MN_AXCONF_MACHAX_NAME_TAB[0] = “NC2_A1”
$MN_AXCONF_MACHAX_NAME_TAB[1] = “NC2_A2”
$MN_AXCONF_MACHAX_NAME_TAB[2] = “NC2_A3”

CHANDATA(1)
$MC_AXCONF_MACHAX_USED[0] = 1
$MC_AXCONF_MACHAX_USED[1] = 2
$MC_AXCONF_MACHAX_USED[2] = 3
...
1) With SW 5 the machine data is: MD 10087: SERVO_FIFO_SIZE.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-195
Several Operator Panel Fronts and NCUs (B3) 06.05
6.6 Axis container coordination

6.6 Axis container coordination


The characteristic as a function of time is displayed from top to bottom in the
following tables. The data are valid on condition that only two channels have
axes in the container.

6.6.1 Axis container rotation without a parts program wait

Channel 1 Channel 2 Comment


AXCTWE(C1) Parts program ... Channel 1 enables the axis container
for rotation
Parts program without movement of Parts program ...
a container axis
AXCTSWE(C1) Channel 2 enables the axis container
for rotation, container rotates because
both channels have enabled rotation
Parts program with movement of a Parts program with movement of a Without wait
container axis container axis

6.6.2 Axis container rotation with an implicit parts program wait

Channel 1 Channel 2 Comment


AXCTWE(C1) Parts program ... Channel 1 enables the axis container
for rotation
Parts program with movement of a Parts program ... Channel 1 waits implicitly for axis
container axis container rotation
AXCTSWE(C1) Channel 2 enables the axis container
for rotation, container rotates.
Channel 1 continues.

6.6.3 Axis container rotation by one channel only (e.g. during


power-up)

Channel 1 Channel 2 Comment


AXCTWED(C1) In the RESET state Instantaneous rotation

Copyright © Siemens AG, 2005.


2/B3/6-196 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.7 Evaluating axis container system variables

6.7 Evaluating axis container system variables


6.7.1 Conditional branch

Channel 1 Comment
AXCTWE(CT1) Channel 1 enables the axis container for rotation.
MARKER1: Part program without movement of a
container axis
IF $AC_AXCTSWA[CT1] == 1 GOTOB MARKE1 Conditional branch dependent on completion of
axis container rotation.
Part program with movement of a
container axis

6.7.2 Static synchronized action with $AN_AXCTSWA

Channel 1 Comment
IDS =1 EVERY $AN_AXCTSWA[CT1] == 1 DO M99 Static synchronized actions:
Always output auxiliary function M99 at the beginning of an
axis container rotation.
References: /FPSY/, FB Synchronized Actions

6.7.3 Wait for certain completion of axis container rotation

If you want to wait until the axis container rotation is reliably completed, you can
use one of the examples below selected to suit the relevant situation.

Example 1
check position
rl = $AN_AXCTAS[ctl] ; Read current axis container position
AXCTSWE(ctl) ; Permit axis container rotation
WHILE (rl == $AN_AXCTAS[ctl]) ; Wait until axis container position
ENDWHILE ; has changed

Example 2 for 1st


channel
CLEARM(9) ; Delete synchronization marker 9
AXCTSWE(ctl) ; Permit axis container rotation
; Delay synchronized action until
; axis container rotation is completed
WHEN $AN_AXCTSWA[ctl] == TRUE DO SETM(9) ; Set marker 9 and
WAITMC(9, 1) ; Wait for synchronization marker 9
; in 1st channel

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-197
Several Operator Panel Fronts and NCUs (B3) 06.05
6.7 Evaluating axis container system variables

Example 3.1
Use internal wait
M3 S100 ; Program axis container spindle again
; An internal wait for the end of the axis container rotation
; is implemented

Example 3.2
Use internal wait
x=IC(0) ; Program axis container axis x again
; An internal wait for the end of the axis container rotation
; is implemented

Example 3.3
Use internal wait
AXCTSWE(CTL) ; If an axis container is enabled again for rotation,
; an internal wait for the end of the preceding
; axis container rotation is implemented
N2150 WHILE (rl == $AN_AXCTAS[ctl])

Note
Programming in the NC program:
WHILE ($AN_AXCTSWA[n] == 0)
ENDWHILE
cannot be used as a reliable method of determining whether an earlier axis
container rotation has finished. Although in software version 7.x and later,
$AN_AXCTSWA performs an implicit preprocessing stop, this type of
programming cannot be used as the block can be interrupted by a
reorganization. The system variable then returns “0” as the axis container
rotation is then ended.

Copyright © Siemens AG, 2005.


2/B3/6-198 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.8 Configuration of a multi-spindle turning machine

6.8 Configuration of a multi-spindle turning machine

Introduction The following example describes the use of:

S Several NCUs in the NCU link group


S Flexible configuration with axis containers

Machine
description S Distributed on the circumference of a drum A (front-plane machining) the
machine has:
– 4 main spindles HS1 to HS4
Each main spindle has the possibility of material feed (bars, hydraulic
bar feed, axes: STN1 – STN4).
– 4 cross slides
– Each slide has two axes.
– Optionally a powered tool S1–S4 can operate on each slide.

S Distributed on the circumference of a drum B (rear-plane machining) the


machine has:
– 4 counterspindles GS1 to GS4
– 4 cross slides
– Each slide has two axes.
– Optionally a powered tool S5–S8 can operate on each slide.
– The position of each counterspindle can be offset through a linear axis
for example for transferring parts from the main spindle for rear-plane
machining in drum B. (Transfer axes. Axes: ZG1 – ZG4).

S Linkages:
– If drum A rotates, all main spindles of this drum are subordinate to
another group of slides.
– If drum B rotates, all main counterspindles and all transfer axes of this
drum are subordinate to another group of slides.
– Rotations of drums A and B are autonomous.
– Rotations of drums A and B are limited to 270°
(range and torsion of supply lines).

Term: position Main spindle HSi and counterspindle GSi together with their slides characterize
a position.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-199
Several Operator Panel Fronts and NCUs (B3) 06.05
6.8 Configuration of a multi-spindle turning machine

NCU assignment The axes and spindles of a position (for this example) are each assigned to an
NCU. One of the NCUs, the master NCU, controls the axes for the rotations of
drums A and B additionally. There are 4 NCUs with a maximum of the following
axes:

Number of axes
Per NCUi the following axes/spindles must be configured:
Slides 1: Xi1, Zi1
2: Xi2, Zi2
Spindles: HSi, GSi, powered tools: S1, S2
Transfer axis: ZGi
Bar feed: STNi.
For the master NCU, in addition to the above-mentioned axes there are the two
axes for rotating drums A and B. The list shows that it would not be possible to
configure the axis number for a total of 4 positions via an NCU. (Limit 31 axes,
required are 4 + 10 + 2 axes).

Axis container With rotation of drums A/B, HSi, GSi, ZGi and STNi must be assigned to another
NCU and must therefore be configured as link axes in axis containers.

Front-plane machining: Drum V Back–plane machining: Drum H


NCUd
ZG4
STN4
HS4 Part transfer GS4

Position d

NCUc
STN3 ZG3
HS3 GS3
Part transfer

Position c

TRV TRH
NCUa

ZG1
HS1 GS1
Part transfer
Position a

STN1 NCUb
ZG2
Bar feed: HS2 GS2
STN2 Part transfer
Position b

Fig. 6-17 Main spindles HSi, countersp. GSi, bar infeed axis STNi and transfer axes ZGi diagrammatic

Copyright © Siemens AG, 2005.


2/B3/6-200 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.8 Configuration of a multi-spindle turning machine

X2C

Z2C

Position c

HS3

Z1C

X1C

Fig. 6-18 Two slides per position can also operate together on one spindle.

Note
For clarifying the assignment of axes to slides and positions, the axes are
named as follows:
Xij with i slide (1, 2), j position (A – D)
Zij with i slide (1, 2), j position (A – D)
Positions and their slides remain in a fixed position, whereas main spindles,
counterspindles, bar feed axes STN and transfer axes ZG move to new
positions by rotation of drums V or H.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-201
Several Operator Panel Fronts and NCUs (B3) 06.05
6.8 Configuration of a multi-spindle turning machine

For example, the axes to be managed per NC when the slide is taken into
account are as follows for the configurations shown in the foregoing illustrations:

Axes of the
master NCU
Table 6-5 Axes of master NCU: NCUa
Common axes Local axes Remarks
TRV (drum V) Master NCU only
TRH (drum H) Master NCU only
X1A Slide 1
Z1A Slide 1
X2A Slide 2
Z2A Slide 2
S1 Slide 1
S2 Slide 2
HS1 Axis container necessary
GS1 Axis container necessary
ZG1 Axis container necessary
STN1 Axis container necessary
4 8

Axes of NCUb to The NCUs that are not master NCUs have the same axes with the exception of
NCUd the axes for the drive for drums TRV and TRH. The letter designating the
position must be replaced accordingly for the NCU and axis name (a, A → b, B
to d, D).

Configuration The following rules were applied for the configuration described below:
rules
S Main spindle, counterspindles and axes that are assigned to different NCUs
through drum rotation while they are operating as illustrated in the above
Fig. “Main spindle ...” must be configured in an axis container.
(HSi, GSi, ZGi, STNi).

S All main spindles for drum A are in the same container (No. 1).
S All bar feed axes for drum A are in the same container (No. 2).
S All counterspindles for drum B are in the same container (No. 3).
S All transfer axes for drum B are in the same container (No. 4).
S Main spindles HSi and their counterspindle GSi as well as the transfer axes
for counterspindle ZGi and the bar feed axes STNi of the main spindle are
assigned as follows for uniform load distribution purposes:
NCUa HS1 – STN1,
NCUb HS2 – STN2, ...etc.

S Slide axes Xij, Zij are solely local axes with a fixed NCU assignment.

Copyright © Siemens AG, 2005.


2/B3/6-202 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.8 Configuration of a multi-spindle turning machine

S Slides are all assigned to a separate channel on an NCU.


Thus slides can be moved autonomously.

Configuration
possibilities
S Main or counterspindles are flexibly assigned to the slide.
S In each position the main spindle and counterspindle spindle speed can be
determined independently.

Exceptions:

During part change from front-plane machining in drum V to rear-plane


machining in drum H, the main spindle and counterspindle must be brought
to the same spindle speed (synchronous spindle coupling).

If slide 2 is also active in front-plane machining to “support” slide 1, in this


case the main spindle speed is also valid for slide 2. By the same principle,
if slide 1 is active in rear-plane machining, the counter spindle speed is also
applicable for slide 1.

Small changes in Owing to the unavoidable time delays incurred in the processing of actual
speed values, abrupt changes in speed should be avoided during cross-NCU
machining operations. Compare axis data and signals.

Configuration for Uniform use of channel axis names in the parts programs:
NCU1
S4 main spindle
S3 counterspindle
X1 infeed axis
Z1 longitudinal axis
S1 powered tool
Z3 transfer axis
TRV drum V for main spindle
TRH drum H for counterspindle
STN hydraulic bar feed
Axes highlighted in bold characterize the current channel as home channel for
the axis in conjunction with axis exchange.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-203
Several Operator Panel Fronts and NCUs (B3) 06.05
6.8 Configuration of a multi-spindle turning machine

Table 6-6 NCUa, position: a, channel: 1, slide: 1

Channel axis ..._MA- $MN_ Container, slot Machine axis


name CHAX_ AXCONF_LOGIC_MA- entry (string) name
USED CHAX_TAB
S4 1 AX1: CT1_SL1 1 1 HS1
NC1_AX1
S3 2 AX2: CT3_SL1 3 1 GS1
NC1_AX2
X1 3 AX3: X1A
Z1 4 AX4: Z1A
Z3 5 AX5: CT4_SL1 4 1 ZG1
NC1_AX5
S1 6 AX6: WZ1A
STN 7 AX7: CT2_SL1 2 1 STN1
NC1_AX7
TRV 11 AX11: TRV
TRH 12 AX12: TRH
x2 *
z2 *

Table 6-7 NCUa, position: a, channel: 2, slide: 2

Channel axis ..._MA- $MN_ Container, slot Machine axis


name CHAX_ AXCONF_LOGIC_MA- entry (string) name
USED CHAX_TAB
S4 1 AX1: CT1_SL1 1 1 HS1
NC1_AX1
S3 2 AX2: CT3_SL1 3 1 GS1
NC1_AX2
Z3 5 AX5: CT4_SL1 4 1 ZG1
NC1_AX5
STN 7 AX7: CT2_SL1 2 1 STN1
NC1_AX7
X2 8 AX8: X2A
Z2 9 AX9: Z2A
S1 10 AX10: WZ2A
x1 *
z1 *

Note

S * due to program coordination via axis positions and 4-axis machining in one
position

S Entries in the axis container locations should have the following format:
“NC1_AX..” required with the meaning NC1 = NCU 1. In the above tables,
NCUa is imaged on NC1_..., NCUb on NC2_... etc.

Copyright © Siemens AG, 2005.


2/B3/6-204 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
6.8 Configuration of a multi-spindle turning machine

Further NCUs The above listed configuration data must be specified accordingly for NCUb to
NCUd. Please note the following:
– Axes TRA and TRB only exist for NCUa, channel 1.
– The container numbers are maintained for the other NCUs as they were
specified for the individual axes
– The slot numbers are:
NCUb → 2
NCUc → 3
NCUd → 4
– The machine axis names are:
NCUb → HS2, GS2, ZG2, STN2
NCUc → HS3, GS3, ZG3, STN3
NCUd → HS4, GS4, ZG4, STN4

Axis container The information relating to containers given in Table 6-6 and the container
entries of the similarly configured NCUs, NCUb to NCUd, are specified in the
following tables, sorted according to containers and slots, as they have to be set
in machine data
MD 12701: $MN_AXCT_AXCONF_ASSIGN_TAB1[slot]
...
MD 12716: $MN_AXCT_AXCONF_ASSIGN_TAB16[slot]
with slots : 1 – 4 for the 4 positions of a multi-spindle turning machine:

Note
For the MD entry $MN_AXC_AXCONF_ASSIGN_TABi[slot], the values (without
decimal point and machine axis name) that are entered under initial position in
the above tables must be set.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-205
Several Operator Panel Fronts and NCUs (B3) 06.05
6.8 Configuration of a multi-spindle turning machine

Table 6-8 Axis container and their position-dependent contents for drum A
Container Slot Initial position Switch 1 Switch 2 Switch 3 Switch 4 =
(TRA o°) (TRA 90°) (TRA 180°) (TRA 270°) (TRA 0 °)

1 1 NC1_AX1, HS1 NC2_AX1, HS2 NC3_AX1, HS3 NC4_AX1, HS4 NC1_AX1, HS1

2 NC2_AX1, HS2 NC3_AX1, HS3 N4C_AX1, HS4 NC1_AX1, HS1 NC2_AX1, HS2

3 NC3_AX1, HS3 NC4_AX1, HS4 NC1_AX1, HS1 NC2_AX1, HS2 NC3_AX1, HS3

4 NC4_AX1, HS4 NC1_AX1, HS1 NC2_AX1, HS2 NC3_AX1, HS3 NC4_AX1, HS4

2 1 NC1_AX7, STN1 NC2_AX7, STN2 NC3_AX7, STN3 NC4_AX7 STN4 NC1_AX7, STN1

2 NC2_AX7, STN2 NC3_AX7, STN3 NC4_AX7, STN4 NC1_AX7, STN1 NC2_AX7, STN2

3 NC3_AX7, STN3 NC4_AX7, STN4 NC1_AX7, STN1 NC2_AX7, STN2 NC3_AX7, STN3

4 NC4_AX7, STN4 NC1_AX7, STN1 NC2_AX7, STN2 NC3_AX7, STN3 NC4_AX7, STN4

Drum movement 0° + 90 ° + 90 ° + 90 ° – 270 °

STN4 STN3 STN2 STN1 STN4


HS4 HS3 HS2 HS1 HS4

HS3 HS2 HS1 HS4 HS3


STN3 STN2 STN1 STN4 STN3

HS1 HS4 HS3 HS2 HS1

STN1 STN4 STN3 STN2 STN1


HS2 HS1 HS4 HS3 HS2
STN2 STN1 STN4 STN3 STN2

Fig. 6-19 Positions of drum A

Table 6-9 Axis container and their position-dependent contents for drum B

Container Slot Initial position Switch 1 Switch 2 Switch 3 Switch 4 =


(TRB o°) (TRB 90°) (TRB 180°) (TRB 270°) (TRB 0 °)

3 1 NC1_AX2, GS1 NC2_AX2, GS2 NC3_AX2, GS3 NC4_AX2, GS4 NC1_AX2, GS1

2 NC2_AX2, GS2 NC3_AX2, GS3 NC4_AX2, GS4 NC1_AX2, GS1 NC2_AX2, GS2

3 NC3_AX2, GS3 NC4_AX2, GS4 NC1_AX2, GS1 NC2_AX2, GS2 NC3_AX2, GS3

4 NC4_AX2, GS4 NC1_AX2, GS1 NC2_AX2, GS2 NC3_AX2, GS3 NC4_AX2, GS4

4 1 NC1_AX5, ZG1 NC2_AX5, ZG2 NC3_AX5, ZG3 NC4_AX5 ZG4 NC1_AX5, ZG1

2 NC2_AX5, ZG2 NC3_AX5, ZG3 NC4_AX5, ZG4 NC1_AX5, ZG1 NC2_AX5, ZG2

3 NC3_AX5, ZG3 NC4_AX5, ZG4 NC1_AX5, ZG1 NC2_AX5, ZG2 NC3_AX5, ZG3

4 NC4_AX5, ZG4 NC1_AX5, ZG1 NC2_AX5, ZG2 NC3_AX5, ZG3 NC4_AX5, ZG4

Copyright © Siemens AG, 2005.


2/B3/6-206 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
6.9 Lead link axis

6.9 Lead link axis


6.9.1 Configuration

Master axis Lead link axes


Following
axes

X Y Z X Y Z X Y Z

LAX1 LAX2 LAX3 LAX1 LAX2 LAX3 LAX1 LAX2 LAX3

AX1 AX3
AX1 AX2 AX3 AX2 AX3

NCU1 NCU2 NCUn

Coupled axes on leading axis NC1_AX3 with


Z(LAX1) on NCU2 and
Z(LAX2) on NCUn as lead link axes

Fig. 6-20 NCU2 to NCUn use a lead link axis to enable coupling to the machine axis on NCU1 (NCU1–AX3).

The following example refers to the axis coupling section between Y(LAX2,
AX2) as following axis on NCU2 and Z(LAX3, NC1_AX3) as lead link axis.

Loading the
machine data
1. The machine data/setting data of a master value axis may only be loaded on
the home NCU The machine data are distributed internally to the other
NCUs where a lead link axis has been defined.
2. The lead link axis must be taken into account when configuring the NCU
that is traversing the following axes (NCU2). The lead link axis occupies one
location in the logical machine axis image (LAI) of the (NCU2). This reduces
the maximum number of axes to be interpolated by this NCU by 1 for the
lead link axis.
In addition to the LAI axis location definition, the lead link axis must also be
defined as channel axis ($MC_AXCONF_MACHAX_USED) in every
channel where it will be used together with the following axis; this also
reduces the maximum number of possible channel axes.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-207
Several Operator Panel Fronts and NCUs (B3) 10.00
06.05
6.9 Lead link axis

Machine data for NCU traversing leading axis


NCU1

$MN_NCU_LINKNO = 1 ; Master Ncu


$MN_MM_NCU_LINK_MASK = 1 ; NCU link active

$MN_MM_LINK_NUM_OF_MODULES = 2 ; Number of link modules


$MN_MM_SERVO_FIFO_SIZE = 4 ; Size of data buffer
; between interpolation
; and position control
; increased to 4

$MN_AXCONF_LOGIC_MACHAX_TAB[0] = “AX1”
$MN_AXCONF_LOGIC_MACHAX_TAB[1] = “AX2”
$MN_AXCONF_LOGIC_MACHAX_TAB[2] = “AX3”
$MA_AXCONF_ASSIGN_MASTER_NCK[ AX3 ] = 1
$MN_AXCONF_MACHAX_NAME_TAB[0] = “XM1”
$MN_AXCONF_MACHAX_NAME_TAB[2] = “YM1”
CHANDATA(1)
$MC_AXCONF_MACHAX_USED[0] = 1 ; X
$MC_AXCONF_MACHAX_USED[1] = 2 ; Y
$MC_AXCONF_MACHAX_USED[2] = 3 ; Z

Machine data for NCU(s) traversing following axis


NCU2

$MN_NCU_LINKNO = 2 ; Set NCU number to 2


$MN_MM_NCU_LINK_MASK = 1 ; Activate link
$MN_MM_NUM_CURVE_TABS = 5 ; Number of curve tables
$MN_MM_LINK_NUM_OF_MODULES = 2 ; Number of link modules
$MN_MM_NUM_CURVE_SEGMENTS = 50
$MN_MM_NUM_CURVE_POLYNOMS = 100
$MN_MM_SERVO_FIFO_SIZE = 2 ; Size of data buffer
; between interpolation
; and position control
; (default)
$MN_AXCONF_LOGIC_MACHAX_TAB[0] = “NC1_AX3” ; Lead link on
; NCU1/ AX3

$MN_AXCONF_LOGIC_MACHAX_TAB[1] = “AX2”

$MN_AXCONF_LOGIC_MACHAX_TAB[2] = “AX3

CHANDATA(1)
$MC_AXCONF_MACHAX_USED[0]=3 ; X
$MC_AXCONF_MACHAX_USED[1]=2 ; Y
$MC_AXCONF_MACHAX_USED[2]=1 ; Z ; Assignment to LAI AX1
; or NCU1/AX3

Copyright © Siemens AG, 2005.


2/B3/6-208 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
6.9 Lead link axis

6.9.2 Programming

Program on NCU 1 NCU1 traverses leading axis Z. The variable is 1 for as long as NCU2 is
prepared for movement of the leading axis (messages via link variable
$A_DLB[0]); after completion of movement, the variable is 0.
N3000 R1 = 1 ; Timer for movement loop
N3004 G1 Z0 F1000
N3005 $A_DLB[0] = 1 ; Start on NCU1
LOOP30:
N3005 R1=R1+1
N3006 G91 Z0.01 ; The leading axis is now
; traversed
N3008 Z0.02
N3010 Z0.03
N3012 IF R1 < 10 GOTOB LOOP30
N3098 $A_DLB[0] = 0 ; Terminate on NCU1
N3099 GOTOF TESTE

NC program on The program establishes a connection between leading axis movements on


NCU2 NCU1 and following axis movements on NCU2 via a curve table. Once the table
has been defined, NCU2 goes to wait position until NCU1 starts the leading
axis. Then the coupling is activated and maintained until the leading axis
movement is terminated.
N2800 CTABDEL(1)
N2801 G04 F.1
N2803 G0 Y0 Z0
;******************************************************
; Create table 1
;******************************************************
N2802 CTABDEF(Y, Z, 1, 0)
N2803 G1 X0 Y0
N2804 G1 X100 Y200
N2805 CTABEND
LOOP29:
N2806 IF ($A_DLB[0]== 0) GOTOB LOOP29 ; Wait for NCU1
N2810 LEADON(Y,Z,1)
LOOP292: ; Activate link !!!
N2830 IF ($A_DLB[0] > 0) GOTOB LOOP292 ; Maintain link until
; NCU1 is no longer traversing
; the leading axis
N2890 LEADOF(Y,Z)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-209
Several Operator Panel Fronts and NCUs (B3) 10.00
06.05
6.10 NCU link with different interpolation cycles

6.10 NCU link with different interpolation cycles


6.10.1 Example of eccentric turning

Task Create a non-circular shape with the following characteristics:


Ellipticity: 0.2 mm
Diameter of base circle: 50 mm
Z path per revolution: 0.1 mm
Spindle speed: 3000 rpm
A sinusoidal approximation via a cubic polynomial per 45 degrees of spindle
revolution should be sufficient for the required precision.

Note
Polynomials up to the 5th degree can be used with software Version 6 and
higher. See Programming Guide Advanced.
The part program (shown as an extract) is executed in a channel of the NCU
with the faster interpolation cycle on which the X axis (local axis) and the C and
Z axes are configured as link axes.
CAD systems are used to determine the polynomial coefficients by calculating
them from points on the contour and the desired degree of polynomial.

The following parts program describes the commands required for the first
spindle revolution. It must then be continued accordingly for the entire required
length of the Z path:
G0 C0 X24.95 Z0 ; Start position
FGROUP(C) ; Provides constant spindle speed
G1 G642 F1080000 ; Spindle speed 3000 RPM
POLY ; Specification of polynomials
C=DC(45.0000000) PO[X]=(25.0,.0750000,–0.0250000)
PO[Z]=(.2125000,0,0)
;1/8 circle, linear Z movement, 1/4 sine in X
C=DC(90.0000000) PO[X]=(25.0500000,0,–0.0250000)
PO[Z]=(.2250000,0,0)
C=DC(135.0000000) PO[X]=(25.0,–0.0750000,.0250000)
PO[Z]=(.2375000,0,0)
C=DC(180.0000000) PO[X]=(24.9500000,0,.0250000)
PO[Z]=(.2500000,0,0)
C=DC(225.0000000) PO[X]=(25.0,.0750000,–0.0250000)
PO[Z]=(.2625000,0,0)
C=DC(270.0000000) PO[X]=(25.0500000,0,–0.0250000)
PO[Z]=(.2750000,0,0)
C=DC(315.0000000) PO[X]=(25.0,–0.0750000,.0250000)
PO[Z]=(.2875000,0,0)
C=DC(0) PO[X]=(24.9500000,0,.0250000) PO[Z]=(.3000000,0,0)
...

Copyright © Siemens AG, 2005.


2/B3/6-210 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Several Operator Panel Fronts and NCUs (B3)
6.10NCU link with different interpolation cycles

Machine data For information on configuring the machine data, please refer to 2.5.1, 2.6 and
Section 4.2.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/6-211
Several Operator Panel Fronts and NCUs (B3) 06.05
6.10 NCU link with different interpolation cycles

Notes

Copyright © Siemens AG, 2005.


2/B3/6-212 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
7.1 Interface signals

Data Fields, Lists 7


7.1 Interface signals

DB num- Bit, byte Name Refe-


ber rence
General Signals from NC to PLC
10 104.0 MCP1 ready
10 104.1 MCP2 ready
10 104.2 HHU ready
10 107.6 NCU link active
10 108.1 MMC 2-CPU ready (MMC to OPI or MPI)
10 108.2 MMC CPU1 Ready (MMC to MPI) A2
10 108.3 MMC CPU1 Ready (MMC to OPI, standard link) A2

DB num- Bit, byte Name Refe-


ber rence
General Connection request indication interface
19 DBW100 ONL_REQUEST Online request from MMC
19 DBW102 ONL_CONFIRM Acknowledgement to MMC
19 DBW104 PAR_CLIENT_IDENT MMC bus address, bus type
19 DBB106 PAR_MMC_TYP Main / secondary control panel /
Alarm server
19 DBB107 PAR_MSTT_ADR Address of MCP to be activated
19 DBB108 PAR_STATUS Connection status
19 DBB109 PAR_Z_INFO Additional information connection
status /
No. of the MMC-PLC interface
19 DBW110 M_TO_N_ALIVE Ring counter, M:N switchover act.

DB num- Bit, byte Name Refe-


ber rence
General Online interface
19 DBW120 MMC1_CLIENT_IDENT MMC bus address, bus type
19 DBB122 MMC1_TYP Main / secondary control panel /
Alarm server

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/7-213
Several Operator Panel Fronts and NCUs (B3) 06.05
7.1 Interface signals

DB num- Bit, byte Name Refe-


ber rence
19 DBB123 MMC1_MSTT_ADR Address of MCP to be
(de)activated
19 DBB124 MMC1_STATUS Connection status
19 DBB125 MMC1_Z_INFO Additional information connection
19 DBX126.0 MMC1_SHIFT_LOCK MMC switchover disable
19 DBX126.1 MMC1_MSTT_SHIFT_LOCK MCP switchover disable
19 DBX126.2 MMC1_ACTIVE_REQ MMC requests active operating mode
19 DBX126.3 MMC1_ACTIVE_PERM Enable from PLC to change the
operating mode
19 DBX126.4 MMC1_ACTIVE_CHANGED MMC has changed operating mode
19 DBX126.5 MMC1_CHANGE_DENIED MMC active/passive
switchover rejected
19 DBW130 MMC2_CLIENT_IDENT MMC bus address, bus type
19 DBB132 MMC2_TYP Main / secondary control panel /
Alarm server
19 DBB133 MMC2_MSTT_ADR Address of MCP to be
(de)activated
19 DBB134 MMC2_STATUS Connection status
19 DBB135 MMC2_Z_INFO Additional information connection
19 DBX136.0 MMC2_SHIFT_LOCK MMC switchover disable
19 DBX136.1 MMC2_MSTT_SHIFT_LOCK MCP switchover disable
19 DBX136.2 MMC2_ACTIVE_REQ MMC requests active operating mode
19 DBX136.3 MMC2_ACTIVE_PERM Enable from PLC to change the
operating mode
19 DBX136.4 MMC2_ACTIVE_CHANGED MMC has changed operating mode
19 DBX136.5 MMC2_CHANGE_DENIED MMC active/passive
switchover rejected

DB num- Bit, byte Name Refe-


ber rence
General Signals from NC to PLC
31 – 61 60.1 NCU link axis active
31 – 61 61.1 Axis container rotation active
31 – 61 61.2 Axis ready

Copyright © Siemens AG, 2005.


2/B3/7-214 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Several Operator Panel Fronts and NCUs (B3)
7.2 Machine/setting data

7.2 Machine/setting data

Number Names Name Refe-


rence
General ($MN_ ...
10002 AXCONF_LOGIC_MACHAX_TAB[n] Logical NCU machine axis image
10065 POSCTRL_DESVAL_DELAY Position setpoint delay
10087 SERVO_FIFO_SIZE Size of data buffer between interpolation and posi-
tion controller task (up to SW 5, then MD 18720
see below)
10134 MM_NUM_MMC_UNITS Number of simultaneous MMC communication
partners
11398 AXIS_VAR_SERVER_SENSITIVE Response of the AXIS-VAR server to errors
12510 NCU_LINKNO NCU number in an NCU group
12520 LINK_TERMINATION NCU numbers for which bus terminating resistors
are active
12530 LINK_NUM_OF_MODULES Number of NCU link modules
12540 LINK_BAUDRATE_SWITCH Link bus baud rate
12550 LINK_RETRY_CTR Maximum number of message frame repeats in
event of error
12701 AXCT_AXCONF_ASSIGN_TAB1[s] List of axes in the axis container
... ...
12716 AXCT_AXCONF_ASSIGN_TAB16[s]
12750 AXCT_NAME_TAB[n] List of axis container names
18700 MM_SIZEOF_LINKVAR_DATA Size of the NCU link variable memory
18720 MM_SERVO_FIFO_SIZE Size of data buffer between interpolation and posi-
tion controller task (SW 6 and higher)
18780 MM_NCU_LINK_MASK Activation of NCU link communication

Channel ($MC_ ... )


20000 CHAN_NAME Channel name K1
20070 AXCONF_MACHAX_USED Machine axis number valid in channel K2
28160 MM_NUM_LINKVAR_ELEMENTS Number of write elements for the NCU link vari-
ables

Axis ($MA_ ... )


30550 AXCONF_ASSIGN_MASTER_CHAN Default assignment between an axis and a chan- K5
nel
30554 AXCONF_ASSIGN_MASTER_NCU Initial setting defining which NCU generates set-
points for the axis
30560 IS_LOCAL_LINK_AXIS Axis is a local link axis
32990 POCTRL_DESVAL_DELAY_INFO Current position setpoint delay

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B3/7-215
Several Operator Panel Fronts and NCUs (B3) 06.05
7.3 Interrupts

Setting data ($SN_ ... )


41700 AXCT_SWWIDTH[container number] Axis container rotation setting
43300 ASSIGN_FEED_PER_REV_SOURCE Rotational feedrate for positioning axes/spindles V1

7.3 Interrupts

A more detailed description of the alarms which may occur is given in

References: /DA/, Diagnostic Guide

or in the online help.


J

Copyright © Siemens AG, 2005.


2/B3/7-216 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Operation via PG/PC (B4)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-5
2.1 Software installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-5
2.1.1 System requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-5
2.1.2 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-6
2.1.3 Software supplementary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-10
2.1.4 Start the program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-11
2.1.5 Close the program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-11
2.2 Operation via PG/PC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-12
2.2.1 General operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-12
2.2.2 Additional information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-14
2.2.3 Operation of operator panel fronts . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-15
2.3 Simulation of parts programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/2-15
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/4-17
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/4-17
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/7-19
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/7-19
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/7-19
7.1 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/B4/7-19
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B4/i
06.05

Notes

Copyright © Siemens AG, 2005.


2/B4/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Operation via PG/PC (B4)
1 Brief Description

Brief Description 1
Applications The “Operation via PG/PC” functionality

S must be utilized if no operator panel front is installed.


S can be utilized as a handling support for OP030 panels.

Hardware The following HW requirements must be fulfilled:

S PG/PC with at least 486DX33 processor and 8 MB main memory


S MS Windows must be running in ENHANCED mode (386 mode)
S PG/PC with MPI/OPI interface (provided with PG 720/720C/740/760).
An MPI card (6ES7793-2AA00-0AA0) is available for PCs with free ISA slot.

S VGA monitor with a resolution of 640x480 or higher.

Design and Link between two operator panel fronts and one NCU. The machine control
Implementation: panel MCP is permanently allocated to the NCU.
Variant 1

MMC102/
OP030 103 PG/PC
replaced
by

MPI/OPI

MCP NCU

Fig. 1-1 Configuration with OP030 and PG/PC or MMC

All operator panel fronts and the NCU are either connected to the OPI bus or all
to the MPI bus. A homogenous network must be provided with respect to these
components.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B4/1-3
Operation via PG/PC (B4) 06.05
1 Brief Description

Implementation Link between one operator panel front and up to three NCUs. The machine
Variant 2 control panel is permanently allocated to the NCU concerned.

PG with
MMC
STEP7
Start-up tool

MPI/OPI

MCP1 NCU1 MCP2 NCU2 MCP3 NCU3

Fig. 1-2 Configuration m:n corresponds to 1 : 3

References: /FB/ 2, B3, “Several Operator Panel Fronts and NCUs”

Software see Chapter 2


installation

User interfaces The user interfaces are described in the Operator’s Guides of the relevant
operator panel fronts.

References: /BA/, Operator’s Guide


/FBO/, BA, OP030 Operator’s Guide

Restrictions If the “Operation via PG/PC” functionality is used in addition to an OP030


operator panel, the conditions relating to configuration and coordination
described in /FB2/, B3, “Several operator panel fronts and NCUs” must be
observed.

References: /FB/ 2, B3, “Several Operator Panel Fronts and NCUs”


J

Copyright © Siemens AG, 2005.


2/B4/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Operation via PG/PC (B4)
2.1 Software installation

Detailed Description 2
2.1 Software installation

2.1.1 System requirements

Hardware The following hardware requirements must be fulfilled to allow operation via
requirements PG/PC:

S IBMr AT-compatible PG/PC with 486DX33 microprocessor


S At least 8MB of main memory
S Diskette drive (3 1/2 inch)
S Hard disk drive for managing data
S Monochrome or color monitor
S Keyboard
S PG/PC with MPI interface (available for PG 720/720C/740/760)
Limited operation without MPI card is possible (e.g. interactive
programming)
Note: RS-232 MPI adapter is not supported.

S Mouse
S Connecting cable to link PG/PC and NCU module

Note
All operator panel fronts and the NCU are either
– connected to the OPI bus or
– connected to the MPI bus.
A homogeneous network must be provided with respect to these components.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B4/2-5
Operation via PG/PC (B4) 06.05
2.1 Software installation

Software Software configuration for operation via a PG/PC:


requirements
S MS-DOS operating systemr, version 6.x or higher
S WINDOWST operator interface, version 3.1 or later
S MPI interface driver (contained in the supplied software).
S WINDOWST 32s, version 1.30.166.0 or later
(you will find the current version in “windows\system\win32s.ini”.)
If WINDOWST 32s is not installed, it can be installed from 2 supplied
diskettes (call setup.exe).

2.1.2 Installation

Storage area of The storage area of the MPI card must be excluded from use by the memory
MPI card manager (files: CONFIG.SYS, SYSTEM.INI).

Example of entry in SYSTEM.INI:


[386enh]
EmmExclude=....<card area>
(see HW description of card)

Scope of delivery System software:


– Approx.10 diskettes with compressed system software and installation
tools
– 2 diskettes WINDOWS 32s subsystem (= Microsoft setup).
To install the software, please follow the procedure detailed below:

Call-up
1. Start SETUP.EXE
Insert the first installation diskette and use the WINDOWST file manager to start
the SETUP.EXE file.
The installation program requests all further necessary inputs and disk changes
in user dialog.

2. Enter installation path


Select the directory plus the installation path (see screenshot) to which you wish
to copy the Software.
With Continue, you continue the installation, with Exit Setup you interrupt the
installation procedure.
This also applies to further operations.

Copyright © Siemens AG, 2005.


2/B4/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Operation via PG/PC (B4)
2.1 Software installation

Fig. 2-1 Enter installation path

3. Select operation with MPI or without MPI

Fig. 2-2 Operation with/without MPI

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B4/2-7
Operation via PG/PC (B4) 06.05
2.1 Software installation

4. Select turning or milling

Fig. 2-3 Select turning/milling

Note
If you want to change the selection mode later, select the directory “MMC 2”
and copy “dpturn.exe” (turning) or “dpmill.exe” (milling) into the directory
“dp.exe”.

5. Select drive,
only if several local disk drives are available
Select the drive for the tmp directory (see Fig.)

Fig. 2-4 Select drive

If this does not apply, select drive C:\.

Note
The contents of the directory “tmp” are deleted on the installation drive with
each restart of the MMC.

Following the selection, a status display with the inputs made is shown.

Copyright © Siemens AG, 2005.


2/B4/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Operation via PG/PC (B4)
2.1 Software installation

Fig. 2-5 Status display of the installation mode

6. Press Continue to request the installation diskettes.

Note
Please observe the requests made on the screen.

The program group “SINUMERIK 840D MMC V3.2” is generated.


With successful installation, the following message is displayed:
“MMC installation is complete”
If you want to change the installation path, press Go back.

7. Make settings

7a OPI interface (1.5 Mbaud), Configuration: 1 MMC to 1 NCU (on delivery)


Additional settings are not required.

7b MPI interface (187.5 kbaud), Configuration: 1 MMC to 1 NCU (on delivery)


1. Determination of the NCK/PLC bus address
– if PLC < SW 3.2, then NC address = 13
PLC address = 2

– if PLC  SW 3.2 and module PLC 314,


then NC address = 13
PLC address = 2

– if PLC  SW 3.2 and module PLC 315,


then NC address = 3
PLC address = 2
2. Entering the addresses in files
– File “S7CFGPGX.DAT”
In the file “S7CFGPGX.DAT” on the MPI driver directory (<installation
path>\MMC2\DRV.ID) the following entries must be adapted to the
existing hardware configuration by means of an ASCII editor:

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B4/2-9
Operation via PG/PC (B4) 06.05
2.1 Software installation

# Interrupt setting
“hwint_vector”: Setting the interrupt for the MPI card. This interrupt
may not be used by another card (e.g. network adapter).
Default setting: 10.

# Settings for baud rate


“baud rate”, “tslot” and “tgap”: Settings for the baud rate. These
3 settings must always be activated/deactivated together by
removing/inserting the leading “#” (comment).
When the baud rate is changed, the setting “ADDRESS1=\PLC,
10000d01” for 1.5 Mbaud or “ADDRESS1=\PLC, 10000201 for
187.5 kbaud must also be adapted in section [840D] in file
<installation path>\MMC2\MMC.ini.
Default setting: 1.5 MBaud.
– File “netnames.ini”
The following lines in the file must be changed:
# bus = opi must be replaced by = mpi

# nck_address = 13 must be replaced by = 3 (if PLC  SW3.2)


= 13 (if PLC < SW3.2)
# plc_address = 13 must be replaced by = 2

Parallel Installation in parallel with the STEP7/AS300 SW can give rise to problems. It
STEP7/AS300 may be necessary to reconfigure the drives and restart the system.
application

2.1.3 Software supplementary conditions

S Function keys
The function keys may not be actuated in any of the displays until the
display has fully built up.

S Monochrome screen
When a monochrome screen is used, the colors used by the MMC must be
adapted accordingly. For this purpose, select the color scheme
“Monochrome” or
“Mono positive” in display “Start-up\MMC\Color setting”.

S Easy parameterization
The display “Start-up\MMC\OPI parameters” can now be called even if there
is no link to the NC kernel. This means that the OPI parameters for baud
rate and network address can be set easily.

Copyright © Siemens AG, 2005.


2/B4/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Operation via PG/PC (B4)
2.1 Software installation

2.1.4 Start the program

Program call The HMI Advanced software is started on a PG/PC either

S from the program manager through selection of the “SINUMERIK 840D


MMC V2.3” program group followed by a double click on the “MMC
Startup” symbol or

V3.2

Fig. 2-6 SINUMERIK 840D MMC program group

S from the file manager by a double click on file REG_CMD.EXE.

Communication If no communication link can be established to the NCK or 611D, then the
message “No communication to NCK” is displayed. If the data exchange is
interrupted, e.g. by an NCK reset, then the HMI Advanced software tries to
re-establish the communication link itself.

2.1.5 Close the program

Deselecting The HMI Advanced software is deselected via the following steps:
the program
1. Press function key F10
A horizontal soft key bar is displayed.
2. Press function key Shift + F9

3. You can terminate the program by activating the Exit soft key.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B4/2-11
Operation via PG/PC (B4) 06.05
2.2 Operation via PG/PC

2.2 Operation via PG/PC

2.2.1 General operation

Operating The special function keys of the operator keyboard can be used with the full
philosophy keyboard. Operator inputs can be made using the mouse or via the keyboard.

Key assignments The following table shows the assignments between the function keys and the
soft keys/special keys:

Note
The editor displays only the characters which can be input via the operator
panel front keyboard.

Table 2-1 Key assignments between operator keyboard and full keyboard

Full key-
F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12
board

with vertic vertic vertic vertic vertic vertic vertic vertic


SHIFT soft. 1 soft. 2 soft. 3 soft. 4 soft. 5 soft. 6 soft. 7 soft. 8

without horiz horiz horiz horiz horiz horiz horiz horiz W Y


SHIFT soft. 1 soft. 2 soft. 3 soft. 4 soft. 5 soft. 6 soft. 7 soft. 8

Full key- Home


5 Esc Insert Page Page Enter
board: Up Down

without
: X ? ‘ %
SHIFT

Alarm or message 3000 EMERGENCY STOP


line
Alarm or message line for displaying information for the operator.

Copyright © Siemens AG, 2005.


2/B4/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Operation via PG/PC (B4)
2.2 Operation via PG/PC

i-R Selection fields i and R which appear in every display have the following
meaning:

S The i field is selected with the Help key or by a mouse click. No help
information is available in Software Version 1.

S The R field is selected with the key F9 or by a mouse click. Selection of this
field activates the Recall function, i.e. returns the user to the preceding level.

Input fields Traversing range upper limit 0 mm


Traversing range lower limit 0 mm

To allow the input of data, the input cursor is positioned in the appropriate input
field by means of the TAB or SHIFT + TAB keys or by a mouse click. The
editing mode is always preset to Overwrite. It is possible to switch back and
forth between overwrite mode and insert mode by means of the Insert key.

List fields Measurement Freq. response

Measured quantity Following error

The functions offered are selected with the cursor keys UP (") and DOWN (#) or
by a mouse click. The displayed function is valid.
The list fields are selected by means of the TAB or SHIFT + TAB keys or a
mouse click.

Single/multiple Enable
selector button
Internal external

The required function is activated with cursor keys LEFT (z) and RIGHT (!) or
by a mouse click.
The function fields are selected by means of the TAB or SHIFT + TAB keys or
by a mouse click.

Multiple selector button Single selector button

= active or: = active

= not active = not active

Activation To be able to alter values and functions, the window with the input field must be
of fields activated by means of keys CTRL + TAB or with the key HOME (yellow frame =
focus).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B4/2-13
Operation via PG/PC (B4) 06.05
2.2 Operation via PG/PC

2.2.2 Additional information

Axis selection The “Select axis/Select next axis” inputs in axis-specific displays are always
made via the uniformly positioned vertical soft keys AXIS+ or AXIS–.

Function All functions are activated by means of soft key START and deactivated by
selection/ means of soft key STOP.
deselection

Password When the soft key Set password is selected, a dialog box is displayed into
which the password can be entered. Passwords are input as described in:
References: /BA/, Operator’s Guide
/FB/, A2, “Various Interface Signals”

Keyboard Apart from the assignments of keys F1 to F12 and SHIFT + F1 to F10, the
assignments conditions and key assignments are the same as those under WINDOWST 3.1.

The key combination ALT + TAB can be selected at any time to switch from
“Operation via PG/PC” to other WINDOWST applications.

Copyright © Siemens AG, 2005.


2/B4/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Operation via PG/PC (B4)
2.3 Simulation of parts programs

2.2.3 Operation of operator panel fronts

The system responds as follows, for example, when two panel fronts are
operated in the configuration illustrated below:

OP030 MMC PG/PC


replaced
by

MPI/OPI

MCP NCU

1. For the NCU, there is no difference whether the input is from the MMC or
OP030 operator panel fronts.
2. The operator panels are mutually independent in terms of data display, i.e.
the display selected on one panel is not affected by the display on the other.
3. Spontaneous events such as alarms are displayed on both control units.
4. The protection level with the highest authorization in accordance with the
lowest activated protection level number applies to both operator panel
fronts.
5. The system does not provide for any further co-ordination between the
operator panels.
For further information, please refer to
References: /FB/, B3, Several Operator Panel Fronts and NCUs
/BA/ Operator’s Guide

2.3 Simulation of parts programs

A Windows 32s, version 1.30.166.0 or higher, must be installed in order to


operate the parts program simulation.
For operating instructions, please refer to
References: /BA/ Operator’s Guide.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B4/2-15
Operation via PG/PC (B4) 06.05
2.3 Simulation of parts programs

Notes

Copyright © Siemens AG, 2005.


2/B4/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Operation via PG/PC (B4)
4 Data Descriptions (MD, SD)

Supplementary Conditions 3
There are no other supplementary conditions to note.
J

Data Descriptions (MD, SD) 4


No special machine data exist for this function.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B4/4-17
Operation via PG/PC (B4) 06.05
4 Data Descriptions (MD, SD)

Notes

Copyright © Siemens AG, 2005.


2/B4/4-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Operation via PG/PC (B4)
7.1 Interrupts

Signal Descriptions 5
No signals are required at the NCK–PLC interface for this function.
J

Example 6
None
J

Data Fields, Lists 7


No signals or machine data are required for this function.

7.1 Interrupts
A more detailed description of the alarms which may occur is given in

References: /DA/, Diagnostic Guide

or in the online help.


J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/B4/7-19
Operation via PG/PC (B4) 06.05
7.1 Interrupts

Notes

Copyright © Siemens AG, 2005.


2/B4/7-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Remote Diagnostics (F3)

The Description of Functions Remote Diagnostics is included in the following


documentation:

/FBFE/ SINUMERIK 840D/840Di/810D


Description of Functions Remote Diagnostics

The previous document “Remote Diagnostics (F3)” in this manual has been
replaced by the above document.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/F3/i
06.05

Notes

Copyright © Siemens AG, 2005.


2/F3/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
11.02
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Manual and Handwheel Travel (H1)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-5
2.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-5
2.1.1 General characteristics of manual traverse in JOG . . . . . . . . . . . . . 2/H1/2-5
2.1.2 Control of manual traverse functions via PLC interface . . . . . . . . . . 2/H1/2-8
2.1.3 Control response at power ON, mode change, reset, block search,
repositioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-9
2.2 Continuous jogging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-10
2.2.1 Distinction between jog mode and continuous mode . . . . . . . . . . . . 2/H1/2-10
2.2.2 Special features of continuous jogging . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-12
2.3 Incremental jogging (INC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-12
2.3.1 Distinction between jog mode and continuous mode . . . . . . . . . . . . 2/H1/2-12
2.3.2 Special features of incremental jogging . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-14
2.4 Handwheel traversal in JOG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-15
2.4.1 Travel request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-19
2.4.2 Double use of the handwheel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-22
2.5 Handwheel override in automatic mode . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-24
2.5.1 General functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-24
2.5.2 Programming and activation of handwheel override . . . . . . . . . . . . . 2/H1/2-27
2.5.3 Special features of handwheel override in automatic mode . . . . . . 2/H1/2-29
2.6 Third handwheel via actual-value input (840D, 810D) . . . . . . . . . . . 2/H1/2-30
2.7 Contour handwheel / path definition by handwheel (840D, 810D) . 2/H1/2-32
2.8 Special features of JOG mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-35
2.8.1 Geometry axes in JOG mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-35
2.8.2 Special features of spindle jogging . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-36
2.8.3 Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-37
2.8.4 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-38
2.9 DRF offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-40
2.10 Start-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/2-43
2.10.1 Configuring handwheels with PROFIBUS link . . . . . . . . . . . . . . . . . . 2/H1/2-43
2.10.2 Machine and setting data for handwheel travel . . . . . . . . . . . . . . . . . 2/H1/2-50

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/iii
11.02
06.05

3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/4-53


4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/4-53
4.1 General machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/4-53
4.1.1 Third handwheel via actual-value input (840D, 810D) . . . . . . . . . . . 2/H1/4-55
4.1.2 Contour handwheel /path definition by handwheel (840D, 810D) . . 2/H1/4-56
4.1.3 Traversing request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/4-57
4.2 Channelspecific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/4-58
4.3 Axis/spindle-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/4-61
4.4 General setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/4-65
4.5 Channelspecific setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/4-69
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/5-71
5.1 General signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/5-71
5.1.1 Signals from NC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/5-71
5.2 Channel-specific signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/5-74
5.2.1 Overview of signals to channel (to NCK) . . . . . . . . . . . . . . . . . . . . . . 2/H1/5-74
5.2.2 Overview of signals to channel (to NCK) . . . . . . . . . . . . . . . . . . . . . . 2/H1/5-75
5.2.3 Overview of signals from channel to PLC . . . . . . . . . . . . . . . . . . . . . 2/H1/5-79
5.2.4 Description of signals from channel to PLC . . . . . . . . . . . . . . . . . . . . 2/H1/5-80
5.2.5 Description of signals for contour handwheel . . . . . . . . . . . . . . . . . . 2/H1/5-85
5.3 Axis/spindle-specific signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/5-87
5.3.1 Overview of signals to axis/spindle . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/5-87
5.3.2 Description of signals to axis/spindle . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/5-87
5.3.3 Overview of signals from axis/spindle . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/5-91
5.3.4 Description of signals from axis/spindle . . . . . . . . . . . . . . . . . . . . . . . 2/H1/5-91
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/7-95
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/7-95
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/7-95
7.2 Machine Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/7-97
7.3 setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/7-98
7.4 Alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/H1/7-98
J

Copyright © Siemens AG, 2005.


2/H1/iv SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
1 Brief Description

Brief Description 1
Setting up Even on modern, numerically controlled machine tools, a facility must be
the machine provided that allows the operator to traverse the axes manually. This is
especially necessary when a new machining program is being set up and the
machine axes have to be moved with the traversing keys on the machine
control panel or with the electronic handwheel. Where coordinate offset or
rotation is selected, handwheel jogging can even be performed in the
transformed workpiece coordinate system.

Retraction of tool After a program interruption caused, for example, by NC-STOP, RESET or
power failure, the machine operator must retract the tool manually from its
current machining position. This is usually done by operating the traversing
keys in JOG mode. The transformations and coordinate systems used for
machining must remain active while this is done.

Contents The following Description of Functions illustrates the options and characteristics
associated with the JOG traverse mode.

S Continuous jogging in jog or continuous mode (in JOG)


S Incremental jogging (INC) in jog or momentary-trigger mode (in JOG)
S Traversing the axes using electronic handwheels (accessories) (in JOG)
S Handwheel override in AUTOMATIC (path setting and velocity override)

DRF The differential resolver function generates an additional incremental zero offset
in AUTOMATIC mode via the electronic handwheel. This function can be used,
for example, to compensate for tool wear within a programmed block.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/1-3
Manual and Handwheel Travel (H1) 06.05
1 Brief Description

Notes

Copyright © Siemens AG, 2005.


2/H1/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.1 General

Detailed Description 2
2.1 General

2.1.1 General characteristics of manual traverse in JOG

The following is a description of the characteristics which generally apply to


JOG mode (irrespective of the type selected).

JOG mode JOG mode must be active if the axes are to be traversed manually (referred to
as “Manual traverse” below). The PLC receives the interface signal “Active
mode: JOG” (DB11, DBX4.2) when the operating mode is activated.
References: /FB/, K1, “Mode Group, Channels, Program Operation”

Machine There are several JOG variants (so-called “machine functions”) within the JOG
functions mode:
– Continuous jogging (JOG CONT)
– Incremental jogging (JOG INC)
– Jogging with the handwheel.

Handwheel The handwheel operation is also active with the following functions:
operation – Operating mode JOG-REPOS for moving the geometry and machine
axes
– Operating mode AUTOMATIC, for moving out a DRF displacement
– with path override
– when moving the backlash point of an oscillation.
The machine function is selected via the PLC interface. A separate PLC
interface exists for both the machine axes (axis-specific) and the geometry axes
(channel-specific).

Simultaneous All axes can be traversed simultaneously in JOG.


traversal There is no interpolation between several axes traversed simultaneously.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-5
Manual and Handwheel Travel (H1) 06.05
2.1 General

Velocity The velocity for JOG traversal is determined by the following value settings
depending on the feed mode:

S When linear feedrate (G94) is active


(SD: JOG_REV_IS_ACTIVE (revolutional feedrate in JOG) = 0):
– with general SD: JOG_SET_VELO (JOG velocity with G94) or
for rotary axes
with the general SD: JOG_ROT_AX_SET_VELO (JOG velocity for rotary
axes)
– or with axis-specific MD: JOG_VELO (jog velocity), only if SD:
JOG_SET_VELO = 0.

S When revolutional feedrate (G95) is active


(SD: JOG_REV_IS_ACTIVE (revolutional feedrate in JOG) = 1):
– with general SD: JOG_REV_SET_VELO (JOG speed with
G95)
– or with axis-specific MD: JOG_REV_VELO (revolutional feedrate in
JOG), only if SD: JOG_REV_SET_VELO = 0.
The default setting for feedrate velocity is mm/min and for revolutional feedrate
rpm.

Rapid traverse If the rapid traverse override key is pressed at the same time as the traversing
override keys, then the movement is executed at the rapid traverse velocity set in
axis-specific MD: JOG_VELO_RAPID (axis velocity in JOG mode with rapid
traverse override) (or in the case of revolutional feedrate, set in MD:
JOG_REV_VELO_RAPID).

Feedrate The velocity traversed with JOG can also be influenced with the aid of the axial
override feedrate override switch, when the IS “Axial feedrate override active” (DB31, ...
DBX1.7) is set.
The assignment of the percentages to the individual switch positions of the
feedrate override switch is performed via the machine data.
The axis is not traversed with switch position 0%, when 0 is entered in the
associated machine data. IS “Axial feedrate override active” has no meaning at
switch position 0%.
Instead of the position on the feedrate override switch (Gray code), the value in
percent (0% to 200%) can be set by the PLC. Again, the selection is made via
the machine data.
References: /FB/, V1, “Feedrates”

Acceleration Acceleration in manual traverse mode also takes place according to a


programmed acceleration characteristic. The acceleration characteristic
applicable in JOG mode for a single axis is defined in MD: AX_JERK_DEFAULT
(initial setting of axial jerk limitation).
References: /FB/, B2, “Acceleration”

Copyright © Siemens AG, 2005.


2/H1/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.1 General

Display The JOG basic display appears on the screen when JOG mode is selected.
This basic display contains the position, feedrate, spindle and tool values.
For information about the individual displayed values see:
References: /BA/, “Operator’s Guide”

Coordinate The operator has the option of traversing axes in different coordinate systems in
systems JOG mode. The following coordinate systems are available:
– Basic coordinate system; each axis can be traversed manually
– Workpiece coordinate system; only geometry axes can be traversed
manually (channel-specific).

Geometry axes In JOG traversing mode, an axis can be traversed as either a machine axis
(axis-specific) or as a geometry axis (channel-specific). The characteristics of
the machine axes are dealt with in the following description. The special
features of traversing geometry axes in JOG mode are described in more detail
in Subsection 2.8.1.

Manual traversal of Spindles can also be traversed manually in JOG mode. Essentially the same
spindle conditions apply as for manual traverse of axes. Spindles can be traversed in
JOG mode using the traverse keys continuously or incrementally, in
continuous-trigger or momentary-trigger mode, or with the handwheel. The
mode is selected and activated via the axis/spindle-specific PLC interface as for
the axes. The axis-specific machine data also apply to the spindles. The special
features of traversing spindles manually are described in more detail in
Subsection 2.8.2.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-7
Manual and Handwheel Travel (H1) 06.05
2.1 General

2.1.2 Control of manual traverse functions via PLC interface

MMC/NCK/PLC Most individual functions required for manual traversal in JOG are activated via
interface the PLC user interface. The machine-control manufacturer can adapt the JOG
mode functions to the machine tool through the PLC user program depending
on the configuration of the NC system.

Machine The signals between the machine control panel and the individual PLC/NCK
control panel interface data blocks are transferred by the PLC user program on a
machine-specific basis. The PLC user program defines the assignment of the
direction keys on the machine control panel to the axis/spindle (machine axes,
geometry axes) traversing keys.
The following machine control panel signals are of particular importance to
manual traverse:
– JOG mode (selection)
– Machine function INC1 ...
– Direction keys
– Feedrate override and spindle speed override.
For further information on signals sent from the machine control panel see:
References: /FB/, P3, “Basic PLC Program”

Selection of The machine functions available in JOG mode can be selected from the
machine function following locations:
– From the machine control panel (MCP) e.g. user DB interface
– From the PLC user program PLC/NCK interface.
The PLC user program transfers the machine function pending at the machine
control interface to the relevant PLC/NCK interface. The axis-specific NCK/PLC
interface (DB31, ... signals, see Section 5.3) should be used for a machine
axis /spindle and the channel-specific NCK/PLC interface (DB21, ... signals, see
Section 5.2) for a geometry axis.

Copyright © Siemens AG, 2005.


2/H1/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.1 General

2.1.3 Control response at power ON, mode change, reset,


block search, repositioning

Any reset yields an abort with braking ramp of a traversing movement triggered
by handwheel operation.

Selection of MCP The following example shows the sequence of operations for selecting the
“continuous” machine function for a machine axis of the machine control panel.

 Basic PLC
PLC
 MCP
user
program program

NCK 
PLC

Fig. 2-1 Sequence of operation for selecting a machine function from the machine
control panel

Sequence of operation
 The operator selects the machine function “Continuous JOGGING” on the
machine control panel for a machine axis.
 IS “Machine function”
The PLC program (basic or user program) combines this interface signal
and passes on the request to the NCK IS “Machine function continuous”
(DB31, ... DBX5.6).
The PLC user program first checks whether this request is permissible,
depending on the current machine state.
 IS “Active machine function”
The control selects the machine function internally. As soon as the machine
function “JOG continuous” (DB31, ... DBX65.6) is active, this is signaled by
the NCK to the PLC.
For further information on signal transmission between the machine control
panel and the PLC see:
References: /FB/, P3, “Basic PLC Program”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-9
Manual and Handwheel Travel (H1) 06.05
2.2 Continuous jogging

2.2 Continuous jogging

Selection Continuous mode in JOG mode is selected via the PLC interface (IS “Machine
function: Continuous” (DB21-28 DBX13.6, ff)). As soon as continuous mode is
active, a signal is returned to the PLC with IS “Active machine function:
Continuous” (DB21-28 DBX41.6, ff).

Traversing keys The “plus” and “minus” traversing keys are selected to move the relevant axis in
+/– the appropriate direction.
If both keys are pressed at the same time no movement takes place or a
moving axis is stopped.

Important
! When the control is switched on, axes can be traversed to the limits of the
machine because they have not yet been referenced. Emergency limit switches
might be triggered as a result.
The software limit switches and the working area limitation are not yet active.

Travel command As soon as a travel request for an axis is active (e.g. after selection of a
+/– traverse key), the IS “Travel command+” or “Travel command–” (DB21, ...
DBX40.7 or DBX40.6) is output to the PLC depending on the direction of
movement.

2.2.1 Distinction between jog mode and continuous mode

Selection In JOG mode we distinguish between traversing in jog mode and continuous
mode. The selection is made in the general SD:
JOG_CONT_MODE_LEVELTRIGGRD (JOG continuous in jog mode) and is
active for all axes.

Default setting Jog mode is the default setting.

Continuous traversal in jog mode

Function In jog mode (default setting) the axis traverses for as long as the traverse key is
held down if no axis limitation is reached first. When the traverse key is
released, the axis is decelerated to zero speed and the movement comes to an
end.

Copyright © Siemens AG, 2005.


2/H1/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.2 Continuous jogging

Continuous traversal in continuous mode

Function When the traverse key is pressed and released (first rising edge) the axis starts
to traverse at the set velocity in the desired direction. This movement is
continued after the traverse key is released. The movement of the axis is either
stopped by the operator or because of a response in the control (e.g. software
limit switch reached).

Warning
! If “continuous” mode is selected, several axes can by started by pressing and
releasing the relevant direction key. Any interlocks must be implemented via
the PLC!

Interrupting the The operator can use the following methods to interrupt the traversing
traverse movement movement:
– Set feedrate override to 0%
– Axial feed disable (PLC interface signal)
– NC STOP or NC STOP axis/spindle
If the cause of the interruption is removed again, the axis continues to traverse.

Aborting the The traversing movement can be stopped and aborted by means of the
traverse movement following operator inputs or monitoring functions:
– Same traverse key pressed again (second rising edge)
– Traverse key for the opposite direction pressed
– RESET
– When continuous jogging is deselected
– On reaching the first valid limit

Caution
! Software limit switches and working area limitations are only activated after
reference point approach.

– When a fault occurs

Note
While an axis is moving, a change of mode from JOG to AUT or MDA is
disabled internally.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-11
Manual and Handwheel Travel (H1) 06.05
2.3 Incremental jogging (INC)

2.2.2 Special features of continuous jogging

Indexing axes When an axis that is declared as an indexing axis is traversed in continuous
JOG mode, it always traverses to indexing positions. For example, the axis
traverses on to the next indexing position in the direction of travel even if the
key is released in jog mode.
References: /FB/, T1, “Indexing axes”

2.3 Incremental jogging (INC)

Programming The traversing path to be traversed by the axis is defined by so-called


increments increments (also termed “incremental dimensions”). Before the machine
operator jogs the axis he must set the required increment.
The setting is made on the machine control panel, for example. After the
corresponding logic operation, the IS “Machine function: INC1 to INCvar”
(DB31, ... DBB5 ff) associated with the required increment should be set from
the PLC user program.

Settable The operator can set up to six different increment sizes. These are subdivided
increments into:

S five fixed increments whose increment sizes are defined jointly for all axes
with the general MD: JOG_INCR_SIZE_TAB (increment size
INC/handwheel). INC1, INC10, INC100, INC1000 and INC10000 are the
default settings.

S And a variable increment (INCvar). The increment setting for the variable
increment also applies jointly to all axes and is made in SD:
JOG_VAR_INCR_SIZE (size of the variable increment for INC/handwheel).

Increment Use axial MD: JOG_INCR_WEIGHT (weighting of an increment of a machine


weighting axis for INC/handwheel) defines the path weighting of one JOG increment.

2.3.1 Distinction between jog mode and continuous mode

Selection In incremental jogging, too, we distinguish between traversing in jog mode and
continuous mode. The selection is made in the general MD:
JOG_INC_MODE_LEVELTRIGGRD (INC and REF jog mode). Jog mode is the
default setting.

Copyright © Siemens AG, 2005.


2/H1/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.3 Incremental jogging (INC)

Incremental jogging in jog mode

Function If the traverse key for the required direction (e.g. +) is pressed, the axis begins
to traverse the increment set. If the traverse key is released before the
increment has been traversed, the movement is interrupted and the axis stops.
If the same key is pressed again, the axis moves the remaining distance until it
is zero. As long as the remaining distance is greater than zero, the movement
can again be interrupted by releasing the traverse key.
Pressing the key for the opposite direction has no effect until the increment has
been completely traversed or the movement has been interrupted.

Abort traversing If you do not want to traverse the whole increment, the traverse movement can
movement be aborted with RESET or IS “Delete axial distance-to-go” (DB31, ... DBX2.2).

Incremental jogging in continuous mode

Function The axis traverses the entire set increment when the traverse key is pressed
(on the first rising edge). If the same key is pressed again (second rising edge)
before the axis has completed traversing the increment, the movement is
aborted, i.e. not completed.

Interrupt As for continuous jogging.


traversing
movement
Abort traversing The traverse movement is stopped and aborted by the following operator action
movement or monitoring functions:
– Same traverse key pressed again (second rising edge)
– Traverse key for the opposite direction pressed
– RESET
– Delete axial distance-to-go (PLC interface signal)
– On reaching the first valid limit

Caution
! Software limit switches and working area limitations are only activated after
reference point approach.

– On deselection or change of the current increment (e.g. change from


INC100 to INC 10).
– On faults (e.g. on cancellation of the servo enable).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-13
Manual and Handwheel Travel (H1) 06.05
2.3 Incremental jogging (INC)

Note
While an axis is moving, a change of mode from JOG to AUT or MDA is
disabled internally.

Warning
! If “continuous” mode is selected, several axes can by started by pressing and
releasing the relevant direction key. Any interlocks must be implemented via
the PLC!

2.3.2 Special features of incremental jogging

Indexing axes Regardless of the currently set incremental value, the axis declared as an
indexing axis (MD: INDEX_AX_ASSIGN_POS_TAB) traverses to the next
highest indexing position after the traverse key “+” is pressed. Similarly,
pressing the “–” traversing key causes the next–lower indexing position to be
approached.
References: /FB/, T1, “Indexing axes”

Copyright © Siemens AG, 2005.


2/H1/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.4 Handwheel traversal in JOG

2.4 Handwheel traversal in JOG

Selection JOG mode must be active. The operator must also set the increment INC1,
INC10, ... which applies when jogging with the handwheel. As with incremental
jogging the required machine function must be set at the PLC interface
accordingly.

Traversing When the electronic handwheel is turned the associated machine axis is
traversed either in the positive or negative direction depending on the direction
of rotation.

Traversing path The traversing path produced by rotation of the handwheel is dependent on the
following factors:

S Number of handwheel pulses received at the interface


S Active increment (machine function INC1, INC10, INC100, ... INCvar)
S Handwheel pulse weighting with general MD: HANDWH_IMP_PER_LATCH
(handwheel pulses per detent position)

S Evaluation of an increment with INC/handwheel (axis-specific MD:


JOG_INCR_WEIGHT).

Travel command During the axis movement, the IS “Travel command+” or “Travel command–”
+/– (DB31, ... DBX64.7 or DBX64.6) is output to the PLC depending on the direction
of movement.
If the axis is already being moved using the direction keys, the handwheel
cannot be used. Alarm 20051 “Jogging with the handwheel not possible” is
output.

Handwheel Two handwheels can be connected simultaneously. In this way, up to two axes
connection can be traversed by handwheel simultaneously.
Exception: If several axes are assigned to one handwheel, more than two axes
can be traversed with handwheels.

Handwheel A separate axis-specific VDI interface signal is used to make the assignment
assignment between a handwheel and a geometry or machine axis.
The axis to be moved as a result of rotating handwheel 1 or 2 can be set:

S Via the PLC user interface with IS “Activate handwheel” (DB31, ... DBX4.0 –
DBX4.2)
(For geometry axis: DB21, ... DBX12.0 – 12.2 ff)

S By menu-guided operation (MMC)


Operating the soft key Handwheel in the JOG mode basic menu displays
the window “Handwheel”. Here, every handwheel can be assigned an axis
and the handwheel can be enabled or disabled.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-15
Manual and Handwheel Travel (H1) 06.05
2.4 Handwheel traversal in JOG

The assignment is transferred to the PLC interface through the logic of the PLC
user program. In this way, several axes can be assigned to one handwheel
simultaneously.

Function The electronic handwheels (accessories) can be used to simultaneously


traverse selected axes manually. The weighting of the handwheel graduations
is dependent on the increment size weighting. Where coordinate offset or
rotation is selected, handwheel jogging can even be performed in the
transformed workpiece coordinate system.

Handwheel A separate user interface between the MMC and PLC is provided to allow
selection from activation of the handwheel from the operator panel front. This interface that the
MMC basic PLC program supplies for handwheels 1 and 2 contains the following
information:

S The axis numbers assigned to the handwheel IS


“Axis number handwheel n” (DB10, DBB100 ff)

S Additional information on machine or geometry axis IS


“Machine axis” (DB10, DBX100.7 ff)

S The channel number assigned to the handwheel if a geometry axis has


been selected on handwheel selection
IS “Channel number geometry axis handwheel n” (DB10, DBX97 ff).

S Information that the handwheel is enabled or disabled IS “Handwheel


deselected” (DB10, DBX100.6 ff)
The IS “Activate handwheel” is either set to “0” (disable) or to “1” (enable) by the
basic PLC program for the defined axis.

Input frequency The handwheel connections can receive handwheel pulses with a maximum
input frequency of 100kHz.

Velocity The axis velocity settings SD: JOG_SET_VELO (JOG velocity for G94)
SD: JOG_ROT_AX_SET_VELO (JOG velocity for rotary axes) and MD:
JOG_VELO (JOG axis velocity) used in JOG mode are also applied when axes
are traversed manually.
Because of the limited feedrate, the axis is not able to follow the handwheel
rotation synchronously, especially in the case of large pulse weighting, and
therefore lags behind.

Abortion of A RESET or the IS “Axial delete distance-to-go” (DB31, ... DBX2.2) aborts the
traversing traversing movement. The setpoint/actual-value difference is deleted. STOP
movement only interrupts the traversing movement. Any setpoint/actual-value difference is
maintained. The distance-to-go is then traversed on START.

Copyright © Siemens AG, 2005.


2/H1/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.4 Handwheel traversal in JOG

Increment value The operator can limit the size of the selected increment for geometry axes via
limitation the channel-specific machine data (MD: HANDWH_GEOAX_MAX_INCR_SIZE).
The size of the selected increment for machine axes can be limited with axial
machine data (MD: HANDWH_MAX_INCR_SIZE).
A traversing movement defined by the handwheel for a geometry axis is defined
by
– Traverse path
– size of the variable increment (SD: JOG_VAR_INCR_SIZE)
– geometry axis allocation
(MD: HANDWH_GEOAX_MAX_INCR_SIZE)
or for a machine axis by
– Traverse path
– size of the variable increment (SD: JOG_VAR_INCR_SIZE)
– machine axis allocation
(MD: HANDWH_MAX_INCR_SIZE).

Movement in the Depending on the machine data $MN_HANDWH_REVERSE, the behavior with
opposite direction a change of the traversing direction is as follows:

S If the handwheel is moved in the opposite direction, the resulting distance is


computed and the calculated end point is approached as fast as possible: If
this end point is located before the point where the moving axis can
decelerate in the current movement direction, the unit is decelerated and the
end point is approached by movement in the opposite direction. If this is not
the case, the newly calculated end point is approached immediately.

S If the handwheel is moved in the opposite direction by at least the number of


pulses indicated in the machine data, the axis is decelerated as fast as
possible and all pulses received until the end of interpolation are ignored.
That means, another movement takes place only after zero speed (setpoint
side) of the axis (new function). This feature is available with SW 3.2 and
higher.

Acceleration The acceleration rate for handwheel traversal is determined by the acceleration
characteristic programmed in MD: AX_JERK_DEFAULT (initial setting of axial
jerk limitation).
References: /FB/, B2, “Acceleration”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-17
Manual and Handwheel Travel (H1) 06.05
2.4 Handwheel traversal in JOG

Response at When axes are traversed in JOG mode, they can traverse only up to the first
software limit active limitation before the appropriate alarm is output. Depending on the
switches, working machine data $MN_HANDWH_REVERSE, the behavior is as follows (as long
area limitation as the axis on the setpoint side has not yet reached the end point):

S The distance resulting from the handwheel pulses forms a fictitious end
point which is used for the subsequent calculations: If this fictitious end point
is positioned for example 10mm behind the limit, these 10 mm must be
traversed in the opposite direction before the axis traverses again. If a
movement in the opposite direction is to be be performed immediately after
a limitation, the fictitious distance-to-go can be deleted via delete
distance-to-go or deselection of the handwheel allocation.

S All handwheel pulses leading to an end point behind the limitation are
ignored. Any movement of the handwheel in the opposite direction results
immediately in a movement in the opposite direction, i.e. away from the limit.
This feature is available with SW 3.2 and higher.

Limitations The limitations are also active when jogging with the handwheel. For further
information see Subsection 2.8.3.

Revolutional In JOG mode the behavior of the axis/spindle also depends on the setting of
feedrate setting data JOG_REV_IS_ACTIVE (revolutional feedrate when JOG active).

S If this setting data is active, an axis/spindle is always moved with


revolutional feedrate MD JOG_REV_VELO (revolutional feedrate with JOG)
or MD JOG_REV_VELO_RAPID (revolutional feedrate with JOG with rapid
traverse overlay) depending on the master spindle.

S If the setting data is not active, the behavior of the axis/spindle depends on
the setting data ASSIGN_FEED_PER_REV_SOURCE (revolutional
feedrate for positioning axes/spindles)

S If the setting data is not active, the behavior of a geometry axis on which a
frame with rotation is effective depends on the channel-specific setting data
JOG_FEED_PER_REV_SOURCE. (In the operating mode JOG,
revolutional feedrate for geometry axes on which a frame with rotation is
effective).

Copyright © Siemens AG, 2005.


2/H1/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.4 Handwheel traversal in JOG

2.4.1 Travel request

Compared to the previous behavior, additional options are possible with the
travel request signals, as described in the following.
New PLC signals: Travel request + and Travel request –:
DB21–30 DBB40 Bit 5 travel request + geometry axis 1
DB21–30 DBB40 Bit 4 travel request – geometry axis 1
DB21–30 DBB46 Bit 5 travel request + geometry axis 2
DB21–30 DBB46 Bit 4 travel request – geometry axis 2
DB21–30 DBB52 Bit 5 travel request + geometry axis 3
DB21–30 DBB52 Bit 4 travel request – geometry axis 3
DB21–30 DBB332 Bit 5 travel request + orientation axis 1
DB21–30 DBB332 Bit 4 travel request – orientation axis 1
DB21–30 DBB336 Bit 5 travel request + orientation axis 2
DB21–30 DBB336 Bit 4 travel request – orientation axis 2
DB21–30 DBB340 Bit 5 travel request + orientation axis 3
DB21–30 DBB340 Bit 4 travel request – orientation axis 3
DB31–61 DBB64 Bit 5 travel request + from axis/spindle
DB31–61 DBB64 Bit 4 travel request – from axis/spindle

With path If during handwheel travel with path definition


definition (MD 11346: HANDWH_TRUE_DISTANCE == 1 or == 3), a pending
stop condition is not an abort criterion
(see MD 32084: HANDWH_STOP_COND or
MD 20624: HANDWH_CHAN_STOP_COND),
then the output of the PLC signals Travel request and Travel command
correspond to the general behavior, see Fig. 2-2 and Fig. 2-3.

Axis should traverse Override Axis reaches


with pending stop condition end point
stop condition

Travel request signal

Travel command signal

Fig. 2-2 Signal / timing diagram $MN_VDI_FUNCTION_MASK Bit 0 = 0

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-19
Manual and Handwheel Travel (H1) 06.05
2.4 Handwheel traversal in JOG

Axis should traverse Override Axis reaches


with pending stop condition end point
stop condition

Travel request signal

Travel command signal

Fig. 2-3 Signal / timing diagram $MN_VDI_FUNCTION_MASK Bit 0 = 1

During handwheel travel with a pending stop condition, which is selected via the
machine data
MD 32084: HANDWH_STOP_COND or
MD 20624: HANDWH_CHAN_STOP_COND as abort criterion, as previously,
no travel command is output (compatibility),
but the corresponding travel request. With override of the stop condition, the
corresponding PLC travel request signal is reset, as an abort is present. A stop
condition is no longer active, but the axis cannot be traversed as the stop
condition caused an abort.
In addition, either the path definition
(MD 11346 $MN_HANDWH_TRUE_DISTANCE == 1 or == 3) is active, or the
handwheel is moved continuously, i.e. provides pulses (see Fig. 2-4).

Axis should traverse Override Axis reaches


with pending stop condition end point
stop condition

Travel request signal

Travel command signal

Fig. 2-4 Signal / timing diagram, handwheel travel when stop condition is abort criterion

Copyright © Siemens AG, 2005.


2/H1/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.4 Handwheel traversal in JOG

If a stop condition is activated during the handwheel travel movement, the


movement is aborted and the travel request and travel command reset.

With velocity If during the velocity specification


specification (MD 11346: HANDWH_TRUE_DISTANCE == 0 or == 2),
the handwheel is no longer moved, then the PLC travel request signal is reset
(see Fig. 2-5). The PLC travel request signal is also reset with handwheel
deselection.

Axis should traverse Override Axis reaches


with pending stop condition end point
stop condition

Handwheel
stopped

Travel request signal

Travel command signal

Fig. 2-5 Signal / timing diagram, handwheel travel with velocity specification when stop
condition is abort criterion

Supplementary With NC Stop present, no travel command and therefore also no travel request
conditions is output. There is an exception with DRF traversing:
If via MD 20624: HANDWH_CHAN_STOP_COND (Bit 13 == 1) a DRF
traversing is permitted in the NC Stop state, then the handwheel travel
corresponds to Fig. 2-4 and Fig. 2-5.
As for the travel command, the travel request is the sum of all the
sub-movements, i.e. also the component from couplings and offset values is
taken into account.

Examples In machine data MD 32084: HANDWH_STOP_COND, feed stop is set as abort


criterion. The PLC feed stop signal is present. Handwheel travel is selected
(JOG mode, DRF traversing in the AUTOMATIC mode).
The handwheel is turned in the positive direction: The PLC signal travel request
+ from axis/spindle is output, no travel command + from axis/spindle is output.
The PLC feed stop signal is reset: No travel request, no travel command.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-21
Manual and Handwheel Travel (H1) 06.05
2.4 Handwheel traversal in JOG

2.4.2 Double use of the handwheel

Alarm 14320 The double use of a handwheel for DRF and velocity or path override, including
contour handwheel, is prevented and displayed via the self-acknowledging
alarm 14320 (Handwheel %1 used twice (%2) in channel %3 axis %4), if the
handwheel has different effects on an axis.
This means that an overlaid motion can only be executed when a DRF offset in
the basic coordinate system, caused by the same handwheel for the axes
involved in the motion, is no longer active; i.e. the DRF motion must have been
terminated.
If an overlaid motion has been started, a DRF offset cannot be started for any of
the axes involved that are supplied by the same handwheel. Such a DRF
motion is only possible when the motion with override has reached its end point
or been aborted with delete distance-to-go or RESET.
If the handwheel override and DRF offset are to be active simultaneously, this is
possible with activation of two separate handwheels.

Example: Path Assumption:


override Channel 1 and geometry axis X corresponds to machine axis 3 and geometry
axis Y corresponds to machine axis 5 and
handwheel 2 is selected for the first geometry axis.
If block X10 Y10 FD=0 is processed in the main run, neither machine axis 3 nor
machine axis 5 can be traversed with DRF via handwheel 2. If handwheel 2 is
assigned to machine axis 3 while the channel-specific DRF signal is active, then
alarm 14320 (Handwheel 2 used twice (8) in channel 1 axis X) is signaled.
If machine axis 3 or machine axis 5 is traversed with DRF using the second
handwheel, the motion X10 Y10 FD=0 cannot be executed and alarm 14320
(Handwheel 2 used twice (3) in channel 1 axis X) or 14320 (Handwheel 2 used
twice (3) in channel 1 axis Y) is signaled.

Example: Velocity Assumption:


override of Channel 1: Channel axis A corresponds to machine axis 4 and
positioning axis this axis is assigned handwheel 1.

If block POS[A]=100 FDA[A]=0 is processed in the main run, machine axis 4


cannot be traversed with DRF. This means, if the channel-specific DRF signal is
active, then alarm 14320 (Handwheel 1 used twice (6) in channel 1 axis A) is
signaled.
If machine axis 4 is traversed with DRF, then no POS[A]=100 FDA[A]=0 motion
can be executed while a DRF motion is being performed. Alarm 14320
(Handwheel 1 used twice (1) in channel 1 axis A) is signaled.

Copyright © Siemens AG, 2005.


2/H1/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.4 Handwheel traversal in JOG

Example: Path Assumption:


override of PLC Channel 1: Handwheel 2 is assigned to machine axis 4.
axis
If an axis motion with path override of the 4th machine axis triggered by FC18 is
processed in the main run, machine axis 4 cannot be traversed with DRF. This
means, if the channel-specific DRF signal is active, then alarm 14320
(Handwheel 2 used twice (9) in channel 1 axis A) is signaled.
If machine axis 4 is traversed with DRF, then no axis motion with path override
triggered by FC18 can be executed while a DRF motion is being performed.
Alarm 14320 (Handwheel 2 used twice (4) in channel 1 axis A) is signaled.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-23
Manual and Handwheel Travel (H1) 06.05
2.5 Handwheel override in automatic mode

2.5 Handwheel override in automatic mode

2.5.1 General functionality

Function With this function it is possible to traverse axes or to change their velocities
directly with the handwheel in Automatic mode (Automatic, MDA). The
handwheel override is activated in the NC parts program using the NC language
elements FD (for path axes) and FDA (for positioning axes) and is non-modal.
With positioning axes, it is possible to activate the handwheel override modally
using the traverse instruction POSA. When the programmed target position is
reached, the handwheel override is deactivated again.
Other axes can interpolate or traverse simultaneously in the same NC block.
The function for concurrent positioning axes can also be activated by the PLC
user program.

Variation Depending on the programmed feedrate, a distinction is made between the


following:

S Path definition Axis feedrate = 0 (FDA = 0) and

S Velocity override Axis feedrate > 0 (FD or FDA > 0)


Table 2-1 shows which axis types can be influenced by the function “handwheel
override in Automatic mode”.

Table 2-1 Axes that can be influenced by the function “handwheel override in
Automatic mode”

Axis Type Velocity override Path definition


Positioning axis FDA[AXi] > 0 ; FDA[AXi] = 0
axial
Concurrent Parameter “handwheel override Parameter “handwheel override
positioning axis active” = 1 and axis feedrate > 0 active” = 1 and axis feedrate = 0
from FC 15 from FC 15
Path axis FD > 0 ; (DBW84)
applies to path velocity

Path definition With an axis feedrate setting = 0 (e.g. when FDA[AXi] is programmed as 0), the
traversing movement of the positioning axis towards the programmed target
position is controlled entirely by the operator rotating the assigned handwheel.
The direction in which the handwheel is turned determines the direction in which
the axis traverses. The programmed target position cannot be exceeded during
handwheel override. The axis can also be moved in the direction opposite to
that programmed, the movement in the opposite direction only being restricted
by the axial position limits.

Copyright © Siemens AG, 2005.


2/H1/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.5 Handwheel override in automatic mode

A block transition occurs

S when the axis has reached the programmed target position or


S the distance-to-go is deleted by the axial IS “Delete distance-to-go” (DB31,
... DBX2.2).
From this moment on, the path definition is deactivated and any further
handwheel pulses have no effect.
After this, incrementally programmed positions refer to the point of interruption
and not to the last programmed position.

Velocity override With regard to the velocity override, a distinction is made between axis feed and
path feed.

S Override of axis velocity (FDA[AXi] > 0):


The positioning axis is moved to the target position at the programmed axial
feedrate. With the assigned handwheel it is possible to increase the axis
velocity or to reduce it to a minimum of zero depending on the direction in
which the handwheel is turned. The resulting axis feedrate is limited by the
maximum velocity. The axis cannot be traversed in the direction away from
the target position.
As soon as the axis has reached the programmed target position, a block
transition occurs. In this way, the velocity override is automatically
deactivated again and any further handwheel pulses have no effect.
This also applies to concurrent positioning axes, but the target position and
the velocity are set by the PLC.

S Override of path velocity (FD > 0):


The path axes programmed in the NC block move to the target position at
the programmed path feedrate. If the velocity override is active, the
programmed path velocity
is overridden by the velocity generated with the handwheel of the 1st
geometry axis. As soon as the programmed target position is reached, a
block transition occurs.
Depending on the direction in which the handwheel is turned, the path
velocity is increased or reduced to a minimum of zero. It is not possible to
reverse the direction of the movement with the handwheel override.

Example of The “Handwheel override in AUTOMATIC mode” function is frequently used on


application grinding machines. For example, the operator can position the reciprocated
grinding wheel on the workpiece using the handwheel (path definition). After
scratching, the traverse movement is terminated and the block transition is
initiated (by activating “Delete distance-to-go”).

Preconditions In order to activate “Handwheel override in Automatic” mode the following


conditions must have been met:

S A handwheel must be assigned to the axis in question.


S Pulse weighting is programmed for the assigned handwheel.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-25
Manual and Handwheel Travel (H1) 06.05
2.5 Handwheel override in automatic mode

Handwheel The assignment of the connected handwheels to the axes is analogous to that
assignment described in Section 2.4 via the PLC user interface with IS “Activate handwheel”
(DB31, ... DBX4.0 to DBX4.2) or by menu-guided operation.
If the handwheel override is programmed for an axis for which no handwheel is
assigned, a differentiation is made for the following cases:

S With velocity override:


The axes are traversed at the programmed velocity. A self-acknowledging
alarm is output (without response).

S With path definition:


No traverse movement is performed, because the velocity is zero. A
self-acknowledging alarm is output (without response).

Note
When the velocity override is applied to path axes, only the handwheel of the
1st geometry axis acts on the path velocity.

Handwheel The traversing path of the axis that is generated by advancing the handwheel
weighting by one detent position is dependent on several factors (see Section 2.4).

S The selected increment size (general MD: JOG_INCR_SIZE_TAB[5] or axial


SD: JOG_VAR_INCR_SIZE)

S The weighting of an increment (axial MD: JOG_INCR_WEIGHT)


S Number of handwheel pulses per detent position (general MD:
HANDWH_IMP_PER_LATCH)
For example, the axis traverses by 0.001mm per handwheel detent position if
machine function INC1 and the standard setting of the above machine data are
selected.
With the velocity override, the velocity results from the path covered using the
handwheel within a period of time.

Example Assumptions:
The operator turns the handwheel at 100 pulses/second.
The selected machine function is INC100.
Machine data specified above for handwheel evaluation with default setting
⇒ Handwheel traversing path per second: 10 mm
⇒ Velocity override: 0.6 m/min

PLC interface As soon as the handwheel override takes effect, the following interface signals
signals to the PLC are set to 1:

S With positioning axes:


IS “Handwheel override active” (DB31, ... DBX62.1)

S With concurrent positioning axes:


IS “Handwheel override active” (DB31, ... DBX62.1)

S With path axes:


IS “Handwheel override active” (DB21, ... DBX33.3)

Copyright © Siemens AG, 2005.


2/H1/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.5 Handwheel override in automatic mode

Depending on the traversing direction, the corresponding IS “Travel commands


+/–” (DB31, ... DBX64.6 and 64.7) are output to the PLC for the path definition.

Limitations The axial limitations (SW limit switches, HW limit switches, working area
limitations) are effective in conjunction with handwheel override. With the path
definition, the axis can be traversed with the handwheel in the programmed
direction of travel only as far as the programmed target position.
The resulting velocity is limited by the axial MD: MAX_AX_VELO (maximum
axis velocity).

NC STOP/ If the feedrate override is set to 0% or an NC STOP is initiated while the


override = 0 handwheel override is active, the following applies:

S With path definition:


The handwheel pulses arriving in the meantime are summated and stored.
On NC start or feedrate override > 0%, the stored handwheel pulses are
activated (i.e. traversed).
However, if the handwheel is deactivated first (IS “Activate handwheel n”
DB21, ... DBB12/16/20), the stored handwheel pulses are deleted.

S With velocity specification:


The handwheel pulses arriving in the meantime are not summated and are
not active.

2.5.2 Programming and activation of handwheel override

General When the handwheel override is programmed with the NC language elements
FD (for path axes) and FDA (for positioning axes), the following points must be
observed:

S FDA and FD are nonmodal.


Exception with respect to positioning axes: If the traverse instruction POSA
is programmed, the handwheel override can be active beyond block
boundaries because the block transition is not affected by the positioning
axis.

S When the handwheel override is activated with FDA or FD, a target


position must be programmed in the NC block for the positioning axis or for
a path axis. When the programmed target position is reached, the
handwheel override is deactivated again.

S It is not possible to program FDA and FD or FA and F in the same NC block.


S The positioning axis must not be an indexing axis.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-27
Manual and Handwheel Travel (H1) 06.05
2.5 Handwheel override in automatic mode

Positioning axis Syntax for handwheel override: FDA[AXi] = [feed value]

Example 1 Activate velocity override

N10 POS[U]=10 FDA[U]=100 POSA[V]=20 FDA[V]=150 . . .

POS[U]=10 Target position of positioning axis U


FDA[U]=100 Activate velocity override for positioning axis U;
the axis velocity of U is 100 mm/min
POSA[V]=20 Target position of positioning axis V (beyond block limit)
FDA[V]=150 Activate velocity override for positioning axis V;
the axis velocity of V is 150 mm/min

Example 2 Activate path definition and velocity override in the same NC block

N20 POS[U]=100 FDA[U]= 0 POS[V]=200 FDA[V]=150 . . .

POS[U]=100 Target position of positioning axis U


FDA[U]= 0 Activate path definition for positioning axis U;
POS [V]=200 Target position of positioning axis V
FDA[V]=150 Activate velocity override for positioning axis V;
the axis velocity of V is 150 mm/min

Path axis Syntax for handwheel override: FD = [feed value]


To program “Handwheel override in Automatic mode“ for path axes, the
following conditions must be fulfilled:

S Active movement commands from group 1: G01, G02, G03, CIP


S Exact stop active (G60)
S Linear feed in mm/min or inch/min active (G94).
These conditions are checked by the control and an alarm is output if any of
them is not met.

Example 3 Activate velocity override

N10 G01 X10 Y100 Z200 FD=1500 . . .

X10 Y100 Z200 Target position of path axes X, Y and Z


FD=1500 Activate velocity override for path axes;
the path velocity is 1500 mm/min

Copyright © Siemens AG, 2005.


2/H1/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.5 Handwheel override in automatic mode

Concurrent The handwheel override for concurrent positioning axes is activated from the
positioning axis PLC via FC15. The appropriate parameter “Handwheel override ON” is set for
this purpose.
If the parameter velocity (F_value) is assigned the value 0, the activated
handwheel override acts as a path definition (i.e. the feedrate is not derived
from the axial MD: POS_AX_VELO (initial setting for positioning axis velocity)).
References: /FB/, P2, “Positioning Axes”
/FB/, P3, “Basic PLC program”

2.5.3 Special features of handwheel override in automatic mode

Velocity display The velocity display for handwheel override shows the following values:

S Set velocity: Programmed velocity

S Actual velocity: Resultant velocity including handwheel override

Effect on If the axis is defined as a transverse axis and DIAMON is active, the handwheel
transverse axes pulses are interpreted as diameter values and traversed as such while
handwheel override is active.

Dry run feedrate With active dry run (IS “Activate dry run feedrate” (DB21, ... DBX0.6 = 1)), the
dry run feedrate is always effective (SD: DRY_RUN_FEED).
In this way, the axis is traversed at dry run feedrate without the handwheel
influencing the programmed target position despite the active handwheel
override with path definition (FDA[AXi]=0) (i.e. the path definition is not active).

DRF active When “Handwheel override in automatic mode” is activated it is important to


check whether the function DRF is active (IS “Activate DRF” (DB21, ... DBX0.3
= 1)). In this case, the handwheel pulses would also cause a DRF offset of the
axis. The operator must therefore deactivate DRF first (see Section 2.9).

Feedrate override The feedrate override does not affect the velocity of the movements produced
by the handwheel (exception: 0%). It acts only on the programmed feedrate.
With path definition and rapid jogging with handwheel, the axis might not follow
the rotation of the handwheel synchronously (especially with a large handwheel
pulse weighting), so that the axis lags.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-29
Manual and Handwheel Travel (H1) 06.05
2.6 Third handwheel via actual-value input (840D, 810D)

2.6 Third handwheel via actual-value input (840D, 810D)

Function To date:
It is possible to connect two handwheels to the peripheral interface (X121,
37-pin) on the NCU module using the cable distributor, etc.
840D with SW 4.1 and higher, 810D with SW 2.1 and higher:
It is now possible to connect a third handwheel via a 611D actual-value input
that can be selected in a machine data.
A third handwheel could be used, for example, as a contour handwheel.

Comparison of the All three handwheels perform equally well in terms of response and
three handwheels functionality.
The third handwheel differs from the others only in terms of its connection
method.

Connecting the The signals of the handwheel (track A, *A, B, *B, 5V and 0V) must be wired to
handwheel to the the actual value input as follows:
actual value input

(colors are only applicable if the


O Yellow recommended cable is used)
Pin 3
*O Green
4
B Black
6
7 *B Brown Handwheel
+5 V White-black with tracks
1 A, *A, B, *B, +%v, 0V
+5 V White-red
14
0V White-yellow
2
16 0V White-blue

Actual value input Note:


25-pin female connector Attach cable shield at both ends

Fig. 2-6 Connecting the handwheel to the actual value input

Recommendation:

S Use the “Actual value cable for encoders with voltage signals”
(6FX2002-2CG00- ...)

S Cut the cable at the circular connector, remove the outer shield and place on
potential to ground

S Apply handwheel signals as shown in Fig. 2-6

Copyright © Siemens AG, 2005.


2/H1/2-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.6 Third handwheel via actual-value input (840D, 810D)

Activation, The following machine data and interface signals are required for activating the
machine data and third handwheel:
interface signals
S Machine data
MD 11340: $MN_ENC_HANDWHEEL_SEGMENT_NR
MD 11342: $MN_ENC_HANDWHEEL_MODULE_NR
MD 11344: $MN_ENC_HANDWHEEL_INPUT_NR

S Interface signals
IS “Channel number for handwheel 3” (DB10, DBX99.0, 99.1, 99.2)
IS “Axis number for handwheel 3” (DB10, DBX102.0 to 102.4)
IS “Define handwheel 3 as contour handwheel” (DB10, DBX102.5)
IS “Handwheel 3 selected” (DB10, DBX102.6)
IS “Machine axis” (DB10, DBX102.7)
IS “Activate handwheel 3” (DB21, ... , DBX12.2, 16.2, 20.2)
IS “Handwheel 3 active” (DB21, ... , DBX40.2, 46.2, 52.2)
IS “Activate handwheel 3” (DB31, ... , DBX4.2)
IS “Handwheel 3 active” (DB31, ... , DBX64.2)

Supplementary
conditions
S The alarm “Handwheel %1 configuration faulty or inactive” is issued at
power ON if any of the parameters for connecting the measuring circuit are
incorrectly set or if hardware is missing.

S In contrast with actual value encoders, there is no encoder monitoring with


connected handwheels. If hardware is defective or if cable break occurs,
there are no handwheel impulses.

S There is no interlocking for dual assignment of an actual value input.


Therefore, in principle, it is possible to assign an actual value encoder used
for position/speed detection as “third handwheel” at the same time. In this
case, the “handwheel pulses” are evaluated according to the number of
encoder marks (course increments).

S The third handwheel can only be operated after successful power up of the
SIMODRIVE 611D bus.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-31
Manual and Handwheel Travel (H1) 06.05
2.7 Contour handwheel / path definition by handwheel (840D, 810D)

2.7 Contour handwheel / path definition by handwheel


(840D, 810D)

Function When the function is activated, the feedrate of path and synchronized axes can
be controlled via a handwheel in AUTOMATIC and MDI mode.

Operating The following operating characteristics in conjunction with the contour


characteristics of handwheel can be set in MD11346: HANDWH_TRUE_DISTANCE:
function
S Path definition:
Limiting the velocity to the maximum permissible value causes the axes to
overtravel. The path preset by the handwheel is traversed; no pulses are
lost.

S Velocity specification:
The handwheel specifies only the velocity at which the axes must traverse.
    
       The axis motion is
braked immediately,          
   
  preventing overtravel by the axes. The handwheel pulses do not
supply a path default.

Feedrate The feedrate in mm/min is dependent upon:

S The number of pulses supplied by the selected handwheel within one period
S The pulse weighting of the handwheel via
MD 11320: HANDWH_IMP_PER_LATCH.
In SW 5 and lower, MD 11320 applies to both handwheel travel and contour
handwheel travel. No separate pulse weighting and direction definition data
was available for contour handwheel operation in this version.
In SW 6 and higher, contour handwheel mode can be parameterized
separately with MD 11322: CONTOURHANDWH_IMP_PER_LATCH.

S The activated increment (INC1, 10, 100, ...)


S The path weighting of an increment MD 31090: JOG_INCR_WEIGHT of first
available geometry axis)
The feedrate is not dependent upon:

S The programmed feed mode (mm/min, mm/rev.),


S The programmed feedrate (resultant velocity can be higher),
S The rapid traverse rate with G0 blocks and
S The override (the position 0% is effective, i.e. zero speed)

Copyright © Siemens AG, 2005.


2/H1/2-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.7 Contour handwheel / path definition by handwheel (840D, 810D)

Travel direction The travel direction is dependent upon the rotational direction:

S In clockwise direction: Causes axes to travel in the programmed direction


If the block change criterion (IPO end) is reached, then the program
advances to the next block (response identical to G60).

S In counterclockwise direction: Axis traverses in the programmed direction


In this case, the axis can traverse only up to the start of the next block.
Pulses are not collected if the handwheel continues to rotate.

Activation of the The function can be activated via the interface signals or via the NC program.
function
S Activation via the interface signal “Activate handwheel x as contour
handwheel”
The function is activated/deactivated by means of the following interface
signal:
IS “Activate handwheel x as contour handwheel” (DB21, ... DBX30.0, 30.1,
30.2)

S Activation via NC program


The contour handwheel can be activated in the program for individual blocks
with FD=0, that is, velocity F from the block before the contour handwheel is
effective in the following block without any new programming.

Note
If the preceding NC blocks do not contain a feedrate, then an appropriate alarm
is output.
FD and F in one NC block are mutually exclusive (e.g. generate an alarm).

Simulation of the When the contour handwheel is activated, it can also be simulated. After
contour activation via the interface signal, the feedrate is no longer preset by the contour
handwheel handwheel; the programmed feedrate is used instead. The direction is also
preset via interface signal.
IS “Simulation contour handwheel” (DB21, ... DBX30.3)
IS “Negative direction simulation contour handwheel” (DB21, ... DBX30.4)

If then
simulation is deselected, the active movement is braked with a de-
celeration ramp
the direction is changed,
Note:
The override is effective as with NC program execution.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-33
Manual and Handwheel Travel (H1) 06.05
2.7 Contour handwheel / path definition by handwheel (840D, 810D)

Supplementary
conditions
S Requirements
Permanent feed, dry run feedrate, thread cutting or tapping must not be
activated.

S Limit values
Acceleration and velocity of the axes are limited to the values defined in the
machine data.

S Interruption of traversing movement


The function remains selected after an NC STOP, but the handwheel pulses
are no longer summated and are ineffective (on the condition, however,
that in MD 32084: HANDWH_CHAN_STOP_COND bit 2 = 1).

S DRF
In addition, a selected DRF function has a path overlay action.

S Channel-specific deletion of distance-to-go


This causes the movement that was triggered by the contour handwheel to
be aborted; the axes are braked and the program is restarted with the next
NC block.
The contour handwheel is then effective again.

Copyright © Siemens AG, 2005.


2/H1/2-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
08.01
06.05 Manual and Handwheel Travel (H1)
2.8 Special features of JOG mode

2.8 Special features of JOG mode

2.8.1 Geometry axes in JOG mode

Coordinate In JOG mode the operator can also jog the axes declared as geometry axes in
systems in JOG the workpiece coordinate system. Any coordinate offsets or rotations that have
mode been selected remain active.

Note
With SW 6.3 and higher of the SINUMERIK 840D with the “handling
transformation package”, the translation of geometry axes can be set
separately in JOG mode in several valid reference systems.
References /FB/, F2, “Cartesian Manual Travel”

Application Jogging movements for which transformations and frames have to be active.
The geometry axes are traversed in the coordinate system that was last
activated. The special features of jogging geometry axes are described below.

Simultaneous Only one geometry axis can be jogged continuously or incrementally using the
traversal traverse keys. Where an attempt is made to jog more than one geometry axis,
alarm 20062 “Axis already active” is output. However, 3 geometry axes can be
jogged simultaneously with handwheels 1, 2 and 3. Alarm 20060 is output if
only one axis is not defined as a geometry axis.

PLC interface A separate PLC interface (DB21, ... DBB12–23 and DBB40–56) exists for
geometry axes that contains the same signals as the axis-specific PLC
interface.

Feedrate/rapid The channel-specific feedrate override switch and rapid traverse override switch
traverse override are active for jogging geometry axes.

Alarms Alarm 20062 “Axis already active” is triggered when a geometry axis is being
jogged under the following conditions:

S The axis is already being traversed in JOG mode via the axial PLC interface.
S A frame for a rotated coordinate system is already active and another
geometry axis in this coordinate system is traversed in JOG mode with the
traverse keys.
If the axis is not defined as a geometry axis, alarm 20060 “Axis cannot be
traversed as a geometry axis” is output if you attempt to move it in JOG mode.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-35
Manual and Handwheel Travel (H1) 06.05
2.8 Special features of JOG mode

2.8.2 Special features of spindle jogging

Manual traversal of Spindles can also be traversed manually in JOG mode. Essentially the same
spindle conditions apply as for manual traverse of axes. Spindles can be traversed in
JOG mode using the traverse keys continuously or incrementally, in
continuous-trigger or momentary-trigger mode, or with the handwheel. The
function is selected and activated via the axis/spindle-specific PLC interface in
the same way as for the machine axes. The axis-specific machine data also
apply to the spindles.

Spindle mode The spindle can be jogged in positioning mode (spindle is in position control) or
in open-loop control mode.

JOG The speed used for jogging spindles can be defined as follows:
velocity
– With the general SD: JOG_SPIND_SET_VELO (JOG speed for spindle),
which applies to all spindles,
– or with machine data JOG_VELO (JOG axis velocity) However, this MD
only has an effect if SD: JOG_SET_VELO (JOG velocity for G94) = 0.
The maximum speed for the active gear stage also applies when spindles are
traversed in JOG mode.
References: /FB/, S1, “Spindles”

Speed override The spindle speed override switch can be used to modify the speed of spindles
traversed in JOG mode.

JOG Because a spindle often uses many gear stages in speed control and position
acceleration control mode, the acceleration programmed for the current gear stage is always
applied in spindle JOG mode.
References: /FB/, S1, “Spindles”

PLC interface When spindles are traversed manually, the PLC interface signals between the
signals NCK and PLC have the same effect as for machine axes. The IS “Position
reached with exact stop fine/coarse” (DB31, ... DBX60.7 or DBX60.6) are set
only if the spindle is in position control mode.
For purely spindle-specific interface signals, the following should be noted when
traversing the spindle in JOG:

S The following PLC interface signals to the spindle have no effect:


– IS “Invert M3/M4” (DB31, ... DBX17.6)
– IS “Setpoint direction counterclockwise” or “Setpoint direction clockwise”
(DB31, ... DBX18.7 or DBX18.6)
– IS “Oscillation speed” (DB31, ... DBX18.5)
– IS “Spindle RESET” (DB31, ... DBX16.7)

Copyright © Siemens AG, 2005.


2/H1/2-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.8 Special features of JOG mode

S The following PLC interface signals from the spindle are not set:
– IS “Actual direction clockwise” (DB31, ... DBX83.7)
– IS “Spindle in setpoint range” (DB31, ... DBX83.5)

2.8.3 Monitoring

Limitations The following limitations are active in JOG mode:

S Working area limitation (axis must be referenced)


S Software limit switches 1 and 2 (axis must be referenced)
S Hardware limit switches
The control ensures that the traversing movement is aborted as soon as the first
valid limiting has been reached. Velocity control ensures that deceleration
is initiated early enough for the axis to stop exactly at the limitation position (e.g.
software limit switch). Only when the hardware limit switch is triggered does the
axis stop abruptly with “Rapid stop”.
Alarms are triggered when the various limitations are reached (alarms 16016,
16017, 16020, 16021). The control automatically prevents further movement in
this direction. The traverse keys and the handwheel have no effect in this
direction.

Important
! The software limit switches and working area limitations are only active if the
axis is first referenced.
If a work offset (DRF offset) via handwheel is active for axes, the software limit
switches of these axes are monitored during the main run in JOG mode. This
means, the jerk limitation has no effect when the software limit switches are
approached. After the acceleration from machine data MD 32300:
MAX_AX_ACCEL, the velocity is reduced at the software limit switch.

For further information on working area limitations and hardware and software
limit switches see:
References: /FB/, A3, “Axis Monitoring, Protection Zones”

Axis retraction The axis can be retracted from a limitation position by moving it in the opposite
direction.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-37
Manual and Handwheel Travel (H1) 06.05
2.8 Special features of JOG mode

Machine Manufacturer
The function for retracting an axis that has reached the limit position depends
on the machine-tool manufacturer. Please refer to the machine manufacturer’s
documentation!

Maximum velocity The velocity and acceleration values applied in JOG mode are programmed for
and acceleration specific axes via machine data by the start-up engineer. The control limits the
value for the values valid for the axes to the maximum velocity and acceleration
specifications.
References: /FB/, G2, “Velocities, Setpoint/Actual-Value Systems,
Closed-Loop Controls”
/FB/, B2, “Acceleration”

2.8.4 Miscellaneous

Switching modes It is possible to switch operating modes from JOG to AUT or MDA only if all
from JOG³AUT or axes in the channel have reached “Exact stop coarse”.
from JOG³MDA References: /FB/, K1, “Mode Group, Channels, Program Operation”

Rotational feedrate In JOG mode, it is also possible to traverse an axis at a rotational feedrate
active in JOG (analogous to G95) referred to the current speed of the master spindle. The
function is activated with SD: JOG_REV_IS_ACTIVE (JOG in revolutional
feedrate).
The feedrate value (in mm/rev) used can be defined as follows:

S With general SD: JOG_REV_SET_VELO (JOG speed for G95) if this is not
equal to 0.

S If the value 0 is set in SD: JOG_REV_SET_VELO, then the rotational


feedrate is determined by axial machine data JOG_REV_VELO (rotational
feedrate for JOG) or, in the case of rapid traverse override, by
JOG_REV_VELO_RAPID.
If a master spindle has not been defined and the axis is to be traversed in JOG
at revolutional feedrate, alarm 20055 and for geometry axes alarm 20065 is
output.

Copyright © Siemens AG, 2005.


2/H1/2-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.8 Special features of JOG mode

Transverse axes If a geometry axis is defined as a transverse axis and radius programming is
selected (MD: DIAMETER_AX_DEF (geometry axes with transverse axis
function)), the following must be noted when traversing in JOG:

S Continuous jogging:
there are no differences when a transverse axis is traversed in continuous
mode.

S Incremental jogging:
Only half the distance of the selected increment size is traversed. For
example, with INC10 the axis only traverses 5 increments when the traverse
key is pressed.

S Jogging with the handwheel:


as for incremental jogging, only half the path is traversed per handwheel
pulse.
References: /FB/, P1, “Transverse Axes”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-39
Manual and Handwheel Travel (H1) 06.05
2.9 DRF offset

2.9 DRF offset


Function With the aid of the function: “DRF offset” (Differential Resolver Function), an
additive incremental work offset of geometry and auxiliary axes can be set in the
basic coordinate system via an electronic handwheel in AUTOMATIC mode.
The handwheel assignment, i.e. the assignment of the handwheel from which
the increments for the DRF offset are to be derived, to the geometry or auxiliary
axes that are to be moved by this, must be performed via the appropriate
machine axes. The appropriate machine axis is that machine axis on which the
geometry or auxiliary axis is mapped.
The DRF offset is not displayed in the actual-value display of the axes.
References: /BAD/ “HMI Advanced Operator’s Guide”
/BEM/, “HMI Embedded Operator’s Guide”

Application The DRF offset can be used, for example, in the following application cases:
examples
S Compensating for tool wear within an NC block
Where NC blocks have a long machining time it might be necessary to
compensate for tool wear manually within the NC block (e.g. large surface
milling machines).

S Highly precise compensation during grinding


S Simple temperature compensation

Caution
The work offset introduced via the DRF offset is always effective in all operating
modes and after a RESET. It can, however, be suppressed non-modally in the
parts program.

Velocity reduction The velocity generated by the handwheel in DRF can be reduced from the JOG
velocity with the axial MD: HAND_VELO_OVERLAY_FACTOR (ratio of JOG
velocity to handwheel velocity).

DRF active DRF must be active to allow the DRF offset to be modified through traversal
with the handwheel. The following conditions must be fulfilled:

S AUTOMATIC mode
S IS “Activate DRF” (DB21, ... DBX0.3) = 1
Via the function: “Program control” of the HMI user interface, the DRF offset can
be switched on or off for specific channels.
MMC then sets IS “DRF selected” (DB21, ... DBX24.3) =1
The PLC program (basic PLC program or user program) transfers this interface
signal as IS “Activate DRF” after the corresponding logic operation.

Copyright © Siemens AG, 2005.


2/H1/2-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.9 DRF offset

Control of DRF The DRF offset can be modified, deleted or read (see Fig. 2-7):
offset
S Operator: Modifying by traversing with the handwheel
S Part program
– Reading via axisspecific system variable $AC_DRF[<axis>].
– Deleting via part program command (DRFOF) for all axes in a channel
– Block-by-block suppression via part program command (SUPA)
References: /PG/, “Programming Guide: Fundamentals”

S PLC user program


– Reading the DRF offset (axis-specific)
References: /FB1/ Basic PLC Program (P3)

S MMC
– Display of the DRF offset (axis-specific)

Note
If DRF offset is cleared the axis is not traversed!

NC part
PLC MMC Program
user program Operator (high–level
language)
Delete
Read

Read

Read

Axis n

Axis 2
DRF offset
Axis 1

Modify incrementally
Handwheel pulses x MD: HANDWH_IMP_PER_LATCH
per detent position
IS ”Active machine INC1.. MD: JOG_INCR_SIZE_TAB
Selected x function” INCvar SD: JOG_VAR_INCR_SIZE
increment size

DRF active IS ”Activate DRF” MMC IS:


& ”DRF selected”
”Automatic active” mode

– +

Handwheel 1...3

Fig. 2-7 Control of DRF offset

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-41
Manual and Handwheel Travel (H1) 06.05
2.9 DRF offset

Display The axis position display (ACTUAL POSITION) does not change while an axis
is being traversed with the handwheel in DRF. The current DRF offset can be
displayed in the DRF window.

Reference point In phase 1 of the reference point approach of the machine axis, the DRF offset
approach for the appropriate geometry or auxiliary axis is deleted.
During the reference point approach of the machine axis, a DRF offset for the
appropriate geometry or auxiliary axis cannot be performed simultaneously.

Reset response Power on reset: The DRF offset is deleted

Copyright © Siemens AG, 2005.


2/H1/2-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.10 Start-up

2.10 Start-up
2.10.1 Configuring handwheels with PROFIBUS link

Introduction The following is a description of how handwheels that can be directly connected
to the control (840D, 840Di) and handwheels on a machine control panel with
PROFIBUS link (840 D solution line, sl) can be configured in a uniform way via
machine data.
The handwheels are connected via PROFIBUS with an 840D sl control. This
requires a configuration of these handwheels via PLC with STEP7 HW
configuration. The configuration must be defined in the machine data described
below.
At present, three handwheels can be operated on the HMI (internal count 1, 2,
3).
In order to assign a physically existing handwheel to an NCK-internal
handwheel number, this must be configured via the machine data. It makes no
difference whether the handwheel is connected directly to the NC hardware
(Power Line) or operated via PROFIBUS (Solution Line). Mixed operation of
’permanently-wired’ handwheels and handwheels operated via
PROFIBUS/Profinet is possible.

Configuration with In order to guarantee compatibility to ’old’ systems, this machine data is
MD preassigned system-specifically. Therefore for the user, the configuration of
handwheels for ’old’ systems is in the usual way. (See ’Preassignment of
machine data’)

MD 11350: HANDWHEEL_SEGMENT[0 – 5]: (Index: Handwheel number – 1)


– Machine data specifies to which HW segment the handwheel is connected:
0 SEGMENT_EMPTY ;no handwheel configured
1 SEGMENT_840D_HW ;handwheel connected directly to
;840D hardware (incl. 3rd handwheel)
2 SEGMENT_802DSL_HW ;handwheel connected directly to
;802DSL hardware
5 SEGMENT_PROFIBUS ;handwheel connected via PROFIBUS

MD 11351: HANDWHEEL_MODULE[0 – 5]: (Index: Handwheel number – 1)


– Machine data specifies to which HW module the handwheel
is connected. The contents depend on the configuration in
$MN_HANDWHEEL_SEGMENT.
0 ;no handwheel configured
;$MN_HANDWHEEL_SEGMENT =
1 SEGMENT_840D_HW ;handwheel on NC hardware
1..6 SEGMENT_PROFIBUS ;index for $MN_HANDWHEEL_LOGIC_ADDRESS[]

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-43
Manual and Handwheel Travel (H1) 06.05
2.10 Start-up

MD 11352: HANDWHEEL_INPUT[0 – 5]: (Index: Handwheel number – 1)


– Machine data specifies which handwheel connected to a HW module
should be selected when several
handwheels are connected to one module, (e.g. handwheels connected
directly to NC hardware, handwheels on MCP, etc.)
0 ;no handwheel configured
1..6 ;handwheel connection on HW module
MD 11353: HANDWHEEL_LOGIC_ADDRESS[0 –5]: (Index:
$MN_HANDWHEEL_MODULE[x] – 1)
– The content of this machine data array is only relevant
when handwheels have been configured via PROFIBUS (i.e.
$MN_HANDWHEEL_SEGMENT = 5). In this case, the log. base
addresses of the corresponding handwheel slots must be entered
in this machine data array.
The log. base addresses are specified via a STEP7 HW x
STEP7 HW configuration and must be notified to the NCK in this
way so that it can access this information via the appropriate
handwheel pulses. (Note: A handwheel slot can contain several
handwheels. Several handwheels can therefore refer to the same
log. base address.)

The reference to the appropriate entry in this array


is via the machine data
$MN_HANDWHEEL_MODULE of the respective handwheel. The
index is obtained from the contents of
$MN_HANDWHEEL_MODULE[ handwheel number –1] – 1.

The appropriate handwheel of a handwheel slot is selected


via the machine data $MN_HANDWHEEL_INPUT.

MD 11324: HANDWH_VDI_REPRESENTATION specifies whether the


handwheels to the activated are to be transferred to the interface bit-coded (1
from 3) or as 3-bit wide number (handwheels 1 ... 6). Three handwheels can be
assigned to axes via the HMI.

Example 1: PowerLine 840D with 3 handwheels, of which the 1st and 2nd
handwheels are connected directly to the control HW, the 3rd
handwheel connected via a free encoder input.
1st handwheel (NCK view):
$MN_HANDWHEEL_SEGMENT[0] = 1 ;840D_HW
$MN_HANDWHEEL_MODULE[0] = 1 ;the 840D hardware is considered as a
;module!
$MN_HANDWHEEL_INPUT[0] = 1 ;first handwheel connection

2nd handwheel (NCK view):


$MN_HANDWHEEL_SEGMENT[1] = 1 ;840D_HW
$MN_HANDWHEEL_MODULE[1] = 1 ;the 840D hardware is considered as a
;module!

Copyright © Siemens AG, 2005.


2/H1/2-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.10 Start-up

$MN_HANDWHEEL_INPUT[1] = 2 ;second handwheel connection

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-45
Manual and Handwheel Travel (H1) 06.05
2.10 Start-up

3rd handwheel (NCK view):


$MN_HANDWHEEL_SEGMENT[2] = 1 ;840D_HW, as this variant was only
;possible here!
$MN_HANDWHEEL_MODULE[2] = 1 ;variant is considered same as
;840D hardware!
$MN_HANDWHEEL_INPUT[2] = 3 ;variant represents third handwheel
;to be connected!
Caution: As previously, the machine data
ENC_HANDWHEEL_SEGMENT_NR,
ENC_HANDWHEEL_MODULE_NR,
ENC_HANDWHEEL_INPUT_NR
must also be configured for the third handwheel.

Example 2 840D SL with 3 handwheels, of which


1st and 2nd handwheels via PROFIBUS on 1st MCP,
3rd handwheel via PROFIBUS on 2nd MCP (1st handwheel in
handwheel slot)

1st handwheel (NCK view):


$MN_HANDWHEEL_SEGMENT[0] = 5 ;PROFIBUS
$MN_HANDWHEEL_MODULE[0] = 1 ;reference to log. base address of the
;handwheel slot (1st MCP)
;in $MN_HANDWHEEL_LOGIC_ADDRESS[0]
$MN_HANDWHEEL_INPUT[0] = 1 ;first handwheel in this handwheel slot

2nd handwheel (NCK view):


$MN_HANDWHEEL_SEGMENT[1] = 5 ;PROFIBUS
$MN_HANDWHEEL_MODULE[1] = 1 ;reference to log. base address of the
;handwheel slot (1st MCP)
;in $MN_HANDWHEEL_LOGIC_ADDRESS[0]
$MN_HANDWHEEL_INPUT[1] = 2 ;second handwheel in this handwheel slot

3rd handwheel (NCK view):


$MN_HANDWHEEL_SEGMENT[2] = 5 ;PROFIBUS
$MN_HANDWHEEL_MODULE[2] = 2 ;reference to log. base address of the
;handwheel slot (2nd MCP)
;in $MN_HANDWHEEL_LOGIC_ADDRESS[1]
$MN_HANDWHEEL_INPUT[2] = 1 ;first handwheel in this handwheel slot

Logical base address for handwheel slot on MCPs (log. input addresses of the PLC):
$MN_HANDWHEEL_LOGIC_ADDRESS[0] = 288 ;log. base address of handwheel slot, 1st
MCP
$MN_HANDWHEEL_LOGIC_ADDRESS[1] = 304 ;log. base address of handwheel slot, 2nd
MCP

Activation
The handwheels are activated via their configuration using the appropriate
machine data. This means the internal NCK activation, i.e. the
polling/processing of the handwheel pulses in the IPO cycle.
Should the activation of a handwheel fail when ramping up the NCK (e.g. for
handwheels connected via PROFIBUS), the activation will continually be
attempted in the cyclic operation of the NCK.

Copyright © Siemens AG, 2005.


2/H1/2-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.10 Start-up

Only activated handwheels are evaluated in the cyclic operation of the NCK
(IPO cycle). The handwheel pulses of the appropriate handwheels are read in /
processed and the differential pulses (to the previous IPO cycle) made available
in the respective IPO cycle.
The configured handwheels are initialized during power-up.

Preassignment of Depending on the system, the machine data listed above are assigned
the MD different values. Whereby ’old’ systems (PowerLine) are configured in
such a way that the previous handling of these systems is retained.
Therefore, the user does not have to make any changes with respect to
this machine data.
840D system:
$MN_HANDWHEEL_SEGMENT[0–5] = {1,1,1,0,0,0}
$MN_HANDWHEEL_MODULE[0–5] = {1,1,1,0,0,0}
$MN_HANDWHEEL_INPUT[0–5] = {1,2,3,0,0,0}

840Di system:
840Di SL system:
$MN_HANDWHEEL_SEGMENT[0–5] = {1,1,0,0,0,0}
$MN_HANDWHEEL_MODULE[0–5] = {1,1,0,0,0,0}
$MN_HANDWHEEL_INPUT[0–5] = {1,2,0,0,0,0}

840D SL: System


$MN_HANDWHEEL_SEGMENT[0–5] = {0,0,0,0,0,0}
$MN_HANDWHEEL_MODULE[0–5] = {0,0,0,0,0,0}
$MN_HANDWHEEL_INPUT[0–5] = {0,0,0,0,0,0}

Supplementary PROFIBUS connection of handwheels is with NCU5xy.5 for Power Line


conditions systems and only possible with MCI2 board for 840Di.

PROFIBUS-MCP This section describes the configuration of a DP slave: MCP xxx by way of
configuration example of the hardware configuration of a SIMATIC S7 project shown in Fig.
2-8.
The hardware configuration comprises the following modules:
S SIMATIC station 300 with SINUMERIK 810D/840D and PLC 317-2DP
S SINUMERIK MCP with module: standard, handwheel, extended

To configure DP slave: MCP xxx the following steps must be carried out in the
S7 project:
1. Insert DP slave: MCP xxx in the configuration
(see Fig. 2-8, Page 2/H1/2-48: 1)
2. Set the PROFIBUS address.
3. Insert the modules in DP slave: MCP xxx for the functions required.
(see Fig. 2-8, Page 2/H1/2-48: 2)
4. Set the I/O addresses for the individual slots.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-47
Manual and Handwheel Travel (H1) 06.05
2.10 Start-up

HW Config – [SINUMERIK840D (configuration) –– PROFIBUS MCP]


Station Edit Insert Target System View Tools Window Help

(0) 810D/840D PROFIBUS(1): DP master system(1) Profile: Standard


1
2 PLC 317–2DP 2AJ10
I/O
X1 MPI (9) SINUME NC/RC
X2 DP MOTION CONTROL
3 IM 360 SINUMERIK MCP
4 S7 FM NCU Universal module
standard
2
standard, handwheel
standard, extended
standard, handwheel, ex
PROFIBUS(1): DP master system(1)

Slot DP ID Order number / designation I address O address Com...


1 55 standard, handwheel, extended 0...7 0...7
2 2IO ––> standard, handwheel, exten 258...261
3 192 ––> standard, handwheel, exten 8...12 8...9

Fig. 2-8 Configuration with DP slave: MCP 310

Requirements: S7 The following status of the S7 project into which DP slave: MCP xxx is to be
project inserted is assumed:
– You have created the S7 project
– You have set up a SIMATIC 300 station with PROFIBUS master-capable
SINUMERIK controller

Inserting the DP To insert a DP slave: MCP xxx into the configuration, open the hardware catalog
slave with menu item View > Catalog.
DP slave: MCP xxx is located under:

S Profile: Standard
PROFIBUS-DP > Other field devices > NC/RC > Motion Control
> SINUMERIK MCP
Select the DP slave by left-clicking it in the hardware catalog: MCP xxx
(SINUMERIK MCP) and drag it while holding down the mouse key onto the DP
master system in the station window.
The DP master system is displayed in the station window with the following
symbol:

When you release the left mouse key, DP slave: MCP xxx is inserted in the
configuration.

Note
As you drag the DP slave the cursor appears as a circle with a slash through it.
When the cursor is positioned exactly over the DP master system, it changes to
a plus sign, and the DP slave can be added to the configuration.

Copyright © Siemens AG, 2005.


2/H1/2-48 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.10 Start-up

PROFIBUS When you have inserted DP slave: MCP 310 into the configuration, dialog
Parameters “Properties – PROFIBUS Interface SINUMERIK MCP” is displayed.
The following PROFIBUS parameters must either be set or verified:
– PROFIBUS address
– Transmission rate
– Profile

Dialog Dialog: Properties – PROFIBUS Interface SINUMERIK MCP


Tab card: Parameter
Address: <PROFIBUS address>
Button: “Properties...”
Dialog: Properties – PROFIBUS
Tab card: Network settings
Data transfer rate: 12 Mbaud
Profile: DP
OK
OK

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-49
Manual and Handwheel Travel (H1) 06.05
2.10 Start-up

2.10.2 Machine and setting data for handwheel travel

Note
Before installation can begin several conditions must be fulfilled. For procedure
please see:
References: /IAD/ “Installation and Start-Up Guide”
/IAF/“Installation and Start-Up Guide”

Machine / The machine and/or geometry axes can be traversed manually only if specific
setting data machine/setting data have been preset. The machine and setting data that
apply specifically to manual traverse are listed below.

JOG continuous General SD: JOG_CONT_MODE_LEVELTRIGGRD


mode (JOG continuously in JOG mode)

INC and REF in jog General MD: JOG_INC_MODE_LEVELTRIGGRD


mode (INC and REF in JOG mode)

Velocity Axial MD: JOG_VELO (JOG axis velocity)


Axial MD: JOG_VELO_RAPID (JOG rapid traverse)
General SD: JOG_SET_VELO (JOG velocity for G94)
General SD: JOG_ROT_AX_SET_VELO (JOG velocity for
rotary axes)

Revolutional General SD: JOG_REV_IS_ACTIVE


feedrate (revolutional feedrate active in JOG)
Axial MD: JOG_REV_VELO ((revolutional feedrate for JOG)
Axial MD: JOG_REV_VELO_RAPID
(revolutional feedrate for JOG with rapid traverse override)
General SD: JOG_REV_SET_VELO (JOG velocity for G95)

acceleration Axial MD: AX_JERK_DEFAULT (initial setting for axial jerk


limitation)

Copyright © Siemens AG, 2005.


2/H1/2-50 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
2.10 Start-up

Incremental/ Axial MD: JOG_INCR_WEIGHT (weighting of an increment for


handwheel INC/handwheel)
General SD: JOG_VAR_INCR_SIZE
(size of a variable increment for INC/handwheel)
Axial MD: HANDWH_VELO_OVERLAY_FACTOR (ratio
JOG velocity to handwheel velocity (DRF))
General MD: JOG_INCR_SIZE_TAB [n]
(increment size for INC/handwheel)
General MD: HANDWH_IMP_PER_LATCH [n]
(handwheel pulses per detent position [handwheel number])

Spindle General SD: JOG_SPIND_SET_VELO


(JOG velocity for spindle)
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/2-51
Manual and Handwheel Travel (H1) 06.05
2.10 Start-up

Notes

Copyright © Siemens AG, 2005.


2/H1/2-52 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
4.1 General machine data

Supplementary Conditions 3
Availability of This function is available for:
function
“Handwheel
S SINUMERIK 840D with NCU 571/572/573 with SW 2 and higher
override in
automatic mode”
SINUMERIK 840Di Two handwheels can be connected to the SINUMERIK 840Di via the MCI
handwheels Board Extension module on the SINUMERIK 840Di.
The handwheels are connected via the 25-pin cable distributor interface (X121)
on the MCI Board Extension module.
J

Data Descriptions (MD, SD) 4


4.1 General machine data

11300 JOG_INC_MODE_LEVELTRIGGRD
MD number INC and REF in jog mode
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: BOOLEAN Applies from SW: 1.1
Meaning: 1: Jog mode for JOG-INC and reference point approach
JOG-INC:
When the traverse key is pressed in the required direction (e.g. +) the axis begins to
traverse the set increment. If the key is released before the increment has been
completely traversed, the movement is interrupted and the axis stops.
If the same key is pressed again, the axis completes the remaining distance-to-go until
it is 0.
0: Continuous mode for JOG-INC and reference point approach
JOG-INC:
When the traverse key is pressed (first rising edge) the axis traverses the whole set
increment. If the same key is pressed again (second rising edge) before the axis has
completed traversing the increment, the movement is aborted, i.e. not completed.
The differences in axis traversing characteristics between the jog and continuous modes in
JOG-INC are described in detail in Section 2.3.
For travel behavior in reference point approach see:
References: /FB/, R1, “Reference Point Approach”
MD irrelevant for ... ... Continuous jogging (JOG continuous)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/4-53
Manual and Handwheel Travel (H1) 06.05
4.1 General machine data

11310 HANDWH_REVERSE
MD number Threshold for change in handwheel direction
Default setting: 2 Minimum input limit: 0 Maximum input limit: –
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: BYTE Applies from SW: 3.2
Meaning: 0: No immediate movement in the opposite direction
>0: Immediate movement in the opposite direction if the handwheel is turned in the
opposite direction by at least the number of pulses indicated

11320 HANDWH_IMP_PER_LATCH[n]
MD number Handwheel pulses per detent position [handwheel number]: 0 ... 2
Default setting: 1 Minimum input limit: *** Maximum input limit: ***
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DOUBLE Applies from SW: 1.1
Meaning: MD: HANDW_IMP_PER_LATCH adapts the connected handwheels to the control system.
The number of pulses generated by the handwheel for each handwheel detent position is
entered. The handwheel pulse weighting must be defined for each connected handwheel (1
to 3) separately.
When adapted to the control, each handwheel detent position has the same effect as one
press of the traverse key in incremental jogging mode.
If a negative value is entered, the handwheel is active in the reverse direction.
Related to .... MD 31090:JOG_INCR_WEIGHT (weighting of an increment of a machine axis for INC/
manual).

11322 CONTOURHANDWH_IMP_PER_LATCH[n]
MD number Contour handwheel pulses per detent position [handwheel number]) 0 ... 2
Default setting: 1.0 Minimum input limit: – Maximum input limit: –
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DOUBLE Applies from SW: 6.3
Meaning: Factor for adapting to contour handwheel hardware:
The number of pulses output per detent position of the contour handwheel must be entered.
This setting normalizes one detent position of the contour handwheel to match one key
actuation in incremental JOG mode.
The sign reversal causes a reversal of the direction evaluation.
Related to .... MD 31090: JOG_INCR_WEIGHT (weighting of an increment of a machine axis for INC/
manual).

11330 JOG_INCR_SIZE_TAB[n]
MD number Increment size for INC/handwheel [increment index]: 0 ... 4
Default setting: 1; 10; 100; 1000; 10000 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit:
Linear axis: mm
Rotary axis: Degrees
Data type: DOUBLE Applies from SW: 1.1

Copyright © Siemens AG, 2005.


2/H1/4-54 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
4.1 General machine data

11330 JOG_INCR_SIZE_TAB[n]
MD number Increment size for INC/handwheel [increment index]: 0 ... 4
Meaning: In incremental jogging of handwheel jogging the number of increments to be traversed by
the axis can be defined by the operator, e.g. via the operator panel. In addition to the vari-
able increment sizes (INCvar) 5 fixed increment sizes (INC...) can also be set.
The increment size for each of these 5 fixed increments is defined for all axes by entering
values in JOG_INCR_SIZE_TAB [n]. The default setting is INC1, INC10, INC100, INC1000
and INC10000.
The entered increment sizes are also active for DRF.
The size of the variable increment is defined in SD: JOG_VAR_INCR_SIZE.
Related to .... MD 31090:JOG_INCR_WEIGHT(weighting of an increment for INC/manual)
IS “Active machine function: INC1; ...; INC10000” (DB21–28,
DBB41 ff)
IS “Active machine function: INC1; ...; INC10000” (DB31–48, DBB69).

4.1.1 Third handwheel via actual-value input (840D, 810D)

11340 ENC_HANDWEEHL_SEGMENT_NR
MD number Third handwheel: Bus segment
Default setting: 1 Minimum input limit: 1 Maximum input limit: 1
Changes effective after POWER ON Protection level: 0/0 Unit: –
Data type: BYTE Applies from SW: 840D SW4.1
810D SW2.1
Meaning: Number of bus segment via which the 3rd handwheel (encoder connection) is addressed:
1: Drive bus 611D
0, 2, 3: Reserved
Related to .... MD 11342: ENC_HANDWEEL_MODULE_NR (third handwheel: drive no./measuring circuit
no.)
MD 11344: ENC_HANDWHEEL_INPUT_NR (third HW: Input on module/measuring circuit
card)

11342 ENC_HANDWHEEL_MODULE_NR
MD number Third handwheel: Drive no./measuring circuit no.
Default setting: 0 Minimum input limit: 0 Maximum input limit: NCU 572: 15
Changes effective after POWER ON Protection level: 7/2 Unit: –
Data type: BYTE Applies from SW: 840D SW4.1
810D SW2.1
Meaning: Number of the module with a segment (MD 11340: ENC_HANDWHEEL_SEGMENT_NR)
via which the 3rd handwheel is addressed.

The logical drive number must be entered here for axes with 611 digital drives
(see MD 13010: DRIVE_LOGIC_NR)
and the module number on the local bus (count from left to right)
(see MD 30110: CTRLOUT_MODULE_NR).
Special cases, errors, ..... = 0:
The configuration of a 3rd handwheel is deactivated, in this case the settings in MD 11340:
ENC_HANDWHEEL_SEGMENT_NR and
MD 11344: ENC_HANDWHEEL_INPUT_NR are irrelevant.
Related to .... MD 13010: DRIVE_LOGIC_NR (logical drive number)
MD 11340: ENC_HANDWEEL_SEGMENT_NR (third handwheel: bus segment)
MD 11344: ENC_HANDWHEEL_INPUT_NR (third HW: Input on module/measuring circuit
card)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/4-55
Manual and Handwheel Travel (H1) 06.05
4.1 General machine data

11344 ENC_HANDWHEEL_INPUT_NR
MD number Third handwheel: Input on module/measuring circuit card
Default setting: 1 Minimum input limit: 1 Maximum input limit: 2
Changes effective after POWER ON Protection level: 7/2 Unit: –
Data type: BYTE Applies from SW: 840D SW4.1
810D SW2.1
Meaning: Number of the input on a module via which the 3rd handwheel is addressed.
840D: 1/2 = upper/lower actual-value input
810D: Always 1
Related to .... MD 11340: ENC_HANDWEEL_SEGMENT_NR (third handwheel: bus segment)
MD 11342: ENC_HANDWEEL_MODULE_NR (third handwheel: drive no./measuring circuit
no.)

4.1.2 Contour handwheel /path definition by handwheel (840D, 810D)

11346 HANDWH_TRUE_DISTANCE
MD number Handwheel path/velocity values
Default setting: 1 Minimum input limit: 0 Maximum input limit: 3
Changes effective after POWER ON Protection level: 7/2 Unit: –
Data type: BYTE Applies from SW: 840D SW4.1
810D SW2.1
Meaning: Sets the operating characteristics for traversal with handwheel, contour handwheel or
FDA=0:
Value = 1:
The handwheel pulses define the traversing path. No pulses are lost. Axis overtravel oc-
curs as a result of limiting the velocity to its maximum permissible value.
Value = 0:
The handwheel pulses specify the axis travel velocity. As soon as the handwheel stops, the
axes stop too. The axis motion is braked immediately, if no pulses are supplied by the
handwheel in one IPO cycle,. As a result, the axes do not overtravel. The handwheel
pulses do no define the traversing path.
Value = 2
The inputs from the handwheel are velocity inputs. As soon as the handwheel stops, the
axes stop too. The movement is braked immediately, value = 0, but not via the shortest
possible path, but to the next possible path on an imaginary grid. This grid corresponds in
each case to a distance traveled by the selected axis per handwheel detent position
(see MD 31090: JOG_INCR_WEIGHT and MD 11330: JOG_INCR_SIZE_TAB, MD 20620:
HANDWH_GEOAX_MAX_INCR_SIZE, MD 32080: HANDWH_MAX_INCR_SIZE). The
start point of the traversing motion is assumed to be the grid zero point.
Value = 3
The inputs from the handwheel are path inputs. If the axis needs to be decelerated prema-
turely owing to the settings in other MD (MD 11310: HANDWH_REVERSE = 0, MD 20624:
HANDWH_CHAN_STOP_COND, MD 32084: HANDWH_STOP_COND), then unlike value
= 1, the axis is not decelerated via the shortest possible path, but to the next possible point
on an imaginary grid.

Copyright © Siemens AG, 2005.


2/H1/4-56 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
4.1 General machine data

4.1.3 Traversing request

17900 VDI_FUNCTION_MASK
MD number Function mask for VDI signals
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 7 / 2 Unit: –
Data type: DWORD Applies from SW:
Meaning: Bit 0 = 0:
The VDI signals travel command + / travel command – are output as soon as a traversing
request is issued (default, response as in earlier software version).
Bit 0 = 1:
The VDI signals travel command + / travel command – are output only when the axis is
actually moving.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/4-57
Manual and Handwheel Travel (H1) 11.02
06.05
4.2 Channel-specific machine data

4.2 Channel-specific machine data

20620 HANDWH_GEOAX_MAX_INCR_SIZE
MD number Limitation of handwheel increment for geo axes
Default setting: 0 Minimum input limit: 0 Maximum input limit: –
Changes effective after POWER ON Protection level: 2/7 Unit: mm
Data type: DOUBLE Applies from SW: 3.2
Meaning: >0: Limitation of the size of the selected increment
MD 11330: JOG_INCR_SIZEƪ<Increment/VDI signal>ƫ or
$SN_JOG_VAR_INCR_SIZE for geometry axes
0: No limitation for geometry axes

20622 HANDWH_GEOAX_MAX_INCR_VSIZE
MD number Path velocity override
Default setting: 500 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 / 7 Unit: mm/min
Data type: DOUBLE Applies from SW: 3.2
Meaning: For the velocity override of the path:
> 0: Limitation of size of selected increment
($MN_JOG_INCR_SIZE_[<Increment/VDI signal>] or
$SN_JOG_VAR_INCR_SIZE) / 1000*IPO sampling time
=0: No limitation

20624 HANDWH_CHAN_STOP_COND
MD number Definition of operating characteristics in jogging with handwheel
Default setting: 0x13FF, 0x13FF, Minimum input limit: 0 Maximum input limit: 0xFFFF
0x13FF, ...
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: DWORD Applies from SW: 3.2, from SW 6.4 bits 12–15

Copyright © Siemens AG, 2005.


2/H1/4-58 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
4.2 Channel-specific machine data

20624 HANDWH_CHAN_STOP_COND
MD number Definition of operating characteristics in jogging with handwheel
Meaning: Definition of the behavior of jogging with handwheel with respect to channel-specific VDI
interface
signals:
Bit==0: Interruption or collection of the distances preset via the handwheel
Bit==1: Termination of the traversing motion or no collection
Bit allocation
Bit 0: Mode group stop
Bit 1: Mode group stop axes plus spindle
Bit 2: NC stop
Bit 3: NC stop axes plus spindles
Bit 4: Feedrate disable
Bit 5: Feedrate override
Bit 6: Rapid traverse override
Bit 7: Feed stop geometry axis
Bit 7=0: Interruption/collection
Bit 7=1: Traversing movement aborted/no collection
Bit 12: NC start

Setting for geometry axes:


Bit 8 =0 For JOG with handwheel, the maximum possible velocity corresponds to
the feedrate set in MD 32020: JOG_AX_VELO for the appropriate machine
axis/axes.
=1 For JOG with handwheel, the maximum possible velocity corresponds to
the feedrate set in MD 32000: MAX_AX_VELO for the appropriate machine
axis/axes.
Bit 9 =0 The override is active in JOG mode with handwheel.
=1 The override is always assumed to be 100% for JOG mode with
handwheel regardless of how the override switch is set;
Exception: The override 0% is always active.
Bit 14 = 0 For JOG with handwheel, the maximum possible velocity for revolutional
feedrate corresponds to the feedrate in setting data SD41120:
JOG_REV_SET_VELO or the feedrate in machine data
MD 32050: JOG_REV_VELO_RAPID, for rapid traverse with
MD 32040: JOG_REV_VELO_RAPID, for the appropriate machine axis,
balanced against the spindle or rotary axis feedrate.
=1 For JOG with handwheel, the maximum possible velocity for revolutional
feedrate corresponds to the feedrate in machine data MD 32000:
MAX_AX_VELO for the appropriate machine axis. (see also bit 6)
Bit 15 = 0 If the geometry axis is traversed as a transverse axis in the channel,
only half the specified increment is traversed for JOG with handwheel
(HANDWH_TRUE_DISTANCE == 1).
=1 If the geometry axis is traversed as a transverse axis in the channel,
the specified increment is traversed in full for JOG with handwheel.
(HANDWH_TRUE_DISTANCE == 1).

Setting for DRF for all the axes of the channel:


Bit 10 = 0 With DRF MD 11310: HANDWH_REVERSE is not active,
i.e. the behavior is the same as with MD 11310 = 0.
=1 With DRF MD 11310: HANDWH_REVERSE is active.
Bit 13 = 0 For DRF, bits 0 to 3 and bit 12 == 0 / bit == 1 are active, see above.
=1 For DRF, bits 0 to 3 and bit 12 are not active,
i.e. DRF motion is not interrupted by a Stop and even if interrupted in
automatic mode (brought about by NC Stop), DRF motion can occur.
Note: If an axis is stopped by an alarm and an alarm of this type
is pending, no DRF motion can occur.

Setting for the contour handwheel


Bit 11 = 0 When the contour handwheel is deactivated, program execution is
automatically continued.
Bit 11 = 1 When the contour handwheel is deactivated, an NC stop is automatically
initiated. Only after input of NC-START, can the program execution be
continued.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/4-59
Manual and Handwheel Travel (H1) 11.02
4.2 Channel-specific machine data

21106 CART_JOG_SYSTEM
MD number Coordinate system for cart. JOG
Default setting: 0 Minimum input limit: 0 Maximum input limit: 7
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 6.3
Meaning: This machine data has two different meanings.

On the one hand, it is used to activate the function Cartesian manual travel.

On the other, it can be used to specify the referencing systems for switchover.
The meanings of the individual bits is defined as follows:

Bit 0: Basic Coordinate System


Bit 1: Workpiece coordinate system
Bit 2: Tool coordinate system

Copyright © Siemens AG, 2005.


2/H1/4-60 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
4.3 Axis/spindle-specific machine data

4.3 Axis/spindle-specific machine data

31090 JOG_INCR_WEIGHT
MD number Evaluation of an increment for INC/handwheel
Default setting: 0.001 Minimum input limit: *** Maximum input limit: ***
Changes effective after POWER ON Protection level: 2 Unit:
Linear axis: mm
Rotary axis: Degrees
Data type: DOUBLE Applies from SW: 1.1
Meaning: The path of an increment which applies when an axis is traversed with the JOG keys in
incremental mode or with the handwheel is defined in this MD.
The path covered by the axis on each increment each time the direction key is pressed or
for each handwheel position is defined by the following parameters:
 MD 31090: JOG_INCR_WEIGHT (weighting of an increment of a machine axis for
INC/handwheel)
 Selected increment size (INC1, ..., INCvar)
The possible increment stages are defined globally for all axes in MD 11330:
JOG_INCR_SIZE_TAB [n] or in SD 41010: JOG_VAR_INCR_SIZE.
Entering a negative value reverses the direction of the traverse keys and the handwheel
rotation.

SW 5 and higher:
Default settings:
JOG_INCR_WEIGHT[0]=0.001 mm (valid in metric measuring system)
JOG_INCR_WEIGHT[1]=0.00254 mm (valid in inch measuring system and corresponds to
0.0001 inch)
MD irrelevant for ... ... Operating modes AUTOMATIC and MDA
Related to .... MD 11330: JOG_INCR_SIZE_TAB
SD 41010: JOG_VAR_INCR_SIZE

32010 JOG_VELO_RAPID
MD number Rapid traverse in JOG mode
Default setting: 10000 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit:
Linear axis: mm/min
Rotary axis: rpm
Data type: DOUBLE Applies from SW: 1.1
Meaning: The axis velocity entered here applies when the rapid traverse override key is operated in
JOG mode and when the axial feedrate override switch is set to 100%.
The value entered must not exceed the maximum permissible axis velocity in the machine
data (MD 32000: MAX_AX_VELO).
This machine data will not be used for the programmed rapid traverse G00.
MD irrelevant for ... ... Operating modes AUTOMATIC and MDA
Related to .... MD 32000: MAX_AX_VELO (maximum axis velocity)
MD 32040: JOG_REV_VELO_RAPID (JOG revolutional feedrate with rapid traverse)
IS “Rapid traverse override” (DB21–28, DBX12.5 ff)
IS “Feedrate override” (DB21–28, DBB4)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/4-61
Manual and Handwheel Travel (H1) 06.05
4.3 Axis/spindle-specific machine data

32020 JOG_VELO
MD number Axis velocity in JOG mode
Default setting: 2000 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit:
Linear axis: mm/min
Rotary axis: rpm
Data type: DOUBLE Applies from SW: 1.1
Meaning: The value entered is the velocity traversed in JOG mode when the axial feedrate override
switch is on position 100%.
This velocity is only used when general setting data
SD 41110: JOG_SET_VELO = 0 is set for linear axes and linear feedrate
(SD 41100: JOG_REV_IS_ACTIVE = 0) or
SD 41130: JOG_ROT_AX_SET_VELO = 0 for rotary axes.
If this is the case, the axis velocity is active for
– continuous jogging
– incremental jogging (INC1, ... INCvar)
– handwheel jogging
The value entered must not exceed the maximum permissible axis velocity in the machine
data (MD 32000: MAX_AX_VELO).
If DRF is active, the axis velocity for JOG must be reduced with
MD 32090: HANDWH_VELO_OVERLAY_FACTOR.

Spindles in JOG mode:


This machine data can also be used to define the JOG mode velocity for specific spindles
(if SD 41200: JOG_SPIND_SET_VELO = 0). However, the velocity can be modified with
the spindle speed override switch.
Application example(s) If different velocities/speeds have to be set for the individual axes/spindles traversing in
JOG mode, this can be done for specific axes in this MD. SD: JOG_SET_VELO must be
set to 0!
Related to .... MD 32000: MAX_AX_VELO (maximum axis velocity)
MD 32050: JOG_REV_VELO (revolutional feedrate for JOG)
MD 32090: HANDWH_VELO_OVERLAY_FACTOR (ratio JOG velocity to handwheel ve-
locity (DRF))
SD 41110: JOG_SET_VELO (JOG velocity for G94)
SD 41130: JOG_ROT_AX_SET_VELO (JOG velocity for rotary axes)
IS “Feedrate override” (DB21–28, DBB4)

32040 JOG_REV_VELO_RAPID
MD number Revolutional feedrate in JOG mode with rapid traverse override
Default setting: 2,5 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit: mm/rev.
Data type: DOUBLE Applies from SW: 1.1
Meaning: The value entered in this MD defines the revolutional feedrate of the axis in JOG mode with
rapid traverse override referred to the revolutions of the master spindle.
This feedrate is active when SD 41100: JOG_REV_IS_ACTIVE = 1.
(revolutional feedrate active in JOG)
MD irrelevant for ... ... SD 41100 JOG_REV_IS_ACTIVE = “0”
Related to .... SD 41100: JOG_REV_IS_ACTIVE (revolutional feedrate for JOG active)
MD 32050: JOG_REV_VELO (revolutional feedrate for JOG mode)

Copyright © Siemens AG, 2005.


2/H1/4-62 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
4.3 Axis/spindle-specific machine data

32050 JOG_REV_VELO
MD number Revolutional feedrate in JOG mode
Default setting: 0,5 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit: mm/rev.
Data type: DOUBLE Applies from SW: 1.1
Meaning: The value entered in this MD defines the revolutional feedrate of the axis in JOG mode
referred to the revolutions of the master spindle.
This feedrate value is active if the revolutional feedrate setting data for JOG is active, SD
41100: JOG_REV_IS_ACTIVE = 1.
MD irrelevant for ... ... Linear feedrate; i.e. SD 41100: JOG_REV_IS_ACTIVE = 0
Related to .... SD 41100: JOG_REV_IS_ACTIVE (revolutional feedrate for JOG active)
MD 32040: JOG_REV_VELO_RAPID (JOG revolutional feedrate with
rapid traverse)

32080 HANDWH_MAX_INCR_SIZE
MD number Limitation of selected increment
Default setting: 0 Minimum input limit: 0 Maximum input limit: –
Changes effective after Reset Protection level: 2/7 Unit:
Data type: DOUBLE Applies from SW: 3.2
Meaning: >0: Limitation of the size of the selected increment
MD 11330: JOG_INCR_SIZEƪ<Increment/VDI signal>ƫ or
SD 41010: JOG_VAR_INCR_SIZE for the associated machine axis
0: No limitation

32082 HANDWH_MAX_INCR_VELO_SIZE
MD number Limitation of selected increment for velocity override
Default setting: 500 Minimum input limit: 0 Maximum input limit: plus
Changes effective after Reset Protection level: 2/7 Unit: mm/min
Data type: DOUBLE Applies from SW: 3.2
Meaning: For the velocity override of positioning axes:
>0: Limitation of the size of the selected increment
MD 11330: JOG_INCR_SIZEƪ<Increment/VDI signal>ƫ or
SD 41010: JOG_VAR_INCR_SIZE for the associated machine axis
0: No limitation

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/4-63
Manual and Handwheel Travel (H1) 03.96
12.01
05.97
06.05
4.3 Axis/spindle-specific machine data

32084 HANDWH_STOP_COND
MD number Effect of the VDI signals on the handwheel
Default setting: 0xFF Minimum input limit: 0 Maximum input limit: 0x7FF
Changes effective after RESET Protection level: 2/7 Unit: –
Data type: DWORD Applies from SW: 3.2
Meaning: Definition of the behavior of jogging with handwheel in response to axis-specific VDI inter-
face signals:
Bit==0: Interruption or collection of the distances preset via the handwheel
Bit==1: Abort of the traversing movement or no collection
Bit allocation:
Bit 0: Feedrate override
Bit 1: Spindle speed override
Bit 2: Feedrate stop/spindle stop
Bit 3: Clamping in progress (== 0 no effect)
Bit 4: Servo enable
Bit 5: Pulse enable

For machine axis


Bit 6 == 0 For JOG with handwheel, the maximum possible velocity corresponds to
the feedrate set in MD 32020:JOG_VELO for the appropriate machine
axis.
==1 For JOG with handwheel, the maximum possible velocity corresponds to
the feedrate set in MD 32000:MAX_AX_VELO for the appropriate machine
axis.

Bit 7 == 0 The override is active in JOG mode with handwheel.


== 1 The override is always assumed to be 100% for JOG mode with
handwheel regardless of how the override switch is set;
Exception: The override 0% is always active.
SW 6.3 and higher
Bit 8 == 0 The override is active for JOG mode with DRF offset.
== 1 The override is always assumed to be 100% for JOG mode with
handwheel regardless of how the override switch is set.
Exception: The override 0% is always active.

Bit 9 == 0 For JOG with handwheel, the maximum possible velocity for revolutional
feedrate (G95) corresponds to the feedrate in setting data in
SD 41120: JOG_REV_SET_VELO or the feedrate in machine data
MD 32050: JOG_REV_VELO, or for rapid traverse with
MD 32040: JOG_REV_VELO_RAPID, for the appropriate machine axis,
balanced against the spindle or rotary axis feedrate.
=1 For JOG with handwheel, the maximum possible velocity for revolutional
feedrate corresponds to the feedrate in machine data
MD 32000: MAX_AX_VELO for the appropriate machine axis. (see also
bit 6)
SW 6.4 and higher
Bit 10 == 0 $AA_OVR is not active for overlaid movements.
== 1 The $AA_OVR override, which can be set via synchronized actions,
is active for overlaid movements (DRF offset, $AA_OFF,
zero offset external, online tool offset).
Related to .... MD 20624: HANDWH_CHAN_STOP_COND (definition of the behavior of jogging with
handwheel)

Copyright © Siemens AG, 2005.


2/H1/4-64 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
4.4 General setting data

32090 HANDWH_VELO_OVERLAY_FACTOR
MD number Ratio JOG velocity to handwheel velocity (DRF)
Default setting: 0,5 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 Unit: –
Data type: DOUBLE Applies from SW: 1.1
Meaning: The velocity active with the handwheel in DRF can be reduced in relation to the JOG veloc-
ity with this machine data.
The following applies for the velocity active with DRF:
vDRF = SD:JOG_SET_VELO * MD:HANDWH_VELO_OVERLAY_FACTOR
or when SD:JOG_SET_VELO = 0:
vDRF = MD:JOG_VELO * MD:HANDWH_VELO_OVERLAY_FACTOR
The velocity setting in SD: JOG_ROT_AX_SET_VELO applies for DRF on rotary axes
instead of the value in SD: JOG_ROT_SET_VELO.
MD irrelevant for ... ... JOG handwheel
Related to .... MD: JOG_VELO (JOG axis velocity)
SD: JOG_SET_VELO (JOG velocity for G94)
SD: JOG_AX_SET_VELO (JOG velocity for rotary axes)

4.4 General setting data

41010 JOG_VAR_INCR_SIZE
SD number Size of variable increment for INC/handwheel
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: MMCMD 9220 Unit: mm or degrees
Data type: DOUBLE Applies from SW: 1.1
Meaning: This setting data defines the number of increments when variable increment (INCvar) is
selected. This increment size is traversed by the axis in JOG mode whenever the traverse
key is pressed or the handwheel is turned one detent position and variable increment is
selected (PLC interface signal “Active machine function: INC variable” interface signal for
machine or geometry axes is set to 1).
The defined increment size also applies to DRF.
Note: Please note that the increment size is active for incremental jogging and handwheel
jogging. So if a large increment value is entered and the handwheel is turned the axis might
cover a large distance (depends on setting in MD: JOG_INCR_WEIGHT).
SD irrelevant for ...... JOG continuous
Related to .... IS “Active machine function: INC variable” (DB21–28, DBX41.5 ff)
or IS “Active machine function; INC variable” (DB31–48, DBX 69.5)
MD: JOG_INCR_WEIGHT (weighting of an increment for INC/handwheel)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/4-65
Manual and Handwheel Travel (H1) 06.05
4.4 General setting data

41050 JOG_CONT_MODE_LEVELTRIGGRD
SD number Continuous JOG in jog mode
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective immediately Protection level: MMCMD 9220 Unit: –
Data type: BOOLEAN Applies from SW: 1.1
Meaning: 1: Jog mode for JOG continuous
In jog mode (initial setting) the axis traverses for as long as the traverse key is held
down and an axis limitation has not been reached. When the traverse key is
released the axis is decelerated to zero speed and the movement comes to an end.
0: Continuous mode for JOG continuous
In continuous mode the traverse movement is started with the first rising
edge of the traverse key and continues to move when the key is released. The
axis can be stopped again by pressing the traverse key again (second rising edge).

The differences in axis traversing characteristics between the jog and continuous modes in
JOG are described in detail in Section 2.1.
SD irrelevant for ...... Incremental jogging (JOG INC)
Reference point approach (JOG REF)

41100 JOG_REV_IS_ACTIVE
SD number Revolutional feedrate for JOG active
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective immediately Protection level: MMCMD 9220 Unit: –
Data type: BOOLEAN Applies from SW: 1.1
Meaning: 1: The axis (machine or geometry axis) is traversed in JOG mode at revolutional
feedrate (G95) referred to the revolutions of the main spindle.
The revolutional feedrate can be set as follows:
– With global SD: JOG_REV_SET_VELO (only active when SD is not equal to 0)
– With axial MD: JOG_REV_VELO
– With rapid traverse override with axial MD: JOG_REV_VELO_RAPID
0: The axis is traversed in JOG mode at linear feedrate (G94).
The linear feedrate value can be set as follows:
– With global SD: JOG_SET_VELO (only active when SD is not equal to 0)
– With axial MD: JOG_VELO
– With rapid traverse override with axial MD: JOG_VELO_RAPID
SD irrelevant for ...... Operating modes AUTOMATIC and MDA
Related to .... SD: JOG_REV_SET_VELO (JOG velocity for G95)
MD: JOG_REV_VELO (revolutional feedrate for JOG mode)
MD: JOG_REV_VELO_RAPID (JOG revolutional feedrate with rapid traverse)
SD: JOG_SET_VELO (JOG velocity for G94)
MD: JOG_VELO (JOG axis velocity)
MD: JOG_VELO_RAPID (JOG rapid traverse)

Copyright © Siemens AG, 2005.


2/H1/4-66 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
4.4 General setting data

41110 JOG_SET_VELO
SD number JOG velocity for linear axes (for G94)
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective immediately Protection level: MMCMD 9220 Unit: mm/min or
rpm
Data type: DOUBLE Applies from SW: 1.1
Meaning: Value not equal to zero:
The velocity value entered applies to linear axes traversed in JOG mode if
linear feedrate (G94) is active for the relevant axis (MD: JOG_REV_IS_ACTIVE = 0).
The axis velocity is active for:
– Continuous jogging
– Incremental jogging (INC1, ... INCvar)
– Handwheel jogging
The value entered is valid for all linear axes and must not exceed the maximum
permissible axis velocity (MD: MAX_AX_VELO).
With DRF: If DRF is active, the velocity set in SD:JOG_SET_VELO must be reduced
with MD: HANDWH_VELO_OVERLAY_FACTOR.
Value = 0:
If 0 has been entered in the setting data, the active linear feedrate in JOG mode is
MD: JOG_VELO “JOG axis velocity”. Each axis can be given its own JOG velocity
with this MD (axial MD).
SD irrelevant for ...... – For linear axes if SD: JOG_REV_IS_ACTIVE = 1
– For rotary axes (SD: JOG_ROT_AX_SET_VELO) applies
Application example(s) The operator can define a JOG velocity for a particular application.
Related to .... SD: JOG_REV_IS_ACTIVE (revolutional feedrate for JOG active)
Axial MD: JOG_VELO (JOG axis velocity)
Axial MD: MAX_AX_VELO (maximum axis velocity)
Axial MD: HANDWH_VELO_OVERLAY_FACTOR (ratio JOG velocity to handwheel
velocity (DRF))
SD: JOG_ROT_AX_SET_VELO (JOG velocity for rotary axes)

41120 JOG_REV_SET_VELO
SD number JOG velocity (for G95)
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective immediately Protection level: MMCMD 9220 Unit: mm/rev.
Data type: DOUBLE Applies from SW: 1.1
Meaning: Value not equal to zero:
The velocity value entered applies to axes traversed in JOG mode if revolutional
feedrate (G95) is active for the relevant axis (MD: JOG_REV_IS_ACTIVE = 1).
The axis velocity is active for:
– Continuous jogging
– Incremental jogging (INC1, ... INCvar)
– handwheel jogging
The value entered is valid for all axes and must not exceed the maximum permissible
axis velocity (MD: MAX_AX_VELO).
Value = 0:
If 0 has been entered in the setting data, the active revolutional feedrate in JOG mode
is MD: JOG_REV_VELO “revolutional feedrate with JOG”.
Each axis can be given its own revolutional feedrate with this MD (axial MD).
SD irrelevant for ...... – For axes if SD: JOG_REV_IS_ACTIVE = 0
Application example(s) The operator can define a JOG velocity for a particular application.
Related to .... Axial SD: JOG_REV_IS_ACTIVE (revolutional feedrate for JOG active)
Axial MD: JOG_REV_VELO (revolutional feedrate for JOG mode)
Axial MD: MAX_AX_VELO (maximum axis velocity)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/4-67
Manual and Handwheel Travel (H1) 06.05
4.4 General setting data

41130 JOG_ROT_AX_SET_VELO
SD number JOG velocity for rotary axes
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective immediately Protection level: MMCMD 9220 Unit: rpm
Data type: DOUBLE Applies from SW: 2.1
Meaning: Value not equal to zero:
The velocity entered applies to rotary axes in JOG mode (incontinuous mode,
in incremental mode, in jogging with handwheel).
The value entered is common to all rotary axes and must not exceed the
maximum permissible axis velocity (MD: MAX_AX_VELO).

With DRF, the velocity set with SD: JOG_ROT_AX_SET_VELO must be


reduced with the MD: HANDWH_VELO_OVERLAY_FACTOR.

Value = 0:
If a value of 0 is entered in the setting data, then the velocity in JOG mode for rotary
axes is the setting in axial MD: JOG_VELO (JOG axis velocity). In this way, it is
possible to define a separate JOG velocity for every axis.
Application example(s) The operator can define a JOG velocity for a particular application.
Related to .... MD: JOG_VELO (JOG axis velocity)
MD: MAX_AX_VELO (maximum axis velocity)
MD: HANDWH_VELO_OVERLAY_FACTOR (ratio JOG velocity to handwheel velocity
(DRF))

41200 JOG_SPIND_SET_VELO
SD number JOG velocity for spindles
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective immediately Protection level: MMCMD 9220 Unit: rpm
Data type: DOUBLE Applies from SW: 1.1
Meaning: Value not equal to zero:
The velocity entered applies to spindles in JOG mode if they are traversed manually
using the “traversing keys plus and minus”.
The velocity setting is active in:
– Continuous jogging
– Incremental jogging (INC1, ... INCvar)
– handwheel jogging
The value entered is valid for all spindles and must not exceed the maximum
permissible velocity (MD: MAX_AX_VELO).
Value = 0:
If 0 has been entered in the setting data, the active JOG velocity is
MD: JOG_VELO (JOG axis velocity). Each axis can be given its own JOG velocity
with this MD (axial MD).
When the spindle is traversed in JOG mode, the maximum velocity of the active gear stage
(MD: GEAR_STEP_VELO_LIMIT) is taken into account.
SD irrelevant for ...... Axes
Application example(s) The operator can define a JOG velocity for the spindles for a particular application.
Related to .... Axial MD: JOG_VELO (JOG axis velocity)
MD: GEAR_STEP_MAX_VELO_LIMIT (maximum velocity of gear stages)
References /FB/, S1, “Spindles”

Copyright © Siemens AG, 2005.


2/H1/4-68 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
4.5 Channel-specific setting data

4.5 Channel-specific setting data

42650 CART_JOG_MODE
MD number Coordinate system for cart. manual travel
Default setting: 0x0 Minimum input limit: 0 Maximum input limit: 0x0404
Changes effective IMMEDIATELY Protection level: 7 / 7 Unit: –
Data type: DWORD Applies from SW: 6.3
Meaning: This allows the reference coordinate system to be set for Cartesian manual travel.
Bits 0 to 7 are provided for selecting the coordinate system for the translation, Bits 8 to 15
for selecting the reference system for the orientation.
If no bit is set, or only one bit either for the translation or for the orientation, the Cartesian
manual travel is not active.
This means that one bit must always be set for the translation and one bit set for the
orientation. If more than one bit is set for the translation or for the orientation, the Cartesian
manual travel is not active either.

The meaning of the individual bits is defined as follows:


Bit 0: Translation in the Basic Coordinate System
Bit 1: Translation in the Workpiece Coordinate System
Bit 2: Translation in the Tool Coordinate System
Bit 3: Reserved
Bit 4: Reserved
Bit 5: Reserved
Bit 6: Reserved
Bit 7: Reserved
Bit 8: Orientation in the Basic Coordinate System
Bit 9: Orientation in the Workpiece Coordinate System
Bit 10: Orientation in the Tool Coordinate System
Bit 11: Reserved
Bit 12: Reserved
Bit 13: Reserved
Bit 14: Reserved
Bit 15: Reserved
MD irrelevant for ... ...
Figure ????.???
Application example(s)
Special cases, errors, ...
...
Related to ....
References

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/4-69
Manual and Handwheel Travel (H1) 06.05
4.5 Channel-specific setting data

Notes

Copyright © Siemens AG, 2005.


2/H1/4-70 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.1 General signals

Signal Descriptions 5
5.1 General signals

5.1.1 Signals from NC

DB10 Channel number of geometry axis for


DBB97, 98, 99 Handwheel 1, 2, 3
Data Block Signal(s) from NC (MMC –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Significance of signal The operator can assign an axis to the handwheel (1, 2, 3) directly on the operator panel
front. If this axis is a geometry axis (IS “Machine axis” = 0), the assigned channel number
for the handwheel in question is transferred to the PLC.
In this way, the IS “Activate handwheel” is set for the selected geometry axis in accordance
with the state set by the operator (IS “Handwheel selected”).
The following codes apply to the channel number:

Bit 7 6 5 4 3 2 1 Bit 0 Channel number

0 0 0 0 0 0 0 0 –
0 0 0 0 0 0 0 1 1
0 0 0 0 0 0 1 0 2
With machine axes (IS “Machine axis” = 1), the IS “Channel number geometry axis for
handwheel 1, 2, 3” has no meaning.
For further information, see IS “Axis number for handwheel 1, 2, 3”.
Related to .... IS “Axis number of handwheel 1, 2, 3” (DB10, DBB100 ff)
IS “Handwheel selected” (DB10, DBX100.6 ff)
IS “Machine axis” (DB10, DBX100.7 ff)
IS “Activate handwheel” (DB21, ... DBX12.0 – 12.2 ff)
Application example(s) If DB10, DBB97 = 2, then handwheel 1 is assigned to channel 2.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-71
Manual and Handwheel Travel (H1) 06.05
5.1 General signals

DB10
DBB100, 101, 102, Axis number for handwheel 1, 2 or 3
Bits 0 – 4
Data Block Signal(s) from NC (MMC –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Significance of signal The operator can assign an axis to every handwheel directly via the operator panel front. To
do so, he defines the required axis (e.g. X).
The basic PLC program provides the number of the axis plus the information ’machine axis
or geometry axis’ (IS “machine axis”) as MMC interface signals.
The basic PLC program sets the interface signal “Activate handwheel” for the defined axis.
Depending on the setting in the MMC interface signal “machine axis”, either the interface for
the geometry axis or for the machine axis is used.
The following must be noted when assigning the axis designation to the axis number:
IS “Machine axis” = 1; i.e. machine axis:
The assignment is made via MD: AXCONF_MACHAX_NAME_TAB[n]
(machine axis name).
IS “Machine axis” = 0; i.e. geometry axis:
The assignment is made via MD: AXCONF_GEOAX_NAME_TAB[n]
(geometry axis name in channel). IS “Channel number geometry axis handwheel n”
defines the channel assigned to the handwheel.
For following codes are used for the axis number:

Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Axis number

0 0 0 0 0 –

0 0 0 0 1 1

0 0 0 1 0 2

0 0 0 1 1 3

0 0 1 0 0 4

0 0 1 0 1 5

0 0 1 1 0 6

0 0 1 1 1 7

0 1 0 0 0 8

Related to .... IS “Channel number geometry axis handwheel n” (DB10, DBX97 ff)
IS “Handwheel selected” (DB10, DBX100.6 ff)
IS “Machine axis” (DB10, DBX100.7 ff)
IS “Activate handwheel” (DB21, ... DBX12.0 to DBX12.2 ff)
IS “Activate handwheel” (DB31, ... DBX4.0 to DBX4.2)
MD: AXCONF_MACHAX_NAME_TAB [n] (machine axis name)
MD: AXCONF_GEOAX_NAME_TAB[n] (name of the geometry axis in the channel)

Copyright © Siemens AG, 2005.


2/H1/5-72 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.1 General signals

DB10
DBX100.6; 101.6; 102.6 Handwheel selected (for handwheel 1, 2 or 3)
Data Block Signal(s) from NC (MMC –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The operator has selected the handwheel for the defined axis via the operator panel front
transition 0 –––> 1 (i.e. activated). This information is made available by the basic PLC program at the MMC
interface.
This means that the interface signal “Activate handwheel” is set to ’1’ for the defined axis by
the basic PLC program.
The associated axis is also displayed on the MMC interface (IS: “Axis number” and IS “Ma-
chine axis”).
As soon as the handwheel is active, the axis can be traversed in JOG mode with the hand-
wheel (IS “Handwheel active”).
Signal state 0 or signal The operator has disabled the handwheel for the defined axis via the operator panel front.
transition 1 –––> 0 This information is made available by the basic PLC program at the MMC interface.
Now the interface signal “Activate handwheel” can be reset for the defined axis by the basic
PLC program.
Related to .... IS “Axis number” (DB10, DBB100 ff)
IS “Machine axis” (DB10, DBX100.7 ff)
IS “Activate handwheel” (DB21, ... DBX12.0 – DBX12.2 ff)
IS “Handwheel active” (DB21, ... DBX40.0 – DBX40.2 ff)
IS “Activate handwheel” (DB31, ... DBX4.0 – DBX4.2)
IS “Channel number geometry axis for handwheel 1, 2 or 3” (DB10, DBB97 ff)

DB10
DBX100.7; 101.7; 102.7 Machine axis (for handwheel 1, 2 or 3)
Data Block Signal(s) from NC (MMC –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The operator has assigned an axis to the handwheel (1, 2, 3) directly on the operator panel
transition 0 –––> 1 front. This axis is a machine axis.
For further information see IS “Axis number”.
Signal state 0 or signal The operator has assigned an axis to the handwheel (1, 2, 3) directly on the operator panel
transition 1 –––> 0 front. This axis is a geometry axis.
For further information see IS “Axis number”.
Related to .... IS “Axis number” (DB10, DBB100 ff)
IS “Handwheel selected” (DB10, DBX100.6 ff)
IS “Channel number geometry axis for handwheel 1, 2 or 3” (DB10, DBB97 ff)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-73
Manual and Handwheel Travel (H1) 06.05
5.2 Channel-specific signals

5.2 Channel-specific signals

5.2.1 Overview of signals to channel (to NCK)

DB
Signals to channel
21, ...
DBB Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Activate Activate Activate Activate Execution
Activate Activate
0 dry run single traverse traverse from exter-
M01 DRF
feed block forwards backwards nal source
Geometry axis 1
Traversing keys Rapid tra- Traversing Activate handwheel
12 verse Feed stop
+ – key lock 3 2 1
override
Geometry axis 1
Machine function
13
Continu- Variable 10000 1000 100 10 1
ous INC INC INC INC INC INC
Geometry axis 2
Traversing keys Rapid tra- Traversing Activate handwheel
16 verse Feed stop
+ – key lock 3 2 1
override
Geometry axis 2
Machine function
17
Continu- Variable 10000 1000 100 10 1
ous INC INC INC INC INC INC
Geometry axis 3
Traversing keys Rapid tra- Traversing Activate handwheel
20 verse Feed stop
+ – key lock 3 2 1
override
Geometry axis 3
Machine function
21
Continu- Variable 10000 1000 100 10 1
ous INC INC INC INC INC INC

Copyright © Siemens AG, 2005.


2/H1/5-74 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.2 Channel-specific signals

5.2.2 Overview of signals to channel (to NCK)

DB21, ...
DBX0.3 Activate DRF
Data Block Signal(s) to channel (PLC –> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The function DRF is selected.
transition 0 –––> 1 The function can either be selected directly from the PLC user program or from the operator
panel front via MMC interface signal “DRF selected”. This MMC interface signal is either
converted by the basic PLC program or the PLC user program to interface signal “Activate
DRF”.
As soon as the function DRF is active, DRF offset can be modified in operating modes
AUTOMATIC or MDA.
Signal state 0 or signal The function is not selected.
transition 1 –––> 0
Signal irrelevant for ... ... JOG mode
Application example(s) The DRF function can be enabled specifically by the PLC user program with IS “Activate
DRF”.
Related to .... IS “DRF selected” (DB21, ... DBX24.3)

DB21, ...
DBB12; 16; 20 Bits 0–2 Activate handwheel (1 to 3) for geometry axis (1,2,3)
Data Block Signal(s) to channel (PLC –> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal These machine data determine whether this geometry axis is assigned to handwheel 1, 2, 3
transition 0 –––> 1 or no handwheel.
Only one handwheel can be assigned to an axis at any one time.
If several “Activate handwheel” interface signals are set, priority
“Handwheel 1” before “Handwheel 2” before “Handwheel 3” applies.

Note: Three geometry axes can be traversed simultaneously with handwheels 1 to 3!


Signal state 0 or signal Neither handwheel 1, 2 nor 3 is assigned to this geometry axis.
transition 1 –––> 0
Application example(s) The PLC user program can use this interface signal to disable the influence of turning the
handwheel on the geometry axis.
Related to .... IS “Handwheel active” for geometry axis (DB21, ... DBX40.7 or DBX40.6 ff)

DB21, ...
DBX12.4; 16.4; 20.4 Traverse key disable for geometry axis (1,2,3)
Data Block Signal(s) to channel (PLC –> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The traverse keys plus and minus have no effect on the geometry axes in question. It is
transition 0 –––> 1 thus not possible to traverse the geometry axis in JOG with the traverse keys on the ma-
chine control panel.
If the traverse key disable is activated during a traverse movement, the geometry axis is
stopped.
Signal state 0 Traverse keys plus and minus are enabled.
Application example(s) It is thus possible, depending on the operating mode, to disable manual traverse of the
geometry axis in JOG mode with the traverse keys from the PLC user program.
Related to .... IS “Traverse key plus” and “Traverse key minus” for geometry axis (DB21, ... DBX12.7 or
DBX12.6 ff)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-75
Manual and Handwheel Travel (H1) 06.05
5.2 Channel-specific signals

DB21, ...
DBX12.5; 16.5; 20.5 Rapid traverse override for geometry axis (1,2,3)
Data Block Signal(s) to channel (PLC –> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal If interface signal “Rapid traverse override” is set together with “Traverse key plus” and
transition 0 –––> 1 “Traverse key plus”, the geometry key in question traverses at rapid traverse.
The rapid traverse feedrate is defined in machine data JOG_VELO_RAPID.
Rapid traverse override is active in the following JOG modes:
– Continuous jogging
– Incremental jogging
If rapid traverse override is active, the velocity can be modified with the rapid traverse over-
ride switch.
Signal state 0 or signal The geometry axis traverses at the defined JOG velocity (SD: JOG_SET_VELO or MD:
transition 1 –––> 0 JOG_VELO).
Signal irrelevant for ... ... – Operating modes AUTOMATIC and MDA
– Reference point approach (JOG mode)
Related to .... IS “Traverse key plus” and “Traverse key minus” for geometry axis (DB21, ... DBX12.7 or
DBX12.6 ff)
References /FB/, V1, “Feeds”

Copyright © Siemens AG, 2005.


2/H1/5-76 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.2 Channel-specific signals

DB21, ...
DBX12, 16, 20 Plus and minus traverse keys for geometry axis (1,2,3)
Bits 7, 6
Data Block Signal(s) to channel (PLC –> NCK)
Edge evaluation: yes Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The selected geometry axis can be traversed in both directions in JOG mode with the tra-
transition 0 –––> 1 verse keys plus and minus.
Depending on the active machine function and the setting “Jog or continuous mode” (SD:
JOG_CONT_MODE_LEVELTRIGGRD for JOG continuous and MD:
JOG_INC_MODE_LEVELTRIGGRD for JOG INC), the signal transition will cause different
reactions.
Case 1: Continuous jogging with jog mode
The geometry axis traverses in the direction concerned as long as the
interface signal is set to 1 (and as long as the axis position has not
reached an activated limitation).
Case 2: Continuous jogging with continuous mode
On the first signal edge change from 0  1 the geometry axis starts
to traverse in the relevant direction. This traversing movement
still continues when the edge changes from 1  0. A new
signal edge change from 0  1 (same traversing direction!)
stops the traversing movement.
Case 3: Incremental jogging with jog mode
With signal 1 the geometry axis starts to traverse at the set increment.
If the signal changes to the 0 state before the increment is traversed,
the traversing movement is interrupted. When
the signal state changes to 1 again the movement is continued.
The geometry axis can be stopped and started
several times as described above until the increment has been completely
traversed.
Case 4: Incremental jogging with continuous mode
On the first signal edge change from 0 1 the geometry axis starts to
traverse at the set increment. If the same traversing signal is applied and
the edge changes from 0  again before the geometry axis has traversed
the increment, the traverse movement is aborted.
The increment is not traversed to the end.
If both traverse signals (plus and minus) are set at the same time, no movement occurs, or
any current movement is aborted!
The effect of the traverse keys can be disabled for every geometry axis individually with the
PLC interface signal “Traverse key disable”.
Notice! In contrast to machine axes, only one axis can be traversed at a time with
the traverse keys in the case of geometry axes.
Alarm 20062 is triggered if an attempt is made to
traverse more than one axis with the traverse keys.
Signal state 0 or signal See cases 1 to 4 above
transition 1 –––> 0
Signal irrelevant for ... ... Operating modes AUTOMATIC and MDA
Special cases, errors, ... The geometry axis cannot be traversed in JOG mode:
... – If it is already being traversed via the axial PLC interface (as a machine axis).
– If another geometry axis is already being traversed with the traverse keys.
Alarm 20062 “Axis already active” is output.
Related to .... IS “Traverse keys plus and minus” for machine axes (DB31, ... DBX8.7 or DBX8.6)
IS “Traverse key disable for geometry axes” (DB21, ... DBX12.4 ff)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-77
Manual and Handwheel Travel (H1) 06.05
5.2 Channel-specific signals

DB21, ... Machine function for geometry axis (1,2,3)


DBX13, 17, 21 INC1, INC10, INC100, INC1000, INC10000, INCvar
Bits 0–5
Data Block Signal(s) to channel (PLC –> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal This interface signal defines how many increments the geometry axis traverses when the
transition 0 –––> 1 traverse key is pressed or the handwheel is turned one detent position. JOG mode must be
active for this (exception: with DRF).
The increment size is assigned to the interface signals as follows:
– for INC1 up to INC10000: with general machine data
JOG_INCR_SIZE_TAB.
– for INCvar: with general setting data JOG_VAR_INCR_SIZE
As soon as the selected machine function becomes active, this is signaled to the PLC inter-
face (interface signal “Active machine function INC1; ...” ).
If several machine function signals (INC1, INC... or “Continuous jogging”) are selected at
the interface simultaneously, no machine function is activated by the control.
Signal state 0 or signal The machine function in question is not selected.
transition 1 –––> 0 If an axis is currently traversing an increment, this movement is also aborted if this machine
function is deselected or switched over.
Related to .... IS “Active machine function INC1,...” for geometry axes (DB21, ... DBB41 ff)
IS “Machine function continuous” for geometry axes (DB21, ... DBX13.6 ff)

DB21, ... Machine function continuous for geometry axis


DBX13.6; 17.6; 21.6 (1,2,3)
Data Block Signal(s) to channel (PLC –> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The machine function “Continuous jogging” is selected. The associated geometry axis can
transition 0 –––> 1 be traversed with the traverse keys plus and minus in JOG mode.
Signal state 0 or signal Machine function “Continuous jogging” is not selected.
transition 1 –––> 0
Related to .... IS “Active machine function INC 1,..., continuous” (DB21, ... DBB41 ff)
IS “Machine function INC1,...,INC10000” (DB21, ... DBB13 ff)

Copyright © Siemens AG, 2005.


2/H1/5-78 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.2 Channel-specific signals

5.2.3 Overview of signals from channel to PLC

DB
Signals from channel
21–28
DBB Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

24 Dry run Single


M01 se- DRF se-
feedrate block se-
(MMC –> PLC) lected lected
selected lected

33 Handwheel
override
(MMC –> PLC) active

Stop at the Contour handwheel active


Read–in CLC CLC CLC
end of
enable is stopped stopped active
37 block with
ignored upper limit lower limit /TE1/
SBL sup- Handwheel Handwheel Handwheel
/TE1/ /TE1/
pressed 1 2 3

Geometry axis 1
Motion command Traversing request Handwheel active
40
plus minus plus minus 3 2 1
Geometry axis 1
Active machine function
41
Continu- Variable 10000 1000 100 10 1
ous INC INC INC INC INC INC

Geometry axis 2
Motion command Traversing request Handwheel active
46
plus minus plus minus 3 2 1
Geometry axis 2
Active machine function
47
Continu- Variable 10000 1000 100 10 1
ous INC INC INC INC INC INC

Geometry axis 3
Motion command Traversing request Handwheel active
52
plus minus plus minus 3 2 1
Geometry axis 3
Active machine function
53
Continu- Variable 10000 1000 100 10 1
ous INC INC INC INC INC INC

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-79
Manual and Handwheel Travel (H1) 06.05
5.2 Channel-specific signals

5.2.4 Description of signals from channel to PLC

DB21, ...
DBX24.3 DRF selected
Data Block Signal(s) from channel (MMC –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The operator has selected DRF on the operator panel front. The PLC program (basic PLC
transition 0 –––> 1 program or user program) transfers this MMC interface signal as IS “Activate DRF” after
logical combination.
As soon as DRF is active, the DRF offset can be changed in AUTOMATIC or MDA mode
using the handwheel assigned to the axis.
Signal state 0 or signal The operator has not selected DRF on the operator panel front.
transition 1 –––> 0
Signal irrelevant for ... ... JOG mode
Related to .... IS: “Activate DRF” (DB21, ... DBX0.3)

DB21, ... Handwheel override active


DBX33.3
Data Block Signal(s) from channel (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The function “Handwheel override in AUTOMATIC mode” is active for the programmed
transition 0 –––> 1 path axes.
Handwheel pulses of the 1st geometry axis function as a velocity override over the
programmed path feedrate.
Signal state 0 or signal The function “Handwheel override in AUTOMATIC mode” is not active for the programmed
transition 1 –––> 0 path axes.
An active handwheel override is deactivated again if
the path axes have reached the target position
the distance-to-go is deleted by the channel-specific IS “Delete distance-to-go” (DB21,
... DBX6.2).
a RESET is performed

DB21, ...
DBX37 Contour handwheel active (1 to 3)
Bits 0–2
Data Block Signal(s) from channel (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 4.3
Signal state 1 or signal These PLC interface signals report whether this geometry axis is assigned to contour hand-
transition 0 –––> 1 wheel 1, 2 or 3 or to no contour handwheel.
Only one contour handwheel can be assigned to an axis at any one time.
If several interface signals “Contour handwheel active” are set, priority
’Contour handwheel 1’ before ’Contour handwheel 2’ before ’Contour handwheel 3’
applies.
If the assignment is active, the geometry axis can be traversed in JOG mode with the con-
tour handwheel or a DRF offset can be generated in AUTOMATIC or MDA modes.
Signal state 0 or signal Neither contour handwheel 1, 2 nor 3 is assigned to this geometry axis.
transition 1 –––> 0
Related to ....

Copyright © Siemens AG, 2005.


2/H1/5-80 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.2 Channel-specific signals

DB21, ...
DBX40, 46, 52 Handwheel active (1 to 3) for geometry axis
Bits 0–2
Data Block Signal(s) from channel (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal These PLC interface signals report whether this geometry axis is assigned to handwheel 1,
transition 0 –––> 1 2 or 3 or to no handwheel.
Only one handwheel can be assigned to an axis at any one time.
If several “Activate handwheel” interface signals are set, priority
“Handwheel 1” before “Handwheel 2” before “Handwheel 3” applies.
If the assignment is active, the geometry axis can be traversed in JOG mode with the hand-
wheel or a DRF offset can be generated in AUTOMATIC or MDA modes.
Signal state 0 or signal Neither handwheel 1, 2 nor 3 is assigned to this geometry axis.
transition 1 –––> 0
Related to .... IS “Activate handwheel” (DB21, ... DBX12.0 to DBX12.2 ff)

DB21, ...
DBX40, 46, 52 Plus and minus traversing request (for geometry axis)
Bit 5, Bit 4
Data Block Signal(s) from axis/spindle (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 7.2
The signal is the same as the travel command signal in the earlier version.
Signal state 1 or signal A traverse movement of the axis is to be executed in one or the other direction.
transition 0 –––> 1 Depending on the mode selected, the command is triggered in different ways:
– JOG mode: with the plus or minus traverse key
– REF mode: with the traverse key that takes the axis to the reference
point
– AUTO/MDA mode: a program block containing a coordinate value for the
axis in question is executed.

Signal state 0 or signal A travel command in the relevant axis direction has not been given or a traverse movement
transition 1 –––> 0 has been completed.
JOG mode:
– The travel command is reset depending on the current setting “jog or
continuous mode” (see interface signal “Traverse keys plus and minus”).
For JOG with handwheel.
REF mode:
– When the reference point is reached
AUTO/MDA mode:
– The program block has been executed (and the next block does not
contain any coordinate values for the axis in question)
– Abort with “RESET”, etc.
– IS “Axis disable” is active

Related to .... IS “Travel command plus” and “Travel command minus”


(DB21, ... DBX40.7 or DBX40.6)
(DB21, ... DBX46.7 or DBX46.6)
(DB21, ... DBX52.7 or DBX52.6)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-81
Manual and Handwheel Travel (H1) 06.05
5.2 Channel-specific signals

DB21, ...
DBX40, 46, 52 Plus and minus travel commands (for geometry axis)
Bits 7, 6
Data Block Signal(s) from channel (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
The signal operates as described if bit 0 in MD 17900: VDI_FUNCTION_MASK is set to 0. If bit 0 in the MD is set
to 1, then the signal changes to 1 only if the axis is actually moving. The signal traversing request plus/minus
DB21, ... DBX 40, 46, 52 bits 5, 4, which is always output, has the same effect as signal travel command plus/
mins when MD 17900 bit 0 = 0.
Signal state 1 or signal A traverse movement of the axis is to be executed in one or the other direction. Depending
transition 0 –––> 1 on the mode selected, the command is triggered in different ways:
– JOG mode: with the plus or minus traverse key
– REF mode: with the traverse key that takes the axis to the reference point
– AUTO/MDA mode: the program block containing a coordinate value for the axis
in question is executed.
Signal state 0 or signal A travel command in the relevant axis direction has not been given or a traverse movement
transition 1 –––> 0 has been completed.
JOG mode:
– The travel command is reset depending on the current setting “jog or continuous
mode” (see interface signal “Traverse keys plus and minus”).
– While traversing with the handwheel.
REF mode:
When the reference point is reached
AUTO/MDA mode:
– The program block has been executed (and the next block does not contain any
coordinate values for the axis in question)
– Abort with “RESET”, etc.
– IS “Axis disable” is active
Application example(s) To release clamping of axes with clamping (e.g. on a rotary table).
Note: If the clamping is not released until the travel command is given, these
axes cannot be operated under continuous path control!
Related to .... IS “Traverse key plus” and “Traverse key minus” for geometry axis (DB21, ... DBX12.7 or
DBX12.6 ff)
IS “Traversing request plus/minus” (DB21, ... DBX 40, 46, 52 Bit 5, 4)

DB21, ... Active machine function for geometry axis (1, 2, 3)


DBX41, 47, 53 INC1, ..., continuous jogging
Bits 0 – 6
Data Block Signal(s) from channel (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The PLC interface receives a signal stating which JOG mode machine function is active for
transition 0 –––> 1 the geometry axes.
The reaction to actuation of the traverse key or rotation of the handwheel varies depending
on which machine function is active (see Section 2.2 and 2.3).
Signal state 0 or signal The machine function in question is not active.
transition 1 –––> 0
Related to .... IS “Machine function INC1,...,continuous” for geometry axes (DB21, ... DBB13 ff)

Copyright © Siemens AG, 2005.


2/H1/5-82 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.2 Channel-specific signals

DB21, ...
DBX332, 336, 340 Plus and minus traversing request (for orientation axis)
Bit 5, Bit 4

Data Block Signal(s) from axis/spindle (NCK –> PLC)


Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 7.2
The signal is the same as the travel command signal in the earlier version.
Signal state 1 or signal A traverse movement of the axis is to be executed in one or the other direction.
transition 0 –––> 1 Depending on the mode selected, the command is triggered in different ways:
– JOG mode: with the plus or minus traverse key
– REF mode: with the traverse key that takes the axis to the reference
point
– AUTO/MDA mode: a program block containing a coordinate value for the
axis in question is executed.

Signal state 0 or signal A travel command in the relevant axis direction has not been given or a traverse movement
transition 1 –––> 0 has been completed.
JOG mode:
– The travel command is reset depending on the current setting “jog or
continuous mode” (see interface signal “Traverse keys plus and minus”).
For JOG with handwheel.
...REF mode:

– When the reference point is reached


...AUTO/MDA mode:

– The program block has been executed (and the next block does not
contain any coordinate values for the axis in question)
– Abort with “RESET”, etc.
– IS “Axis disable” is active

Related to .... IS “Travel command plus” and “Travel command minus”


(DB31, ... DBX332.7 or DBX332.6)
(DB31, ... DBX336.7 or DBX336.6)
(DB31, ... DBX340.7 or DBX340.6)

DB21, ...
DBX332, 336, 340 Plus and minus travel command (for orientation axis)
Bit 7, Bit 6
Data Block Signal(s) from channel (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
The signal operates as described if bit 0 in MD 17900: VDI_FUNCTION_MASK is set to 0. If bit 0 in the MD is set
to 1, then the signal changes to 1 only if the axis is actually moving. The signal traversing request plus/minus
DB21, ... DBX 332, 336, 340 bits 5, 4, which is always output, has the same effect as signal travel command plus/
mins when MD 17900 bit 0 = 0.
Signal state 1 or signal A traverse movement of the axis is to be executed in one or the other direction. Depending
transition 0 –––> 1 on the mode selected, the command is triggered in different ways:
– JOG mode: with the plus or minus traverse key
– REF mode: with the traverse key that takes the axis to the reference point
– AUTO/MDA mode: the program block containing a coordinate value for the axis
in question is executed.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-83
Manual and Handwheel Travel (H1) 06.05
5.2 Channel-specific signals

DB21, ...
DBX332, 336, 340 Plus and minus travel command (for orientation axis)
Bit 7, Bit 6
Data Block Signal(s) from channel (NCK –> PLC)
Signal state 0 or signal A travel command in the relevant axis direction has not been given or a traverse movement
transition 1 –––> 0 has been completed.
JOG mode:
– The travel command is reset depending on the current setting “jog or continuous
mode” (see interface signal “Traverse keys plus and minus”).
– While traversing with the handwheel.
REF mode:
When the reference point is reached
AUTO/MDA mode:
– The program block has been executed (and the next block does not contain any
coordinate values for the axis in question)
– Abort with “RESET”, etc.
– IS “Axis disable” is active
Application example(s) To release clamping of axes with clamping (e.g. on a rotary table).
Note: If the clamping is not released until the travel command is given, these
axes cannot be operated under continuous path control!
Related to .... IS “Traverse key plus” and “Traverse key minus” for geometry axis (DB21, ... DBX12.7 or
DBX12.6 ff)
IS “Traversing request plus/minus” (DB21, ... DBX 332, 336, 340 Bit 5, 4)

DB21, ... Active machine function for geometry axis (1, 2, 3)


DBX41, 47, 53 INC1, ..., continuous jogging
Bits 0 – 6
Data Block Signal(s) from channel (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The PLC interface receives a signal stating which JOG mode machine function is active for
transition 0 –––> 1 the geometry axes.
The reaction to actuation of the traverse key or rotation of the handwheel varies depending
on which machine function is active (see Section 2.2 and 2.3).
Signal state 0 or signal The machine function in question is not active.
transition 1 –––> 0
Related to .... IS “Machine function INC1,...,continuous” for geometry axes (DB21, ... DBB13 ff)

Copyright © Siemens AG, 2005.


2/H1/5-84 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.2 Channel-specific signals

5.2.5 Description of signals for contour handwheel

Overview of interface signals for contour handwheel

Signals to channel (DB21, ... ) Channel 2 Signals from channel (DB21, ... )
Channel 1
Activate handwheel x as contour
handwheel (DBX30.0, 30.1, 30.2) Handwheel x active as contour
Contour handwheel (DBX37.0, 37.1, 37.2)
handwheel
Simulation contour handwheel ON
(DBX30.3, 30.4)

MMC Signals from MMC (DB10)


Contour Define handwheel x as contour
handwheel handwheel (DBX100.5, 101.5, 102.5)

Fig. 5-1 Overview of interface signals for contour handwheel

DB 21, 22, ...


DBX30.0 Activate handwheel 1 as contour handwheel
DBX30.1 Activate handwheel 2 as contour handwheel
DBX30.2 Activate handwheel 3 as contour handwheel
Data Block Signal(s) to channel (PLC ––> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW:
840D SW4.1, 810D SW2.1
Description These signals allow one of the three handwheels to be selected/deselected as the contour
handwheel.

Signal = 1 Handwheel x is selected as the contour handwheel


Signal = 0 Handwheel x is deselected as the contour handwheel

The contour handwheel can be selected/deselected in the middle of a block.


When the handwheel is activated, the axis movement is first decelerated and then tra-
versed as determined by the handwheel.
When the handwheel is deactivated, the movement is first decelerated before execution of
the NC program continues. If the NC program is to be continued only after a new NC
START, then deactivation of the contour handwheel in the PLC user program must be com-
bined with an NC STOP.
Special cases, errors, ... The signal is maintained after NC RESET.
Related to .... IS “Handwheel x active as contour handwheel” (DB21, 22, ... , DBX37.0, 37.1, 37.2)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-85
Manual and Handwheel Travel (H1) 06.05
5.2 Channel-specific signals

DB 21, 22, ...


DBX30.3 Simulation contour handwheel on
DBX30.4 Negative direction simulation contour handwheel
Data Block Signal(s) to channel (PLC ––> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW:
840D SW4.1, 810D SW2.1
Description To activate/deactivate simulation of the contour handwheel and to set the traversing direc-
tion, these signals must be set as follows:

Bit 3 Bit 4 Meaning


0 0 Simulation OFF
0 1 Simulation OFF
1 0 Simulation ON, direction as programmed
1 1 Simulation ON, opposite direction to programmed direction

During simulation, the feedrate is not determined by the contour handwheel, but the axis is
traversed along the contour at the programmed feedrate.
If the function is deselected, the current axis movement is decelerated along a braking
ramp.
When the traversing direction is reversed, the current axis movement is decelerated along
a braking ramp and the axis then traversed in the opposite direction.
Special cases, errors, ... Simulation is only effective in AUTOMATIC mode and can only be activated when the con-
... tour handwheel is activated.

DB 21, 22, ...


DBX37.0 Handwheel 1 active as contour handwheel
DBX37.1 Handwheel 2 active as contour handwheel
DBX37.2 Handwheel 3 active as contour handwheel
Data Block Signal(s) from channel (NCK ––> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW:
840D SW4.1, 810D SW2.1
Description These signals indicate which handwheel is selected as the contour handwheel.

Signal = 1 Handwheel x is selected as the contour handwheel


Signal = 0 Handwheel x is deselected as the contour handwheel
Special cases, errors, .... The signal is maintained after NC RESET.
Related to .... IS “Activate handwheel x as contour handwheel” (DB21, 22, ... DBX30.0, 30.1, 30.2)

DB 10
DBX100.5 Define handwheel 1 as contour handwheel
DBX101.5 Define handwheel 2 as contour handwheel
DBX102.5 Define handwheel 3 as contour handwheel
Data Block Signal(s) from MMC (MMC –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW:
840D SW4.1, 810D SW2.1
Description These signals indicate which handwheel is defined as the contour handwheel via the MMC.

Signal = 1 Handwheel x is defined as the contour handwheel via the MMC


Signal = 0 Handwheel x is not defined as the contour handwheel

To ensure that the handwheel defined via the MMC can operate as the contour handwheel,
the appropriate signal must be gated with IS “Activate handwheel x as contour handwheel”
(DB21, 22, ... ,DBX30.0, 30.1, 30.2).
Special cases, errors, ... Depending on the settings of parameter HWheelMMC in FB1 of the basic PLC program,
... these signals are either supplied by the basic program or must be supplied by the PLC user
program.
Related to .... IS “Activate handwheel x as contour handwheel” (DB21, 22, ..., DBX30.0, 30.1, 30.2)
FB1 parameter HWheelMMC

Copyright © Siemens AG, 2005.


2/H1/5-86 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.3 Axis/spindle-specific signals

5.3 Axis/spindle-specific signals

5.3.1 Overview of signals to axis/spindle

DB
Signals to axis/spindle
31, ...
DBB Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Traversing keys Rapid tra- Traversing Feed hold Activate handwheel
4 verse Spindle
plus minus key lock 3 2 1
override hold
Machine function
5 Continuous Variable 10000 1000 100 10 1
INC INC INC INC INC INC

5.3.2 Description of signals to axis/spindle


DB31, ...
DBX4.0; 4.1; 4.2 Activate handwheel (1 to 3)
Data Block Signal(s) to axis/spindle (PLC –> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal This PLC interface signal defines whether this machine axis is assigned to handwheel 1, 2,
transition 0 –––> 1 3 or no handwheel.
Only one handwheel can be assigned to an axis at any one time.
If several “Activate handwheel” interface signals are set, priority
“Handwheel 1” before “Handwheel 2” before “Handwheel 3” applies.
If the assignment is active, the machine axis can be traversed with the handwheel in JOG
mode or a DRF offset can be generated in AUTOMATIC or MDA mode.
Signal state 0 or signal Neither handwheel 1, 2 nor 3 is assigned to this geometry axis.
transition 1 –––> 0
Application example(s) The PLC user program can use this interface signal to disable the influence of turning the
handwheel on the axis.
Related to .... IS “Handwheel active” (DB31, ... DBX64.0 to DBX64.2)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-87
Manual and Handwheel Travel (H1) 06.05
5.3 Axis/spindle-specific signals

DB31, ...
DBX4.4 Traverse key disable
Data Block Signal(s) to axis/spindle (PLC –> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The traverse keys plus and minus have no effect on the machine axes in question. It is thus
transition 0 –––> 1 not possible to traverse the machine axis in JOG with the traverse keys on the machine
control panel.
If the traverse key disable is activated during a traverse movement, the machine axis is
stopped.
Signal state 0 or signal Traverse keys plus and minus are enabled.
transition 1 –––> 0
Application example(s) It is thus possible, depending on the operating mode, to disable manual traverse of the
machine axis in JOG mode with the traverse keys from the PLC user program.
Related to .... IS “Traverse key plus” and “Traverse key minus” (DB31, ... DBX4.7 or DBX4.6)

DB31, ...
DBX4.5 Rapid traverse override
Data Block Signal(s) to axis/spindle (PLC –> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal If interface signal “Rapid traverse override” is set together with “Traverse key plus” and
transition 0 –––> 1 “Traverse key minus”, the machine axis in question traverses at rapid traverse.
The rapid traverse feedrate is defined in machine data JOG_VELO_RAPID.
Rapid traverse override is active in the following JOG modes:
– Continuous jogging
– Incremental jogging
If rapid traverse override is active, the velocity can be modified with the rapid traverse over-
ride switch.
Signal state 0 or signal The machine axis traverses at the defined JOG velocity (SD: JOG_SET_VELO or MD:
transition 1 –––> 0 JOG_VELO).
Signal irrelevant for ... ... – Operating modes AUTOMATIC and MDA
– Reference point approach (JOG mode)
Related to .... IS “Traverse key plus” and “Traverse key minus” (DB31, ... DBX4.7 or DBX4.6)
IS “Axial feedrate/spindle speed override” (DB31, ... DBB0)

Copyright © Siemens AG, 2005.


2/H1/5-88 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.3 Axis/spindle-specific signals

DB31, ...
DBX4.7, 4.6 Plus and minus traverse keys
Data Block Signal(s) to axis/spindle (PLC –> NCK)
Edge evaluation: yes Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The selected machine axis can be traversed in both directions in JOG mode with the tra-
transition 0 –––> 1 verse keys plus and minus.
Depending on the active machine function and the setting “Jog or continuous mode” (SD:
JOG_CONT_MODE_LEVELTRIGGRD for JOG continuous and MD:
JOG_INC_MODE_LEVELTRIGGRD for JOG INCR), the signal transition will cause differ-
ent reactions.
Case 1: Continuous jogging with jog mode
The machine axis traverses in the direction concerned as long as the
interface signal is set to 1 (and as long as the axis position has not
reached an activated limitation).
Case 2: Continuous jogging with continuous mode
On the first signal edge change from 0 1 the machine axis starts
to traverse in the relevant direction. This traversing movement
still continues when the edge changes from 1  0. A new
signal edge change from 0  1 (same traversing direction!)
stops the traversing movement.
Case 3: Incremental jogging with jog mode
With signal 1 the machine axis starts to traverse at the set increment.
If the signal changes to the 0 state before the increment is traversed,
the traversing movement is interrupted. When the signal state changes to 1
again the movement is continued.
The axis can be stopped and started several times as described above
until it has traversed the complete increment.
Case 4: Incremental jogging with continuous mode
On the first signal edge change from 0 1 the machine axis starts to
traverse the set increment. If the same traversing signal is applied
and the edge changes from 0  1 again before the axis has traversed the
increment, the traverse movement is aborted.
The increment is not traversed to the end.
If both traverse signals (plus and minus) are set at the same time there is no movement or
a current movement is aborted.
The effect of the traverse keys can be disabled for every machine axis individually with the
PLC interface signal “Traverse key disable”.
Signal state 0 or signal See cases 1 to 4 above
transition 1 –––> 0
Signal irrelevant for ... ... Operating modes AUTOMATIC and MDA
Application example(s) The machine axis cannot be traversed in JOG mode if it is already being traversed via the
channel-specific PLC interface (as a geometry axis).
Alarm 20062 is signaled.
Special cases, ...... Indexing axes
Related to .... IS “Traverse keys plus and minus for geometry axes” (DB21, ... DBX12.7 and DBX12.6 ff)
IS “Traverse key disable” (DB31, ... DBX4.4 )

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-89
Manual and Handwheel Travel (H1) 06.05
5.3 Axis/spindle-specific signals

DB31, ... Machine function INC1, INC10, INC100, INC1000,


DBX5 INC10000, INCvar
Bits 0 – 5
Data Block Signal(s) to axis/spindle (PLC –> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal This interface signal defines how many increments the machine axis traverses when the
transition 0 –––> 1 traverse key is pressed or the handwheel is turned one detent position. JOG mode must be
active for this (exception: with DRF).
The increment size is assigned to the interface signals as follows:
– INC1 to INC10000: with general machine data JOG_INCR_SIZE_TAB.
– INCvar: with general setting data JOG_VAR_INCR_SIZE
As soon as the selected machine function becomes active, this is signaled to the PLC inter-
face (interface signal “Active machine function INC1; ...” ).
If several machine function signals (INC1, INC... or “Continuous jogging”) are selected at
the interface simultaneously, no machine function is activated by the control.
Signal state 0 or signal The machine function in question is not selected.
transition 1 –––> 0 If an axis is currently traversing an increment, this movement is also aborted if this machine
function is deselected or switched over.
Related to .... IS “Active machine function INC1,...” (DB31, ... DBB65)
IS “Machine function continuous” (DB31, ... DBX5.6).

DB31, ...
DBX5.6 Continuous machine function
Data Block Signal(s) to axis/spindle (PLC –> NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The machine function “Continuous jogging” is selected. The associated machine axis can
transition 0 –––> 1 be traversed with the traverse keys plus and minus in JOG mode.
Signal state 0 or signal Machine function “Continuous jogging” is not selected.
transition 1 –––> 0
Related to .... IS “Active machine function INC 1,..., continuous” (DB31, ... DBB65)
IS “Machine function INC1,...,INC10000” (DB31, ... DBB5)

Copyright © Siemens AG, 2005.


2/H1/5-90 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.3 Axis/spindle-specific signals

5.3.3 Overview of signals from axis/spindle

DB
Signals from axis/spindle
31, ...
DBB Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Motion command Traversing request Handwheel active
64
plus minus plus minus 3 2 1
Active machine function
65 Continu- Variable 10000 1000 100 10 1
ous INC INC INC INC INC INC

5.3.4 Description of signals from axis/spindle

DB31, ... Handwheel override active


DBX62.1
Data Block Signal(s) from axis/spindle (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The function “Handwheel override in AUTOMATIC mode” is active for the programmed
transition 0 –––> 1 positioning axis (FDA[AXi]). Handwheel pulses for this axis either act as a path setting (if
FDA=0) or as a velocity override (if FDA>0) over the programmed axis feedrate.
The interface signal is also set if “Handwheel override in AUTOMATIC mode” is active for a
concurrent positioning axis (with FC15).
Signal state 0 or signal The function “Handwheel override in AUTOMATIC mode” is not active for the programmed
transition 1 –––> 0 positioning axis (or concurrent positioning axis).
An active handwheel override is not active if
S The positioning axis has reached the target position
S the distance-to-go is deleted by the axial IS “Delete distance-to-go“ (DB31, ... DBX2.2).
S a RESET is performed

DB31, ...
DBX64.0; 64.1; 64.2 Handwheel active (1 to 3)
Data Block Signal(s) from axis/spindle (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal These PLC interface signals provide feedback whether the machine axis is assigned to
transition 0 –––> 1 handwheel 1, 2, 3 or no handwheel.
Only one handwheel can be assigned to an axis at any one time.
If several “Activate handwheel” interface signals are set, priority “Handwheel 1” before
“Handwheel 2” before “Handwheel 3” applies.
If the assignment is active, the machine axis can be traversed with the handwheel in JOG
mode or a DRF offset can be generated in AUTOMATIC or MDA mode.
Signal state 0 or signal Neither handwheel 1, 2 nor 3 is assigned to this geometry axis.
transition 1 –––> 0
Related to .... IS “Activate handwheel” (DB31, ... DBX4.0 to DBX4.2)
IS “Handwheel selected” (DB10, DBB100.6 ff)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-91
Manual and Handwheel Travel (H1) 06.05
5.3 Axis/spindle-specific signals

DB31, ...
DBX64.5, 64.4 Plus and minus traversing request
Data Block Signal(s) from axis/spindle (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 7.2
The signal is the same as the travel command signal in the earlier version.
Signal state 1 or signal A traverse movement of the axis is to be executed in one or the other direction. Depending
transition 0 –––> 1 on the mode selected, the command is triggered in different ways:
– JOG mode: with the plus or minus traverse key
– REF mode: with the traverse key that takes the axis to the reference point
– AUTO/MDA mode: the program block containing a coordinate value for the axis
in question is executed.
Signal state 0 or signal A travel command in the relevant axis direction has not been given or a traverse movement
transition 1 –––> 0 has been completed.
JOG mode:
– The travel command is reset depending on the current setting “jog or continuous
mode” (see interface signal “Traverse keys plus and minus”).
– While traversing with the handwheel.
– REF mode: When the reference point is reached
AUTO/MDA mode:
– The program block has been executed (and the next block does not contain
any coordinate values for the axis in question)
– Abort with “RESET”, etc.
– IS “Axis disable” is active
Application example(s) To release clamping of axes with clamping (e.g. on a rotary table).
Note: If the clamping is not released until the travel command is given, these
axes cannot be operated under continuous path control!
Related to .... IS “Traverse key plus” and “Traverse key minus” (DB31, ... DBX4.7 or DBX4.6)
IS “Travel command plus and minus” DB31, ... DBX64.7 or DBX64.6

DB31, ...
DBX64.7, 64.6 Plus and minus traverse keys
Data Block Signal(s) from axis/spindle (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
The signal operates as described if bit 0 in MD 17900: VDI_FUNCTION_MASK is set to 0. If bit 0 in the MD is set
to 1, then the signal changes to 1 only if the axis is actually moving. The signal traversing request plus/minus
DB31, ... DBX 64, 46, 52 bits 5, 4, which is always output, has the same effect as signal travel command plus/
mins when MD 17900 bit 0 = 0.
Signal state 1 or signal A traverse movement of the axis is to be executed in one or the other direction. Depending
transition 0 –––> 1 on the mode selected, the command is triggered in different ways:
– JOG mode: with the plus or minus traverse key
– REF mode: with the traverse key that takes the axis to the reference point
– AUTO/MDA mode: the program block containing a coordinate value for the axis
in question is executed.
Signal state 0 or signal A travel command in the relevant axis direction has not been given or a traverse movement
transition 1 –––> 0 has been completed.
JOG mode:
– The travel command is reset depending on the current setting “jog or continuous
mode” (see interface signal “Traverse keys plus and minus”).
– While traversing with the handwheel.
– REF mode: When the reference point is reached
AUTO/MDA mode:
– The program block has been executed (and the next block does not contain
any coordinate values for the axis in question)
– Abort with “RESET”, etc.
– IS “Axis disable” is active
Application example(s) To release clamping of axes with clamping (e.g. on a rotary table).
Note: If the clamping is not released until the travel command is given, these
axes cannot be operated under continuous path control!
Related to .... IS “Traverse key plus” and “Traverse key minus” (DB31, ... DBX4.7 or DBX4.6)
IS “Traversing request plus and minus” (DB31, ... DBX64.5 or DBX.4)

Copyright © Siemens AG, 2005.


2/H1/5-92 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
5.3 Axis/spindle-specific signals

DB31, ... Active machine function


DBX65 Bits 0 – 6 INC1, ..., continuous jogging
Data Block Signal(s) from axis/spindle (NCK –> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The PLC interface receives a signal stating which JOG mode machine function is active for
transition 0 –––> 1 the machine axes.
The result when the traverse key is pressed or the handwheel is turned depends on the
active machine function (see Sections 2.2 and 2.3).
Signal state 0 or signal The machine function in question is not active.
transition 1 –––> 0
Related to .... IS “Machine function INC1,...,continuous” (DB31, ... DBB5)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/5-93
Manual and Handwheel Travel (H1) 06.05
5.3 Axis/spindle-specific signals

Notes

Copyright © Siemens AG, 2005.


2/H1/5-94 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
7.1 Interface signals

Example 6
None
J

Data Fields, Lists 7


7.1 Interface signals

DB number Bit, byte Name Refer-


ence
Signals to/from NC
10 97, 98, 99 Channel number for geometry axis handwheel 1, 2, 3
10 100, 101, 102 Axis number for handwheel 1, 2, 3, handwheel selected and machine
axis
Mode groupspecific
11, ... 0.2 JOG mode K1
11, ... 4.2 Active JOG mode K1
Channel-specific
21, ... 0.3 Activate DRF
21, ... 12.2, 12.1, 12.0 Activate handwheel 1, 2, 3
16.2, 16.1, 16.0
20.2, 20.1, 20.0
21, ... 12.4, 16.4, 20.4 Traversing key lock
21, ... 12.5, 16.5, 20.5 Rapid traverse override
21, ... 12.7, 12.6 Traverse keys plus and traverse keys minus
16.7, 16.6
20.7, 20.6
21, ... 13, 17, 21 Geometry axis machine function INC1 ... continuous
21, ... 24.3 DRF selected
21, ... 40.2, 40.1, 40.0 Handwheel active (3, 2, 1)
46.2, 46.1, 46.0
52.2, 52.1, 52.0
21, ... 40.5, 40.4 Geometry axis travel request
46.5, 46.4
52.5, 52.4

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/7-95
Manual and Handwheel Travel (H1) 06.05
7.1 Interface signals

Channel-specific
21, ... 40.7, 40.6 Travel command plus and travel command minus
46.7, 46.6
52.7, 52.6
21, ... 41, 47, 53 Geometry axis active machine function INC1 ... continuous jogging
21, ... 33.3 Handwheel override active for path axes (SW2 and higher)
21, ... 30.0 Activate handwheel 1 as contour handwheel
30.1 Activate handwheel 2 as contour handwheel
30.2 Activate handwheel 3 as contour handwheel
21, ... 30.3 Simulation contour handwheel on
21, ... 30.4 Negative direction simulation contour handwheel
21, ... 37.0 Handwheel 1 active as contour handwheel
37.1 Handwheel 2 active as contour handwheel
37.2 Handwheel 3 active as contour handwheel
21, ... 100.5 Handwheel 1 active as contour handwheel
101.5 Handwheel 2 active as contour handwheel
102.5 Handwheel 3 active as contour handwheel
21, ... 332.5, 332.4 Orientation axis travel request
336.5, 336.4
340.5, 340.4
Axis/spindle-specific
31, ... 0 Feedrate/spindle override V1
31, ... 1.7 Override active V1
31, ... 2.2 Axial delete distance-to-go
31, ... 4.2, 4.1, 4.0 Activate handwheel 1, 2, 3
31, ... 4.4 Traversing key lock
31, ... 4.5 Rapid traverse override
31, ... 4.7, 4.6 Traverse keys plus and traverse keys minus
31, ... 5.6 Continuous machine function
31, ... Continuous machine
5.6, 5.5, 5.4, 5.3, function, Var. INC, 10000 INC,
5.2, 5.1, 5.0 1000 INC, 100 INC, 10 INC, 1 INC
31, ... 60.7, 60.6 Position reached with exact stop coarse/fine B1
31, ... 64.2, 64,1, 64.0 Handwheel active (3, 2, 1)
31, ... 64.5, 64.4 Axis/spindle travel request plus and minus
31, ... 64.7, 64.6 Travel command plus and travel command minus
31, ... 65 Active machine function INC1 ... continuous jogging
31, ... 62.1 Handwheel override active, for positioning axes and concurrent posi-
tioning axes (SW2 and higher)

Copyright © Siemens AG, 2005.


2/H1/7-96 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Manual and Handwheel Travel (H1)
7.2 Machine Data

7.2 Machine Data

Number Identifier Name Refer-


ence
General ($MN_ ... )
10000 AXCONF_MACHAX_NAME_TAB[n] Machine axis name [n = axis number] K2
11300 JOG_INC_MODE_LEVELTRIGGRD INC and REF in jog mode
11310 HANDWH_REVERSE Defines movement in the opposite direction
11320 HANDWH_IMP_PER_LATCH[n] Handwheel pulses per detent position
[n=handwheel number: 0 – 2]
11324 HANDWH_VDI_REPRESENTATION Handwheel number representation in VDI inter-
face
11330 JOG_INCR_SIZE_TAB[n] Increment size INC/handwheel (n = increment
index: 0 – 4)
11340 ENC_HANDWHEEL_SEGMENT_NR Third handwheel: Bus segment FBMA
11342 ENC_HANDWHEEL_MODULE_NR Third handwheel: Drive no./measuring circuit no. FBMA
11344 ENC_HANDWHEEL_INPUT_NR Third handwheel: input on module/measuring
circuit card
11346 HANDWH_TRUE_DISTANCE Handwheel path or velocity values FBMA
11350 HANDWHEEL_SEGMENT[n] Handwheel segment
11351 HANDWHEEL_MODULE[n] Handwheel module
11352 HANDWHEEL_INPUT[n] Handwheel connection
11353 HANDWHEEL_LOGIC_ADDRESS[n] Logical handwheel slot address
17900 VDI_FUNCTION_MASK Function mask for VDI signals
Channel-specific ($MC_ ... )
20060 AXCONF_GEOAX_NAME_TAB[n] Geometry axis in channel [n = geometry axis K2
number]
20100 DIAMETER_AX_DEF Geometry axes with transverse axis (facing P1
axis) functions
20620 HANDWH_GEOAX_MAX_INCR_SIZE Delimitation of the geometry axis
20622 HANDWH_GEOAX_MAX_INCR_VSIZE Path velocity override
20624 HANDWH_CHAN_STOP_COND Response to channel-specific VDI interface sig-
nals bits 0...7
Axis-/channel-specific ($MA_ ... )
30450 IS_CONCURRENT_POS_AX Default setting at reset: Neutral axis or channel P2
axis
31090 JOG_INCR_WEIGHT Evaluation of an increment for INC/handwheel
32000 MAX_AX_VELO Maximum axis velocity G2
32010 JOG_VELO_RAPID Rapid traverse in JOG mode
32020 JOG_VELO JOG axis velocity
32040 JOG_REV_VELO_RAPID Revolutions feedrate in JOG mode with rapid
traverse override
32050 JOG_REV_VELO Revolutional feedrate in JOG mode
32060 POS_AX_VELO Initial setting for positioning axis velocity P2
32080 HANDWH_MAX_INCR_SIZE Limitation of the size of the selected increment
32082 HANDWH_MAX_INCR_VELO_SIZE Limitation of selected increment for velocity
override

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/H1/7-97
Manual and Handwheel Travel (H1) 06.05
7.4 Alarms

Axis-/channel-specific ($MA_ ... )


32084 HANDWH_STOP_COND Effect of axis-specific VDI interface signal bits
0...5 on the handwheel
32090 HANDWH_VELO_OVERLAY_FACTOR Ratio JOG velocity to handwheel velocity (with
DRF)
35130 GEAR_STEP_MAX_VELO_LIMIT[n] Maximum velocity for gear stage S1

7.3 Setting data

Number Identifier Name Refer-


ence
General ($SN_ ...)
41010 JOG_VAR_INCR_SIZE Size of variable increment for INC/handwheel
41050 JOG_CONT_MODE_LEVELTRIGGRD JOG continuous mode
41100 JOG_REV_IS_ACTIVE Revolutional feedrate in JOG mode active
41110 JOG_SET_VELO JOG velocity for linear axes (for G94)
41120 JOG_REV_SET_VELO JOG velocity (for G95)
41130 JOG_ROT_AX_SET_VELO JOG speed for rotary axes
41200 JOG_SPIND_SET_VELO JOG velocity for the spindle

7.4 Alarms
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, “Diagnostics Guide”
or in the Online help.
J

Copyright © Siemens AG, 2005.


2/H1/7-98 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
12.01
06.05

SINUMERIK 840D sl/840D/810D


Description of Functions
Extended Functions (FB2)

Compensations (K3)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-5
2.1 Temperature compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-5
2.1.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-5
2.1.2 Temperature compensation parameters . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-7
2.2 Backlash compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-11
2.3 Interpolatory compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-14
2.3.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-14
2.3.2 Measuring system error compensation (MSEC) . . . . . . . . . . . . . . . . 2/K3/2-17
2.3.3 Sag compensation and angularity error compensation . . . . . . . . . . 2/K3/2-22
2.3.4 Special features of interpolatory compensation . . . . . . . . . . . . . . . . . 2/K3/2-36
2.4 Dynamic feedforward control (following error compensation) . . . . . 2/K3/2-38
2.4.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-38
2.4.2 Speed feedforward control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-40
2.4.3 Torque feedforward control (not 840Di) . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-43
2.5 Friction compensation (quadrant error compensation) . . . . . . . . . . . 2/K3/2-46
2.5.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-46
2.5.2 Conventional friction compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-47
2.5.3 Start-up of conventional friction compensation . . . . . . . . . . . . . . . . . 2/K3/2-48
2.6 Neural quadrant error compensation . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-55
2.6.1 Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-55
2.6.2 Parameterization of neural QEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-57
2.6.3 Learning the neural network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-63
2.6.4 Start-up of neural QEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-67
2.6.5 Further optimization and intervention options . . . . . . . . . . . . . . . . . . 2/K3/2-70
2.6.6 Quick start-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-75
2.7 Circularity test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-78
2.7.1 Neural quadrant error compensation, quick start-up . . . . . . . . . . . . 2/K3/2-82
2.8 Electronic weight compensation (vertical axis) . . . . . . . . . . . . . . . . . 2/K3/2-85
2.8.1 Electronic counterweight function . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/2-86
2.8.2 Effect on electronic counterweight function of rebooting from HMI 2/K3/2-88
2.8.3 Electronic weight compensation with travel to fixed stop . . . . . . . . . 2/K3/2-90

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/i
10.00
12.01
06.05

3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/3-93


3.1 Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/3-93
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/4-95
4.1 Description of machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/4-95
4.1.1 General machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/4-95
4.1.2 Axis-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/4-97
4.2 Description of setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/4-115
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/7-119
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/7-119
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/7-119
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/7-119
7.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/7-120
7.3 Setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/7-121
7.4 Alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K3/7-122
J

Copyright © Siemens AG, 2005.


2/K3/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
1 Brief Description

Brief Description 1
Reason The accuracy of machine tools is impaired as a result of deviations from the
ideal geometry, power transmission faults and measuring system errors. Tem-
perature differences and mechanical forces often result in great reductions in
precision when large workpieces are machined.
Some of these deviations can usually be measured during installation and then
compensated for during operation on the basis of values read by the positional
actual-value encoder and other sensory devices.

Compensation CNCs provide functions for compensation of the essential causes of error to
meet the increasing demand for precision in machine tools.
For SINUMERIK 840D the following axis-specific compensations can be acti-
vated:

S Temperature compensation
S Backlash compensation
S Interpolatory compensation
– LEC
(leadscrew error and measuring system error compensation)
– Beam sag compensation
(compensation of beam sag and angular errors)

S Dynamic feedforward control (following error compensation)


S Friction compensation (or quadrant error compensation)
– Conventional friction compensation
– Quadrant error compensation with neural networks
(SINUMERIK 840C only)

S Electronic counterweight for drives on SIMODRIVE 611D


These compensation functions can be set for each machine individually with
axis-specific machine data.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/1-3
Compensations (K3) 06.05
1 Brief Description

Interpolatory The “Interpolatory compensation” function allows position-related dimensional


compensation deviations (for example, by leadscrew errors, measuring system errors or sag)
to be corrected.
The compensation values are measured during installation and stored in a table
as a position-related value. During operation the axis is compensated between
interpolation points during linear interpolation.

Friction The “friction compensation” function is particularly effective in achieving a signi-


compensation ficant improvement in contour accuracy in circular contour machining operation-
s. If the direction of rotation of an axis changes, contour errors occur when the
velocity equals zero (quadrant transition point) because of the changing friction
conditions. “Friction compensation” (also called “Quadrant error compensation”)
compensates for this error reliably the first time the contour is machined.
A neural network integrated in the SINUMERIK 840D adapts the optimum
parameters in a self-learning process to compensate for friction, backlash or
torsion. The system allows for simple, automatic re-optimization at any time.
The friction compensation system is installed most simply with a circularity test.
The circular contour is followed and the actual position deviations from the
programmed radius (most especially at the quadrant transition points) are
measured and then displayed graphically. The circularity test is an “installation
tool” function.

Activation The compensations are active in all operating modes of the control as soon as
the input data are available. Any compensations that require the position actual
value are not activated until the axis reaches the reference point.

Position display The normal actual-value and setpoint position displays ignore the compensation
values and show the position values of an “ideal machine”. The compensation
values are output in the “Service axes” display in the “Diagnosis” operating
area.
J

Copyright © Siemens AG, 2005.


2/K3/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.1 Temperature compensation

Detailed Description 2
2.1 Temperature compensation

2.1.1 General

Deformation due Heat generated by the drive equipment or high ambient temperatures (e.g.
to temperature caused by sunlight, drafts) cause the machine base and parts of the machinery
effects to expand. The degree of expansion depends on the temperature and the ther-
mal conductivity of the machine parts.

Effects Owing to the thermal expansion of the machinery, the actual positions of the
axes change depending on temperature. Since this phenomenon impairs the
accuracy of the machined workpieces, it is possible to compensate such tem-
perature-related changes in actual value position (so-called temperature com-
pensation).

Sensors Apart from the position actual values supplied by existing encoders, tempera-
ture compensation functions generally require a number of additional tempera-
ture sensors to acquire a temperature profile.
As temperature-related changes take a relatively long time to have an effect,
acquisition and preprocessing of the temperature profile can be executed by the
PLC in one-minute cycles.

Error curves In order to implement temperature compensation, the actual-value offsets over
the positioning range of the axis must be measured at a given temperature (T)
and plotted. This produces an error curve for this temperature value. Error
curves must be produced for different temperatures.

Error curve The error curve characteristic shown in the figure below is frequently obtained.
characteristic If a position reference point P0 is chosen for the axis, an offset in the reference
point (corresponds to the “position-independent component” of the temperature
compensation) can be observed as the temperature changes, and because of
the change in length an additional offset in the other position points which in-
creases with the distance to the reference point (corresponds to the “position-
dependent component” of the temperature compensation).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-5
Compensations (K3) 06.05
2.1 Temperature compensation

The error curve for a given temperature T can generally be represented with
sufficient accuracy by a straight line with a temperature dependent gradient and
reference position (see figure below).

Error curve for temperature T

Error
deviation

–x 0 +x

Fig. 2-1 Example of an error curve for heat expansion

Compensation The compensation value DKx is calculated on the basis of current actual
equation position Px of this axis and temperature T according to the following equation:
DKx = K0 (T) + tanb (T) * (Px – P0)
Key to letters (see figure below):
DKx Temperature compensation value of axis at position Px
K0 Position-independent temperature compensation value of axis
Px Actual position of axis
P0 Reference position of axis
tanb Coefficient of the position-dependent temperature compensation
(corresponds to the gradient of the approximated error line)
The compensation values are acquired in interpolation cycles. If the compensa-
tion value DKx is positive, the axis moves in the negative direction.

Error curve for temperature T


Error
deviation
Approximated
error line
ß
K0 ∆Kx

–x 0 Px +x

P0

Fig. 2-2 Approximated error line for temperature compensation

Copyright © Siemens AG, 2005.


2/K3/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.1 Temperature compensation

2.1.2 Temperature compensation parameters

Temperature- Error curves for different temperatures can be defined for each axis, as illus-
dependent trated in the figure above. For each error curve the following parameters must
parameters be determined and then entered in the setting data:

S Position-dependent temperature-compensation value K0


SD 43900: TEMP_COMP_ABS_VALUE

S Reference position P0 for position-dependent temperature compensation SD


43920: TEMP_COMP_REF_POSITION

S Slope tanb for position-dependent temperature compensation SD 43910:


TEMP_COMP_SLOPE

Activate Temperature compensation can be activated for every axis by means of axial
temperature MD 32750: TEMP_COMP_TYPE. The type of temperature compensation to be
compensation applied can also be selected and this can be activated for several compensa-
tion types simultaneously.

Table 2-1 MD 32750: TEMP_COMP_TYPE

MD 32750: Meaning Associated parameters


TEMP_COMP_TYPE
Value = 0 No temperature com- ______________________
pensation active
Bit 0 = 1 Position-independent tem- SD 43900:
perature compensation TEMP_COMP_ABS_VALUE
active
Bit 1 = 1 Position-dependent tem- SD 43920:
perature compensation TEMP_COMP_REF_POSITION
active SD 43910: TEMP_COMP_SLOPE.
Bit 2 = 1 Temperature compensa- MD 20390:
tion active in tool direction TOOL_TEMP_COMP_ON
For further details see:
References: /FB/, W1 Section 2.8

Activation The following conditions must be fulfilled before temperature compensation can
be applied:
1. The option must be enabled.
2. The compensation type must be selected (MD 32750:
TEMP_COMP_TYPE).
3. The parameters for the compensation type are defined.
4. The axis must be referenced (IS “Referenced/synchronized 1 or 2” DB31 to
48, DBX60.4 or 60.5 = ‘1’).
As soon as these conditions are fulfilled, the temperature compensation value
for the current position actual value is added to the setpoint in all modes and the
machine axis is traversed.
If the reference position is subsequently lost again, e.g. because the
encoder frequency has been exceeded (IS “Referenced/Synchronized 1
or 2” = 0), then the compensation processing routine is aborted.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-7
Compensations (K3) 06.05
2.1 Temperature compensation

Temperature Since the approximated error line applies only to the instantaneous temperature
fluctuations and value, the parameters of the error lines that are newly generated when the tem-
modify parameters perature rises or falls must be sent to the NCK again. Only in this way can ex-
pansion due to heat be compensated for effectively.
When temperature T changes, the parameters which are temperature-depen-
dent, i.e. (K0, tanb and P0) also change and can thus always be overwritten by
the PLC or by means of a synchronous action.
It is thus possible for the machine-tool manufacturer to represent the mathemati-
cal and technological relationship between the axis positions and temperature
values via the PLC user program and thus calculate the various parameters for
the temperature compensation. The temperature parameters are transferred to
the NCK with variable
Services (FB2 (GET) “Read data” and FB3 (PUT) “Write data”).
For more information on handling and parameterization of FB2 and FB3 see:
References: /FB/, P3 “Basic PLC Program”

Monitoring Axial MD 32760: COMP_ADD_VELO_FACTOR (velocity violation due to com-


functions pensation) can be set to limit the maximum compensation value that can be
added to the specified velocity value in each IPO clock cycle.
This machine data limits the maximum gradient of the error curve. If the maxi-
mum gradient is exceeded, the compensation value is limited in the control.

Smooth To prevent overloading of the machine or tripping of monitoring functions in res-


compensation ponse to step changes in the above parameter settings, the compensation val-
value ues are distributed among several IPO clock cycles by an internal control func-
tion as soon as they exceed the maximum compensation value specified
for each cycle (MD 32760: COMP_ADD_VELO_FACTOR).

Position display The normal actual value and setpoint position displays ignore the compensation
values and show the position values of an ideal machine.

Display of The total compensation value calculated from the temperature and sag com-
compensation pensation functions belonging to the current actual position is output in the “Ser-
values vice axes” display in the “Diagnosis” operating area.

Determine example Installation of the temperature compensation is described below using the ex-
of error curve ample of a Z axis on a lathe.
In order to determine the temperature-dependent error characteristic of the Z
axis, proceed as follows:

S Constant heating by traversing the axis across the whole Z axis traversing
range (in the example: from 500 mm to 1500 mm)

S Measuring the axis position in distances of 100 mm


S Measuring the actual temperature at the leadscrew
S Executing a traversing measuring cycle every 20 minutes

Copyright © Siemens AG, 2005.


2/K3/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.1 Temperature compensation

The mathematical and technological relationship and the resulting parameters


for temperature compensation are derived from the recorded data. The calcu-
lated deviation errors for a specific temperature, which refer to the actual posi-
tion of the Z axis displayed by the NC, are represented in graphic form in the
figure below.

Measured temperature

Abs. deviation error [ mm]


300 10.40, 41.6 degrees
10.20, 40.8 degrees
250 10.00, 39.5 degrees
9.40, 38.0 degrees
200 9.20, 35.0 degrees
150
9.00, 31.0 degrees
100
50
0 8.40, 22.0 degrees

–50
320 500 600 700 800 900 100011001200130014001500
Reference Position of Z axis [mm]
point P o

Fig. 2-3 Error curves determined for the Z axis

Specifying The temperature compensation parameters must now be set on the basis of the
parameters measurement results (see figure above).
Reference position P0
As the figure above illustrates, there are basically two methods of configuring
reference position P0:

1. P0 = 0 with position-independent temperature compensation value K0  0

2. P0  0 with position-independent temperature compensation value K0 = 0


In our example, variant 2 is chosen, where the position-independent tempera-
ture compensation value is always 0. The temperature compensation value
therefore only consists of the position-dependent components. The following
parameters result:

S MD32750 $MA_TEMP_COMP_TYPE = 2 (only position-dependent temper-


ature compensation active)

S P0 = 320 mm =>
SD43920 $SA_TEMP_COMP_REF_POSITION = 320

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-9
Compensations (K3) 06.05
2.1 Temperature compensation

Coefficient tanb (T)


In order to determine the dependency of coefficient tanb of the
position-dependent temperature compensation on the temperature, the error
curve gradient is plotted against the measured temperature (see figure below).

300
TKmax
250

200

150

Measured
100
curve
characteristic
50
Straight line
0
T0 Tmax
22 24 26 28 30 32 34 36 38 40 42
Absolute temperature [degrees]

Fig. 2-4 Characteristic of coefficient tanb as a function of measured temperature T

Depending on the resulting line, the following dependency on T results for the
coefficient tanb:
tanb (T) = (T – T0) * TKmax * 10–6/ (Tmax – T0)

where T0 = temperature at which the position-dependent error = 0; [degrees]


Tmax = maximum measured temperature; [degrees]
TKmax = Temperature coefficient at Tmax; [mm/1000 mm]
According to the diagram above, the values for T are therefore:
T0 = 23 degrees
Tmax = 42 degrees
TKmax = 270 mm/1000 mm
and tan ß(T) is therefore:
tanb (T) = (T – 23 degrees) * 14.21 [mm/1000 mm]
Example:
At a temperature of e.g. T = 32.3 degrees, therefore: tanb = 0.000132

PLC user program The formula given above must be used in the PLC user program to calculate
the coefficient tanb (T) which corresponds to the measured temperature; this
must then be written to the following NCK setting data:
SD43910 $SA_TEMP_COMP_SLOPE
According to example above:
SD43910 $SA_TEMP_COMP_SLOPE = 0.000132

Copyright © Siemens AG, 2005.


2/K3/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.2 Backlash compensation

2.2 Backlash compensation

Mechanical Slight backlash generally occurs in the power train between a moving machine
backlash part and its drive (e.g. leadscrew) since an unacceptably high level of machine
wear would occur if the mechanical components were to be set to be absolutely
free of backlash.
Backlash can also occur between the machine part and the measuring system.

Effect In the case of axes/spindles with indirect measuring systems, mechanical back-
lash results in corruption of the traverse path, causing an axis, for example, to
travel too much or too little by the amount of the backlash when the direction of
movement is reversed (see the following 2 diagrams).

Compensation To compensate for backlash, the axis-specific actual value is corrected by the
amount of backlash every time the axis/spindle changes direction.
This quantity can be entered for each axis/spindle at the start-up phase in ma-
chine data
MD 32450: BACKLASH. If there is a second measuring system installed for the
axis/spindle, the relevant backlash values must be entered for each measuring
system.
In SW 5 and later, the backlash can be weighted by a factor as a parameter set
function. The weighting factor is set in
MD 32452: BACKLASH_FACTOR to between 0.01 and 100.0, default setting is
1.0.
Application: e.g. compensation of gear-stage-related backlash.

Activation Backlash compensation is always active in all operating modes after reference
point approach.

Position display The normal actual value and setpoint position displays ignore the compensation
values and show the position values of an “ideal machine”.

Display of The compensation value applying to the current actual position is output as the
compensation total compensation calculated from “LEC” and “backlash compensation” in the
values “Service axes” display in the “Diagnosis” operating area.

Positive backlash The encoder “leads” the machine part (e.g. table). Since the actual position ac-
quired by the encoder also leads the real actual position of the table, the table
travels too short a distance (see figure below). The backlash compensation
value must be entered as a positive value here (= normal case).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-11
Compensations (K3) 06.05
2.2 Backlash compensation

Positive backlash (normal case)

Table
Backlash

M ÉÉÉÉÉÉÉÉ
Encoder

Encoder actual value leads the real actual value (table): The
table does not travel far enough

Fig. 2-5 Positive backlash (normal case)

Negative backlash The encoder “lags behind” the machine part (e.g. table); the table then travels
too far (see figure below). The correction value entered is negative.

Negative backlash

ËËËËËËËËË
ËËËËËËËËË
Table

Gear rack
Backlash

ÉÉ ÉÉÉ
ÉÉ ÉÉÉ
Encoder

Real actual value (table) leads the encoder actual value:


Table travels too far

Fig. 2-6 Negative backlash

2nd measuring If there is a second measuring system for the axis/spindle, a backlash com-
system pensation must be entered for this too. As the second measuring system is
mounted in a different way from the first measuring system, the backlash can be
different from that of the first measuring system.
When the measuring system is switched over the associated compensation
value is always activated.

Copyright © Siemens AG, 2005.


2/K3/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.2 Backlash compensation

Large backlash The user has the option of applying the backlash compensation value gradually
compensation in several increments when the relevant axis reverses direction. This prevents a
setpoint step change on the axes from causing corresponding errors.
The contents of the axis-specific MD 36500: ENC_CHANGE_TOL determines
the increment with which the backlash compensation value (MD 32450: BACK-
LASH) is applied.
Please note that the backlash compensation is fully calculated only after n
(n = MD 32450 / MD 36500) servo cycles. An excessive time span can cause
the triggering of a zero speed monitoring alarm.
If MD 36500: ENC_CHANGE_TOL is set higher than
MD 32450: BACKLASH, the compensation is performed in one servo cycle.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-13
Compensations (K3) 06.05
2.3 Interpolatory compensation

2.3 Interpolatory compensation


2.3.1 General

Compensation The following compensation methods are applied in order to implement “interpo-
methods latory compensation”:
1. “Leadscrew error compensation” or “measuring system error compensation”
(referred to as MSEC in the following).
2. Beam sag compensation or angularity error compensation
(Software Version 2 and higher), which from now on will be referred to as
beam sag compensation.
Many of the characteristics of these two compensation methods are identical
and are therefore described in the next Section “General notes”.

Terms The following terms are used in the description of “Interpolatory compensation”:
Compensation value The difference between the axis position measured
by the position actual-value encoder and the re-
quired programmed axis position (= axis position of
the ideal machine). The compensation value is
often also referred to as the correction value.
Basic axis Axis whose setpoint or actual value position forms
the basis of the calculation of a compensation
value.
Compensation axis Axis whose setpoint or actual value position is
modified by a compensation value.
Interpolation point A position of the base axis and the corresponding
compensation value of the compensation axis.
Correction table Table containing interpolation points.
Compensation relations Assignment of the base axis and the correspond-
ing compensation axis and the reference to the
corresponding compensation table.

Leadscrew and The measuring principle of “indirect measurement” on NC-controlled machines


measuring system is based on the assumption that the leadscrew pitch is constant at any given
errors point within the traversing range so that the actual axis position can be derived
from the position of the drive spindle (ideal case).
However, manufacturing tolerances result in dimensional deviations of varying
degrees of severity on spindles (so-called leadscrew errors).
To these are added the deviations caused by the measuring system used (dif-
fering divisions) and by the way the measuring system is mounted on the ma-
chine (measuring system errors) and any machine-dependent sources of error.

Copyright © Siemens AG, 2005.


2/K3/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.3 Interpolatory compensation

Sag errors Weight can result in position-dependent displacement and inclination of moved
parts since it can cause machine parts and their guides to sag (see Fig. 3.2).
Large workpieces, too, e.g. cylinders, sag under their own weight.

Angularity errors If moving axes are not positioned in exactly the required angle (e.g. perpendicu-
lar) with respect to one another, increasingly serious positioning errors will occur
as the deviation from zero point becomes greater.

Compensation Since the deviations in dimension caused by the phenomena described above
table have a direct effect on workpiece machining accuracy, they need to be
compensated by appropriate position-dependent correction values. The com-
pensation values are derived from measured error curves and entered in the
control in the form of compensation tables during installation. A separate table
must be created for each compensation relation.
The compensation values and additional table parameters are entered in the
compensation tables using special system variables.

Note
Compensation tables can be loaded only if MD 32700: ENC_COMP_ENABLE
(interpolatory compensation)=0 and/or MD 32710: CEC_ENABLE (enable
beam sag compensation) are set to zero.

Input of The size of the compensation table, i.e. the number of interpolation points, must
compensation first be defined in a machine data - a power ON must then be executed.
table Compensation tables can be loaded to the backed up NC user memory by two
different methods.

S The compensation values are loaded when an NC program with the com-
pensation tables is started.

S The compensation values can also be loaded by transferring the tables from
a PC via the serial interface on the MMC.

Note
Once the size of the compensation tables has been defined in machine data,
the NC generates the tables after the next power ON. The default setting for
these tables is “0”.
The compensation tables can be output from the “Services” operating area via
the serial interface on the MMC and loaded back after editing.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-15
Compensations (K3) 06.05
2.3 Interpolatory compensation

These compensation values are not lost when the control is switched off be-
cause they are stored in the non-volatile user memory. They can be updated if
necessary (e.g. as a result of re-measuring because of machine aging).

Caution
! When the setting in MD 18342: MM_CEC_MAX_POINTS[t] (max. number of
interpolation points of beam sag comp., SRAM) or MD 38000:
MM_ENC_COMP_MAX_POINTS (number of interpolation points for
interpolatory comp., SRAM) is changed, the buffered NC user memory is
reinitialized when the system powers up. All user data of the battery-buffered
user memory (e.g. drive and MMC machine data, tool offsets, parts programs,
compensation tables etc.) are deleted.

References: /FB/, S7, “Memory Configuration”

Archiving Compensation tables are not saved with the series start-up file.
To archive compensation tables, they must be output via the serial interface on
the MMC. The following compensation types can be selected for archiving in the
operating area “Services”, “Data OUT”:

S LEC/measuring system error compensation (%_N_AX_EEC_INI)


S Beam sag/angularity compensation (%_N_AX_CEC_INI)
S Quadrant error compensation (%_N_AX_QEC_INI)
Compensation tables can also be saved as an archive file with HMI Advanced.

Linear The traversing path to be compensated delineated by the start and end posi-
interpolation tions is divided up into several (number depends on error curve shape) path
between the segments of equal size (see figure below). The actual positions that limit these
interpolation sub-paths are designated “interpolation points”. A compensation value must be
entered for each interpolation point (actual position) during installation. The
points
compensation value applied between 2 interpolation points is generated on the
basis of linear interpolation using the compensation values for the adjacent
interpolation points (i.e. adjacent interpolation points are linked along a line).

Copyright © Siemens AG, 2005.


2/K3/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.3 Interpolatory compensation

Compensation
value of compensation axis Error curve
Compensation curve

Linear interpolation

n n+1 n+2 n+3 Position of the


Interpolation point base axis

Fig. 2-7 Linear interpolation between the interpolation points

Compensation The compensation table should be structured such that the compensation value
value at reference at the reference point is “zero”.
point

2.3.2 Measuring system error compensation (MSEC)

Function The leadscrew error compensation function is part of the measuring system
error compensation system.
In “Measuring system error compensation” (from now on referred to as MSEC),
the base and compensation axes are always identical. It is therefore an axial
compensation for which a definition of the base axis and compensation axis in
the compensation table is not necessary.
The principle of the MSEC is to modify the axis-specific position actual value by
the assigned compensation value in the interpolation cycle and to apply this
value to the machine axis for immediate traversal. A positive compensation
value causes the corresponding machine axis to move in the negative direction.
The magnitude of the compensation value is not limited and is not monitored. In
order to avoid impermissibly high velocities and accelerations caused by com-
pensation, small compensation values must be selected. Large compensation
values can cause other axis monitoring functions to output alarms (e.g. contour
monitoring, velocity setpoint limitation).
If the axis to be compensated has a 2nd position measuring system, a separate
compensation table must be created and activated for each measuring system.
The correct table is automatically used when switching between measuring
systems.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-17
Compensations (K3) 06.05
2.3 Interpolatory compensation

Activation The “MSEC” does not become active until the following conditions are fulfilled:

S The compensation values are stored in the NC user memory and active (af-
ter power ON).

S The function has been activated for the machine axis concerned (MD32700:
ENC_COMP_ENABLE [e] = 1). If a 2nd position measuring system is to be
compensated, this must also be enabled with the above machine data (e =
0: 1. measuring system; e = 1: 2. measuring system).

S The axis has been referenced (IS: “Referenced/synchronized 1 or 2”


DB31, ... DBX60.4 or 60.5 = ‘1’).
As soon as these conditions have been fulfilled, the axis-specific actual value is
altered by the compensation value in all modes and traversed by the machine
axis immediately.
If the reference is then lost, e.g. because the encoder frequency has been ex-
ceeded (IS “Referenced/synchronized 1 or 2”=‘0’), compensation processing is
deactivated.

Compensation For every machine axis and for every measuring system (if a 2nd measuring
interpolation system is installed), the number of reserved interpolation points of the com-
points pensation table must be defined and the necessary memory reserved in
MD 38000: MM_ENC_COMP_MAX_POINTS.
MD 38000: MM_ENC_COMP_MAX_POINTS[e,AXi]
where: AXi = axis name e.g. X1, Y1, Z1
e = measuring system (e = 0: 1. measuring system; e = 1: 2.
measuring system)
$AA_ENC_COMP_MAX[e, AXi]–$AA_ENC_COMP_MIN[e, AXi]
MM_ENC_COMP_MAX_POINTS[e, AXi]  1
$AA_ENC_COMP_STEP[e, AXi]

Compensation The position-related compensation values are stored in the form of system vari-
table ables for the relevant axis in the compensation table.
The following measuring-system-specific parameters must be set for the table
(see figure below):

S Compensation value for interpolation point N in compensation table


($AA_ENC_COMP [e,N,AXi])
For every individual interpolation point (axis position) the compensation
value must be entered in the table.
Interpolation point N is limited by the number of possible interpolation points
in the relevant compensation table (MD 38000:
MM_ENC_COMP_MAX_POINTS).
The magnitude of the compensation value is not limited.
Permissible range of N: 0N < MM_ENC_COMP_MAX_POINTS –1

Note
The first and last compensation values remain active over the entire traversing
range, i.e. these values should be set to “0” if the compensation table does not
cover the entire traversing range.

Copyright © Siemens AG, 2005.


2/K3/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.3 Interpolatory compensation

S Distance between interpolation points ($AA_ENC_COMP_STEP[e,AXi])


The distance between interpolation points corresponds to the distance be-
tween the compensation values in the relevant compensation table (see
above for meaning of e and AXi).

S Initial position ($AA_ENC_COMP_MIN[e,AXi])


The initial position is the axis position at which the compensation table for
the relevant axis begins ( interpolation point 0).
The compensation value for the initial position is
$AA_ENC_COMP_STEP[e,0,AXi)].
For all positions smaller than the initial position the compensation value of
interpolation point zero is used (does not apply for table with modulo).

S End position ($AA_ENC_COMP_MAX[e,AXi])


The end position is the axis position at which the compensation table for the
relevant axis ends (interpolation point k).
The compensation value for the end position is
$AA_ENC_COMP_STEP[e,k,AXi)].
The compensation value of interpolation point k is used for all positions
larger than the end position (exception: table with modulo functions).
The number of required interpolation points is calculated as follows:

$AA_ENC_COMP_MAX – $AA_ENC_COMP_MIN
k
$AA_ENC_COMP

With 0  k < MD 38000: MM_ENC_COMP_MAX_POINTS


The following conditions apply to interpolation point k:
– With k = MD 38000: MM_ENC_COMP_MAX_POINTS – 1
 the compensation table is fully utilized!
– With k < MD 38000: MM_ENC_COMP_MAX_POINTS – 1
 the compensation table is not fully utilized; compensation values
entered in the table greater than k have no effect.

S With k > MD 38000: MM_ENC_COMP_MAX_POINTS – 1


 the compensation table is limited internally by reducing the end position;
the compensation values greater than k are not used.

S Compensation with modulo function


($AA_ENC_COMP_IS_MODULO[e,AXi])
When the compensation is activated with a modulo function, the compen-
sation table is repeated cyclically, i.e. the compensation value at location
$AA_ENC_COMP_MAX (interpolation point $AA_ENC_COMP[e,k,AXi]) is
followed immediately by the compensation value at location
$AA_ENC_COMP_MIN (interpolation point $AA_ENC_COMP[e,0,AXi]).
For rotary axes with modulo 360° it is therefore suitable to program 0° as the
initial position ($AA_ENC_COMP_MIN) and 360° as the end position
($AA_ENC_COMP_MAX).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-19
Compensations (K3) 06.05
2.3 Interpolatory compensation

The compensation values entered for these two positions should be the
same as otherwise the compensation value jumps from MAX to MIN at the
transition point and vice versa.
$AA_ENC_COMP_IS_MODULO[e,AXi] = 0: Compensation without
modulo function
$AA_ENC_COMP_IS_MODULO[e,AXi] = 1: Compensation with mo-
dulo function

Caution
! When the compensation values are entered it is important that all interpolation
points be assigned a position value within the defined range (i.e. no gaps).
Otherwise, the previous valid position value is used for these interpolation
points.

Note
Table parameters which contain position information are not automatically
converted at measuring system change (change in MD 10240:
SCALING_SYSTEM_IS_METRIC) in SW 4 and lower. The position information
is always interpreted in the current measuring system. Conversions must be
conducted externally.
In SW 5 and higher, when MD 10260: CONVERT_SCALING_SYSTEM=1, it is
possible to configure automatic conversion of position data. External
conversion is no longer necessary.
References: /FB1/, G2, Chapter 2

Example The following example shows compensation value inputs for machine axis X1.
%_N_AX_EEC_INI
CHANDATA (1)
$AA_ENC_COMP[0,0,X1] = 0.0 ; 1st compensation value
(interpolation point 0) +0mm
$AA_ENC_COMP[0,1,X1] = 0.01 ; 2nd compensation value
(interpolation point 1) +10mm
$AA_ENC_COMP[0.2,X1] = 0.012 ; 3rd compensation value
(interpolation point 2) +12mm
:
$AA_ENC_COMP[0,800,X1] = –0.0
; Last compensation value
(interpolation point 800)
$AA_ENC_COMP_STEP[0,X1] = 1.0 ; Distance between interpolation
points 1.0 mm
$AA_ENC_COMP_MIN[0,X1] = –200.0 ; Compensation begins
at –200.0 mm
$AA_ENC_COMP_MAX[0,X1] = 600.0 ; Compensation ends at +600.0 mm
$AA_ENC_COMP_IS_MODULO[0,X1] = 0; Compensation without
modulo function
M17

Copyright © Siemens AG, 2005.


2/K3/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.3 Interpolatory compensation

In this example, the number of compensation interpolation points set in


MD38000: MM_ENC_COMP_MAX_POINTS  must be 801 or else alarm
12400 “Element does not exist” will be output.
The compensation table for this example requires at least 6.4KB of the non-vol-
atile NC user memory (8 bytes per compensation value).

Offset value
Error curve
Compensation curve
(linear interpolation between interpolation points)
Compensation values of compensation table

End position
($AA_ENC_COMP_MAX)
Compensation value for
Point spacing interpolation point 5
($AA_ENC_COMP)
Reference point Axis position
–200 –199 –198 –197 599 600

0 1 2 3 4 5 800
Interpolation points
Linear interpolation
Starting position
($AA_ENC_COMP_MIN) Number of interpolation points
(MD: MM_ENC_COMP_MAX_POINTS)

Fig. 3-1 Compensation table parameters (system variables for MSEC)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-21
Compensations (K3) 06.05
2.3 Interpolatory compensation

2.3.3 Sag compensation and angularity error compensation

Function In contrast to the MSEC, the base and compensation axes need not be identi-
cal for “Sag compensation” or “Angularity error compensation”, requiring an axis
assignment in every compensation table.
In order to compensate for sag of one axis (base axis) which results from its
own weight, the absolute position of another axis (compensation axis) must be
influenced. “Sag compensation” is therefore an inter-axis compensation.
As illustrated in the figure below, the further the machining head moves in the
negative Y1 axis direction, the more the cross-arm sags in the negative Z1 axis
direction.
The error must be recorded in the form of a compensation table that contains a
compensation value for the Z1 axis for every actual value position in the Y1
axis. It is sufficient to enter the compensation values for the interpolation points.
When the Y1 axis traverses, the control calculates the corresponding com-
pensation value in the Z1 axis in interpolation cycles performing linear interpola-
tion for positions between the interpolation points. This compensation is sent to
the position control loop as an additional setpoint. A positive compensation
value causes the corresponding machine axis to move in the negative direction.

+Z1

+Y1
Sag in neg.
Y1 direction because of
its own weight

ÉÉ
ÉÉ
ÉÉÉÉÉÉÉÉÉÉÉÉÉ
ÉÉÉÉÉÉÉÉÉÉÉÉÉ
Fig. 3-2
ÉÉÉÉÉÉÉÉÉÉÉÉÉ
Example of sag caused by own weight

Depending on the requirement, several compensation relations can be defined


for one axis. The total compensation value results from the sum of all the com-
pensation values of this axis.

Copyright © Siemens AG, 2005.


2/K3/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.3 Interpolatory compensation

Setting options The many ways in which the compensation value for sag compensation can be
produced/influenced are listed below (see figure below).
1. An axis can be defined as the input variable (base axis) for several com-
pensation tables (settable via system variables).
2. An axis can be defined as the recipient of the output variable (compensation
axis) of several compensation tables (settable via system variable). The
total compensation value is derived from the sum of the individual com-
pensation values.
The following definitions apply for the maximum number of possible com-
pensation tables:
– Maximum number of tables available for all axes:
2 * maximum number of axes in system
– Maximum number of tables applied to one compensation axis:
1 * maximum number of axes in system
3. An axis can be both a base axis and a compensation axis at any one time.
The programmed (required) position setpoint is always used to calculate the
compensation values.
4. The range of influence of the compensation (starting and end position of the
base axis) and the distance between the interpolation points can be defined
for every compensation table (settable via system variables).
5. Compensation can be direction-dependent (settable via system variables).
6. Every compensation table has a modulo function for cyclic evaluation (set-
table via system variables).
7. A weighting factor by which the table value is multiplied (definable as a set-
ting data which can therefore be altered by the parts program, PLC or the
user at any time) can be introduced for every compensation table.
8. Compensation tables can be multiplied in pairs (settable via system vari-
ables). The product is added to the total compensation value of the com-
pensation axis.
9. The compensation can be activated in the following ways:
– MD 32710: CEC_ENABLE [AXi] the sum of all compensation relations is
enabled for machine axis AXi.
– With MD 41300: $SN_CEC_TABLE_ENABLE[t], evaluation of the com-
pensation table [t] is enabled.
It is thus possible, for example, to alter the compensation relations either
from the parts program or from the PLC user program (e.g. switching
over the tables), depending on the machining requirements.
10. In SW 5 and higher, when MD 10260: CONVERT_SCALING_SYSTEM=1 is
set, the axial MD 32711: CEC_SCALING_SYSTEM_METRIC becomes ef-
fective. The measuring system for all tables effective for this axis is set in
this machine data. Hereby all position entries are interpreted together with
the calculated total compensation value in the configured measuring sys-
tem. External conversions of position information are no longer necessary
with a measuring system change.

Note
No compensation table becomes active until the base axis and compensation
axis have been referenced.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-23
Compensations (K3) 06.05
2.3 Interpolatory compensation

Monitoring To avoid excessive velocities and acceleration rates on the machine axis as a
result of applying sag compensation, the total compensation value is monitored
and limited to a maximum value. The maximum compensation value is set in
axial MD 32720: CEC_MAX_SUM for specific axes.
If the resulting total compensation value is greater than the maximum value,
alarm 20124 “Sum of compensation values too high” is output. Program proc-
essing is not interrupted. The compensation value output as an additional set-
point is limited to the maximum value.
Alteration of the total compensation value is also limited axially. When limit value
MD 32730: CEC_MAX_VELO is exceeded, alarm 20125 “Compensation value
changed too quickly” is output; again program processing is continued. The
path not covered because of the limitation is made up as soon as the com-
pensation value is no longer subject to limitation.

Copyright © Siemens AG, 2005.


2/K3/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
Fig. 3-3
06.05

Input Compensation Weight Enable Output Tables- Tables- Compensation Compensation Compensation
Basic axis assignment table [t] factor table evaluation assignment multiplication summation limitation table evaluation axis
Position setpoint 0 0
(ideal) Position setpoint

Copyright © Siemens AG, 2005.


(compensated)
Axis 1 Axis 1

S
0

0 0
S

Axis n
0

Generation of compensation value for sag compensation


Axis n

System SAN_CEC[t, 0] SAN_CEC_MULT_


variable SAN_CEC_INPUT_AXIS[t] SAN_CEC_OUTPUT_AXIS[t]
SAN_CEC[t, 1] BY_TABLE[t]

Setting- CEC_TABLE_ CEC_TABLE_


data WEIGHT ENABLE

Machine CEC_MAX_SUM
data CEC_ENABLE
CEC_MAX_VELO

SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
2.3 Interpolatory compensation

2/K3/2-25
Compensations (K3)
Compensations (K3) 06.05
2.3 Interpolatory compensation

Complex Since it is possible to use the position of an axis as the input quantity (base
compensation axis) for several tables, to derive the total compensation value of an axis from
several compensation relationships (tables) and to multiply tables, it is also pos-
sible to implement sophisticated and complex beam sag and angularity error
compensation systems.
This function also makes it possible to deal with different error sources effi-
ciently. For example, it is possible to combine a table with a modulo function for
a periodic recurring error component with a second table without a modulo func-
tion for an aperiodic error component for the same axis.
Leadscrew errors can also be compensated with this function by parameterizing
an identical axis for the base and compensation axes. However, in contrast to
the MSEC, measuring-system switchovers are not automatically registered in
this case.

Activation The beam sag compensation function does not become active until the follo-
wing conditions are fulfilled:

S The option “Interpolatory compensation” has been enabled.


S The function has been activated for the relevant machine axis (compensa-
tion axis)
(MD 32710: CEC_ENABLE [AXi] = 1).

S The compensation values have been stored in the non-volatile NC user


memory and are active (after power ON).

S Evaluation of the relevant compensation table has been enabled


(SD 41300: CEC_TABLE _ENABLE [t] = 1)

S The current measuring system of the base and compensation axes has
been referenced (IS: “Referenced/synchronized 1 or 2” DB31, ... DBX60.4 or
60.5 = ‘1’).
As soon as these conditions have been fulfilled the setpoint position of the com-
pensation axis is altered in all modes with reference to the setpoint position of
the base axis and the corresponding compensation value and is then immedi-
ately traversed by the machine axis.
If the reference is then lost, e.g. because the encoder frequency has been ex-
ceeded (IS “Referenced/Synchronized 1 or 2” = ‘0’), compensation processing
is deactivated.

Compensation The number of required interpolation points in the compensation table must be
interpolation defined for every compensation relationship and the requisite memory space
points reserved in general MD 18342: MM_CEC_MAX_POINTS.
MD 18342: MM_CEC_MAX_ POINTS[t]
where: [t] = Index of compensation table
with (0  t < 2 * maximum number of axes)
i.e. t = 0: 1. compensation table
t = 1: 2. compensation table etc.
$AN_CEC_MAX[t]–$AN_CEC_MIN[t]
MM_CEC_MAX_POINTS[t]  1
$AN_CEC_STEP[t]

Copyright © Siemens AG, 2005.


2/K3/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.3 Interpolatory compensation

Table parameters The position-related corrections for the relevant compensation relationship are
stored as system variables in the compensation table.
The following parameters must be set for the table (see Fig. 3.1):

S Compensation value for interpolation point N in compensation table [t]


($AN_CEC [t, N])
The compensation value of the compensation axis must be entered in the
table for each individual interpolation point (position of the base axis).
Interpolation point N is limited by the number of possible interpolation points
in the relevant compensation table (MD 18342: MM_CEC_MAX_POINTS).

Permissible limit of N: 0  N < MD 18342: MM_CEC_MAX_POINTS

S Base axis ($AN_CEC_INPUT_AXIS[t])


Name of machine axis whose setpoint is to be used as the input for the com-
pensation table [t].

S Compensation axis ($AN_CEC_OUTPUT_AXIS[t])


Name of machine axis to which the output of the compensation table [t] is to
be applied.

Note
In multi-channel systems the “general axis identifiers” AX1... must be preset, if
the identifiers of machine axis and channel axis are identical.

S Distance between interpolation points ($AN_CEC_STEP[t])


The distance between interpolation points defines the distance between the
input values for the compensation table [t].

S Initial position ($AN_CEC_MIN[t])


The initial position is the position of the base axis at which the compensation
table [t] begins (interpolation point 0).
The compensation value for the initial position is $AN_CEC [t,0 ].
The compensation value of interpolation point 0 is used for all positions
smaller than the initial position (exception: table with modulo functions).

S End position ($AN_CEC_MAX[t])


The end position is the position of the base axis at which the compensation
table [t] ends (interpolation point k).
The compensation value for the end position is $AN_CEC [t,k].
The compensation value of interpolation point k is used for all positions
larger than the end position (exception: table with modulo functions).
The number of required interpolation points is calculated as follows:
$AN_CEC_MAX[t] – $AN_CEC_MIN[t]
k
$AN_CEC_STEP[t]

With 0  k < MD 18342: MM_CEC_MAX_POINTS


The following conditions apply to interpolation point k:
– With k = MD 18342: MM_CEC_MAX_POINTS – 1
 the compensation table is fully utilized!

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-27
Compensations (K3) 06.05
2.3 Interpolatory compensation

– With k < MD 18342: MM_CEC_MAX_POINTS – 1


 the compensation table is not fully utilized; the entered compensation
values greater than k have no effect
– With k > MD 18342: MM_CEC_MAX_POINTS – 1
 the compensation table is limited in the control by reducing the end
position; the compensation values greater than k are not used.

S Direction-dependent compensation ($AN_CEC_DIRECTION[t])


This system variable can be used to define whether the compensation table
[t] should apply to both travel directions of the base axis or only either the
positive or negative direction.
0: Table affects both traversing directions of the base axis
1: Table only affects the positive traversing direction of the base axis
–1: Table only affects the negative traversing direction of the base axis
Possible applications: Position-dependent backlash compensation can be
implemented using two tables, one of which affects the positive traversing
direction, the other of which affects the negative traversing direction of the
same axis.
S Table multiplication ($AN_CEC_MULT_BY_TABLE[t])
This option allows the compensation values of any table to be multiplied with
those of another (or with themselves). The product is added as an additional
compensation value to the total compensation value of the compensation
table.
Syntax: $AN_CEC_MULT_BY_TABLE[t1] = t2
t1 = Index of table 1 of the compensation axis
t2 = Number of table 2 of the compensation axis
It is important to ensure that the number and index of the same
table are different!
The general rule is: Table number = table index + 1
S Compensation with modulo function ($AN_CEC_IS_MODULO[t])
When the compensation with modulo function is activated, the compensa-
tion table is repeated cyclically, i.e. the compensation value at location
$AN_CEC_MAX[t] (interpolation point $AN_CEC[t,k]) is followed immedi-
ately by the compensation value at location $AN_CEC_MIN[t] (interpolation
point $AN_CEC[t,0]).
These two compensation values should be the same as otherwise the com-
pensation value jumps from MAX to MIN at the transition point and vice
versa.
$AN_CEC_IS_MODULO[t]= 0: Compensation without modulo function
$AN_CEC_IS_MODULO[t]= 1: Compensation with modulo function
If modulo compensation is to be implemented with a modulo rotary axis as
base axis, the compensation table used has to be modulo calculated as
well.
Example:
MD 30300: IS_ROT_AX[AX1] = 1: Rotary axis
MD 30310: ROT_IS_MODULO[AX1] = 1: Modulo 360
$AN_CEC_INPUT_AXIS[0]=AX1
$AN_CEC_MIN[0]=0.0
$AN_CEC_MAX[0]=360.0
$AN_CEC_IS_MODULO[0]=1

Copyright © Siemens AG, 2005.


2/K3/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.3 Interpolatory compensation

Note
Table parameters which contain position information are not automatically
converted at measuring system change (change in MD 10240:
SCALING_SYSTEM_IS_METRIC) in SW 4 and lower. The position information
is always interpreted in the current measuring system. Conversions must be
conducted externally.
In SW 5 and higher, when MD 10260: CONVERT_SCALING_SYSTEM=1 is
set, the measuring system can be configured via axial MD 32711:
CEC_SCALING_SYSTEM. External conversions of position information are no
longer necessary with a measuring system change.
References: /FB1/, G2, Chapter 2

Table example The following example shows the compensation table for sag compensation of
axis Y1. Depending on the position of the Y1 axis, a compensation value is ap-
plied to the Z1 axis. The 1st compensation table (t=0) is used for this.
%_N_NC_CEC_INI
CHANDATA(1)
$AN_CEC [0,0] =0 ; 1st compensation value (inter-
polation point 0) for Z1: 0mm
$AN_CEC [0,1] = 0.01 ; 2nd compensation value (inter-
polation point 1) for Z1: +10mm
$AN_CEC [0,2] = 0.012 ; 3rd compensation value inter-
polation point 2) for Z1: +12mm
:
$AN_CEC [0.100] =0 ; Last compensation value inter-
polation point 101) for Z1: 0mm
$AN_CEC_INPUT_AXIS[0] = (AX2) ; Base axis Y1
$AN_CEC_OUTPUT_AXIS[0] = (AX3) ; Compensation axis Z1
$AN_CEC_STEP[0] =8 ; Distance between interpolation
points 8.0 mm
$AN_CEC_MIN[0] = –400.0 ; Compensation begins at
Y1 = –400 mm
$AN_CEC_MAX[0] = 400.0 ; Compensation begins at
Y1 = +400 mm
$AN_CEC_DIRECTION[0] =0 ; Table applies to both directions of
travel of Y1
$AN_CEC_MULT_BY_TABLE[0] = ;
$AN_CEC_IS_MODULO[0] =0 ; Compensation without modulo
function
M17
In this example, the number of compensation interpolation points set in
MD18342: MM_CEC_MAX_POINTS [0] must be 101; otherwise alarm 12400
is activated.
The compensation table for this example requires at least 808 bytes of non-vol-
atile NC user memory.

Table With the table multiplication function, any table can be multiplied with any other
multiplication table (i.e. even with itself). The multiplication link is established using the system
variables described above.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-29
Compensations (K3) 06.05
2.3 Interpolatory compensation

The following example for the compensation of machine foundation sagging


illustrates an application of table multiplication.
On large machines, sagging of the foundation can cause inclination of the
whole machine. For the boring mill in the second figure below, for example, it is
determined that compensation of the X1 axis is dependent both on the position
of the X1 axis itself (since this determines angle of inclination b) and on the
height of the boring mill (i.e. the position of the Z1 axis).
To implement compensation, the compensation values of the X1 and Z1 axes
must be multiplied according to the following equation (see figure below):
DX1 = Z1 * sinb(X1)  Z1 * b(X1)

Table 1

X1set sinb(X1)
+
S
Z1 X1setScomp
Z1set +
X1
Table 2

Fig. 3-4 Table multiplication

Compensation table 1 (table index = 0) describes the reaction of axis X1 on axis


X1 (sine of the position-dependent tilting angle b(X1)).
Compensation table 2 (table index = 1) describes the reaction of axis Z1 on axis
X1 (linear).
In table 1, the multiplication of table 1 (index = 0) with table 2 is to be selected:
$AN_CEC_MULT_BY_TABLE[0] = 2

Boring mill

Z1 (measured value)
Z1 b

ÉÉ
ÉÉ ÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉ
ÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉ
X1
DX1
Foundation under load

ÉÉ ÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉ
X1 (measured
value)

ÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉ
Fig. 3-5
ÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉ
Compensation of sag in a machine base

Copyright © Siemens AG, 2005.


2/K3/2-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.3 Interpolatory compensation

Example: The compensation values of the z axis sag on flat bed machines are often mea-
Input of sured in practice at various points as a function of the x and y coordinates.
compensation Where such conditions need to be met, it is useful to enter the measured com-
values in a grid pensation values according to a grid-type distribution. The interpolation points
with the relevant compensation values are positioned on the intersections of the
structure
grid (x-y plane). Compensation values between these interpolation points are
interpolated linearly by the control.
The following example explains in more detail how sag and angularity com-
pensation can be implemented by a grid of 4 x 5 (lines x columns) in size. The
size of the whole grid is 2000x900mm2. The compensation values are each
measured in steps of 500mm along the x axis and 300mm along the y axis.

Note
The maximum dimensions of the grid (number of lines and columns) depends
on the following points:
No. of lines: Dependent on number of axes in the system
(dependent on NCU type)
No. of columns: Dependent on the maximum number of values which can be
entered in a compensation table
(up to a total of 2000 values)

Caution
! The number of lines and columns is set in MD 18 342:
MM_CEC_MAX_POINTS. The machine data is memory-configuring.

1.6 1.7 1.8 1.9 2.0


900

1.1 1.2 1.3 1.4 1.5


600

0.6 0.7 0.8 0.9 1.0


300

0.1 0.2 0.3 0.4 0.5


0
0 500 1000 1500 2000 X

Fig. 3-6 Compensation values of Z axis with chessboard-like distribution of X–Y plane

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-31
Compensations (K3) 06.05
2.3 Interpolatory compensation

Fundamental The compensation values cannot be entered directly as a 2-dimensional grid.


principle Compensation tables in which the compensation values are entered must be
created first.
A compensation table contains the compensation values of one line (four lines
in the example, i.e. four compensation tables). Compensation values 0.1 to 0.5
are entered in the first table in the example and compensation values 0.6 to 1.0
in the second (see Fig. 3-6). Compensation tables are referred to below as f
tables and the table values as f_i(x) (i = number of table).
The compensation values of f tables are evaluated by multiplying them with
other tables. The latter are referred to below as g tables and their values as
g_i(y). The number of f tables and g tables is equal (four in the example).
In g tables, one compensation value in each table is set to 1 and all the others
to 0. The position of compensation value 1 within the table is determined by the
table number. In the first g table, compensation value 1 is positioned at the first
interpolation point and, in the second g table, at the second interpolation point,
etc. By multiplying g tables with f tables, the correct compensation value in each
f table is selected by multiplying it with 1. All irrelevant compensation values are
concealed through multiplication with 0.

Using this scheme, compensation value Dz at position (x/y) is calculated ac-


cording to the following equation:
Dz(x/y)=f_1(x)*g_1(y) + f_2(x)*g_2(y) + ...

When the compensation value for the current position of the machine spindle is
calculated, the f table values are multiplied by the g table values according to
this rule.
Applied to the example, this means, for instance, that compensation value
Dz(500/300) is calculated by multiplying each of the function values f_i(500) in
the f tables with the function values g_i(300) in the g tables:

Dz(500/300)= f_1(1000)*g_1(300) + f_2(1000)*g_2(300) + f_3(1000)*g_3(300)


+ f_4(1000)*g_4(300)

Dz(500/300)= 0.2*0 + 0.7*1 + 1.2*0 + 1.7*0 = 0.7

(for functions values, see also f and g tables in program code)

Program code The application example described above can be achieved with the following
parts program code:

$MA_CEC_ENABLE[Z1] = FALSE ; Deactivate the compensation by


setting to FALSE, allowing the table
values to be altered without gener-
ating alarm 17070.
NEWCONF ; Activate $MA_CEC_ENABLE

Copyright © Siemens AG, 2005.


2/K3/2-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.3 Interpolatory compensation

;Define values f_i(x) in the f tables:


;Function values f_1(x) for table with index [0]
$AN_CEC[0,0] =0.1
$AN_CEC[0,1] =0.2
$AN_CEC[0,2] =0.3
$AN_CEC[0,3] =0.4
$AN_CEC[0,4] =0.5

;Function values f_2(x) for table with index [1]


$AN_CEC[1,0] =0.6
$AN_CEC[1,1] =0.7
$AN_CEC[1,2] =0.8
$AN_CEC[1,3] =0.9
$AN_CEC[1,4] =1.0

;Function values f_3(x) for table with index [2]


$AN_CEC[2,0] =1.1
$AN_CEC[2,1] =1.2
$AN_CEC[2,2] =1.3
$AN_CEC[2,3] =1.4
$AN_CEC[2,4] =1.5

;Function values f_4(x) for table with index [3]


$AN_CEC[3,0] =1.6
$AN_CEC[3,1] =1.7
$AN_CEC[3,2] =1.8
$AN_CEC[3,3] =1.9
$AN_CEC[3,4] =2.0

;Enable evaluation of f tables with compensation values


$SN_CEC_TABLE_ENABLE[0] =TRUE
$SN_CEC_TABLE_ENABLE[1] =TRUE
$SN_CEC_TABLE_ENABLE[2] =TRUE
$SN_CEC_TABLE_ENABLE[3] =TRUE

;Define weighting factor of f tables


$SN_CEC_TABLE_WEIGHT[0] =1.0
$SN_CEC_TABLE_WEIGHT[1] =1.0
$SN_CEC_TABLE_WEIGHT[2] =1.0
$SN_CEC_TABLE_WEIGHT[3] =1.0

;Changes to the following table parameters take effect after power ON.
;Define base axis X1
$AN_CEC_INPUT_AXIS[0] =(X1)
$AN_CEC_INPUT_AXIS[1] =(X1)
$AN_CEC_INPUT_AXIS[2] =(X1)
$AN_CEC_INPUT_AXIS[3] =(X1)

;Define compensation axis Z1


$AN_CEC_OUTPUT_AXIS[0] =(Z1)
$AN_CEC_OUTPUT_AXIS[1] =(Z1)
$AN_CEC_OUTPUT_AXIS[2] =(Z1)
$AN_CEC_OUTPUT_AXIS[3] =(Z1)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-33
Compensations (K3) 06.05
2.3 Interpolatory compensation

;Define distance between interpolation points for compensation values in ftables


$AN_CEC_STEP[0] =500.0
$AN_CEC_STEP[1] =500.0
$AN_CEC_STEP[2] =500.0
$AN_CEC_STEP[3] =500.0

;Compensation starts at X1=0


$AN_CEC_MIN[0] =0.0
$AN_CEC_MIN[1] =0.0
$AN_CEC_MIN[2] =0.0
$AN_CEC_MIN[3] =0.0

;Compensation ends at X1=2000


$AN_CEC_MAX[0] =2000.0
$AN_CEC_MAX[1] =2000.0
$AN_CEC_MAX[2] =2000.0
$AN_CEC_MAX[3] =2000.0

;Changes to the following table parameters take effect after


power ON.
;Values of f tables with index [t1] are multiplied by values in g tables
;with the number [t2]
;in accordance with the rule of calculation specified above
$AN_CEC_MULT_BY_TABLE[0]=5
$AN_CEC_MULT_BY_TABLE[1]=6
$AN_CEC_MULT_BY_TABLE[2]=7
$AN_CEC_MULT_BY_TABLE[3]=8

;Define the g table values for g_i(y):


;Function values g_1(x) for table with index [4]
$AN_CEC[4,0] =1.0
$AN_CEC[4,1] =0.0
$AN_CEC[4,2] =0.0
$AN_CEC[4,3] =0.0

;Function values g_2(x) for table with index [5]


$AN_CEC[5,0] =0.0
$AN_CEC[5,1] =1.0
$AN_CEC[5,2] =0.0
$AN_CEC[5,3] =0.0

;Function values g_3(x) for table with index [6]


$AN_CEC[6,0] =0.0
$AN_CEC[6,1] =0.0
$AN_CEC[6,2] =1.0
$AN_CEC[6,3] =0.0

;Function values g_4(x) for table with index [7]


$AN_CEC[7,0] =0.0
$AN_CEC[7,1] =0.0
$AN_CEC[7.2] =0.0
$AN_CEC[7.3] =1.0

;Enable evaluation of g tables with compensation values


$SN_CEC_TABLE_ENABLE[4] =TRUE
$SN_CEC_TABLE_ENABLE[5] =TRUE
$SN_CEC_TABLE_ENABLE[6] =TRUE
$SN_CEC_TABLE_ENABLE[7] =TRUE

Copyright © Siemens AG, 2005.


2/K3/2-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.3 Interpolatory compensation

;Define weighting factor for g tables


$SN_CEC_TABLE_WEIGHT[4] =1.0
$SN_CEC_TABLE_WEIGHT[5] =1.0
$SN_CEC_TABLE_WEIGHT[6] =1.0
$SN_CEC_TABLE_WEIGHT[7] =1.0

;Changes to the following table parameters take effect after power ON.
;Define basic axis Y1
$AN_CEC_INPUT_AXIS[4] =(Y1)
$AN_CEC_INPUT_AXIS[5] =(Y1)
$AN_CEC_INPUT_AXIS[6] =(Y1)
$AN_CEC_INPUT_AXIS[7] =(Y1)

;Define compensation axis Z1


$AN_CEC_OUTPUT_AXIS[4] =(Z1)
$AN_CEC_OUTPUT_AXIS[5] =(Z1)
$AN_CEC_OUTPUT_AXIS[6] =(Z1)
$AN_CEC_OUTPUT_AXIS[7] =(Z1)

;Define distance between interpolation points for compensat. values in g tables


$AN_CEC_STEP[4] =300.0
$AN_CEC_STEP[5] =300.0
$AN_CEC_STEP[6] =300.0
$AN_CEC_STEP[7] =300.0

;Compensation starts at Y1=0


$AN_CEC_MIN[4] =0.0
$AN_CEC_MIN[5] =0.0
$AN_CEC_MIN[6] =0.0
$AN_CEC_MIN[7] =0.0

;Compensation ends at Y1=900


$AN_CEC_MAX[4] =900.0
$AN_CEC_MAX[5] =900.0
$AN_CEC_MAX[6] =900.0
$AN_CEC_MAX[7] =900.0

$MA_CEC_ENABLE[Z1] =TRUE ; Reactivate compensation


NEWCONF

;Execute a program test to check effectiveness of compensation.


G01 F1000 X0 X0 Z0 G90
R1=0 R2=0
LOOP_Y:
LOOP_X:
STOPRE
X=R1 Y=R2
M0 ; Wait to check the CEC value
R1=R1+500
IF R1 <=2000 GOTOB LOOP_X
R1=0
R2=R2+300
IF R2<=900 GOTOB LOOP_Y

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-35
Compensations (K3) 06.05
2.3 Interpolatory compensation

Note
You can read the compensation value under variable “Sag + temperature
compensation” on the MMC. To do so, select soft key “Diagnosis” followed by
softkey “Service axis”. The currently effective compensation value is displayed
next to the “Sag + temperature compensation” variable.

;The power ON machine data are set to prepare the table configuration
;cec.md:
;Set option data for start-up

;Define the number of interpolation points in the compensation tables


;Machine data is memory-configuring
$MN_MM_CEC_MAX_POINTS[0]=5
$MN_MM_CEC_MAX_POINTS[1]=5
$MN_MM_CEC_MAX_POINTS[2]=5
$MN_MM_CEC_MAX_POINTS[3]=5
$MN_MM_CEC_MAX_POINTS[4]=4
$MN_MM_CEC_MAX_POINTS[5]=4
$MN_MM_CEC_MAX_POINTS[6]=4
$MN_MM_CEC_MAX_POINTS[7]=4

$MA_CEC_MAX_SUM[AX3]=10.0 ; Define the max. total compensation


value
$MA_CEC_MAX_VELO[AX3]=100.0 ; Limit the max. changes to the total
compensation value
M17

2.3.4 Special features of interpolatory compensation

Measurement The “Measurement” function supplies the compensated actual positions (ideal
machine) required by the machine operator or programmer.

TEACH IN The “TEACH IN” function also uses compensated position values to determine
the actual positions to be stored.

Software limit The ideal position values (i.e. the position actual values corrected by the MSEC
switch and backlash compensation functions) are also monitored by the software limit
switches.

Position display The position actual-value display in the machine coordinate system shows the
ideal (programmed) actual position value of the axis (ideal machine).
In the axis/spindle service display (operating area Diagnosis) the positional
value determined by the measuring system plus the sum of the backlash com-
pensation and leadscrew error compensation is displayed (= actual position
value measuring system 1/2).

Copyright © Siemens AG, 2005.


2/K3/2-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
04.00
06.01
06.05 Compensations (K3)
2.3 Interpolatory compensation

Compensation The following compensation values are also output in the “Axes” service display
value display (Diagnosis operating area):

Axes service display Meaning


Absolute compensation value Display value corresponds to the total compensation
measuring system 1 or 2 value calculated from “MSEC” and “Backlash
compensation” for the current actual position of the axis
(measuring system 1 or 2).
Compensation value Display value is the sum of the compensation values
beam sag/temperature from “beam sag compensation” and “temperature
compensation” for the current actual position of the axis.

References: /FB/, D1, “Diagnostics Tools”

Reference point If the reference point for the base axis is lost (IS: “Referenced/synchronized 1 or
loss 2” DB31, ... DBX60.4 or 60.5 = ‘0’), the MSEC and sag compensation functions
are deactivated in the affected axes. When the reference point is reached these
compensations are automatically switched on again.

Access protection Currently there is no protection against access to the compensation tables.

Setting servo As a result of the compensation relationship, a traversing movement by the


enables base axis may also cause the compensation axis to move, making it necessary
for controller enable signals to be set for these axes (PLC user program). Other-
wise the compensation only has a limited effect.

Output of travel The traversing signals in the compensation axis are output every time the com-
signals pensation function is switched on/off and every time the number of active com-
pensation tables changes.
Any change in the compensation value caused by the base axis motion does
not result in output of traversing signals in the compensation axis.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-37
Compensations (K3) 06.05
2.4 Dynamic feedforward control (following error compensation)

2.4 Dynamic feedforward control (following error


compensation)

2.4.1 General

Axial following The axial following error can be reduced almost to zero with the help of the
errors feedforward control. This feedforward control is therefore also called “following
error compensation”.
The following error causes undesired velocity-dependent contour errors espe-
cially during acceleration at contour curves, e.g. arcs and corners.

Feedforward The following feedforward control methods can be used to implement “following
control methods error compensation”:

S Speed feedforward control (velocity dependent)


linked to SINUMERIK 840D (part of the Basic Version for
SINUMERIK 840D)

S Torque feedforward control (acceleration dependent)


linked to SIMODRIVE 611 digital (option for SINUMERIK 840D)

Note
The torque type of feedforward control is not supported by the SIMODRIVE 611
universal drive with the SINUMERIK 840Di or SINUMERIK 840D with
PROFIBUS DP.

Activation MD 32620: FFW_MODE must first be set to select the desired feedforward con-
trol mode.
0 = No feedforward control
1 = Speed feedforward control (default setting)
2 = Torque feedforward control (only possible for SINUMERIK 840D in con-
junction with drives supporting this function, e.g. SIMODRIVE 611 digital)
The option must be enabled before selecting torque feedforward control.
3= Speed feedforward control with Tt balancing for SW 5.1 and higher
4= Torque feedforward control (only possible with SINUMERIK 840D)
with Tt balancing for SW 5.1 and higher
The option must be enabled before selecting torque feedforward control.

Setting the type of MD 32630: FFW_ACTIVATION_MODE defines for each axis whether the feed-
feedforward forward control is to be selected according to the status of MD 32620:
control FFW_MODE or whether it can also be activated from the part program. The
feedforward control type is selected from MD 32620: FFW_MODE if
MD 32630: FFW_ACTIVATION_MODE = 0.

Copyright © Siemens AG, 2005.


2/K3/2-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
05.97
12.01
06.05 Compensations (K3)
2.4 Dynamic feedforward control (following error compensation)

The feedforward control type can be selected within the part program if
MD 32630: FFW_ACTIVATION_MODE = 1.

Upgrading 840Di When upgrading the SINUMERIK 840Di to software version SW 6.3 or higher,
to SW 6.3 the start-up settings must be reconfigured.

Important
! If the feedforward control variant MD 32620: FFW_MODE = 3 has already been
used on an 840Di, the startup setting in MD 32810:
EQUIV_SPEEDCTRL_TIME must be reconfigured on a software upgrade to
version 6.3, because Ti and To are set automatically. These settings must be
corrected manually in MD 32810: EQUIV_SPEEDCTRL_TIME.

Activation/ The feedforward control can also be activated and deactivated by means of the
deactivation in following high-level language elements in the part program:
part program FFWON Feedforward control ON
FFWOF Feedforward control OFF
The default setting (i.e. M30 even after Reset) is entered in channel-specific
MD20150: GCODE_RESET_VALUES (initial setting of G groups).
FFWON and FFWOF are used to activate and deactivate respectively the feed-
forward control of all axes/spindles in the channel for which MD 32630:
FFW_ACTIVATION_MODE = 1 is set (as well as MD 32620: FFW_MODE = 1
or 2).
MD 32630: FFW_ACTIVATION_MODE should therefore have identical
settings for axes that interpolate with each other.
The feedforward control should only be switched on or off while the axis/spindle
is stationary to prevent jerk. This is the responsibility of the programmer.

Conditions The following points should be noted before the feedforward control is applied:

S Rigid machine behavior


S Precise knowledge about the machine dynamic response
S No sudden changes in the position and speed setpoints

Optimization of The feedforward control is set on an axis/spindle-specific basis. First of all, the
control loop current control loop, speed control loop and position control loop must be set to
an optimum for the axis/spindle.
References: /IAD/, SINUMERIK 840D Installation & Start-Up Guide

Parameter The feedforward control parameters must then be assigned to the relevant axis/
assignments spindle and then entered in the machine data.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-39
Compensations (K3) 06.05
2.4 Dynamic feedforward control (following error compensation)

2.4.2 Speed feedforward control

In the case of speed feedforward control, a velocity setpoint is also applied di-
rectly to the input of the speed controller (see figure below). This additional set-
point can be weighted by a factor that must equal approximately 1 as standard.
In order to achieve a correctly set speed feedforward control, the equivalent
time constant of the speed control loop must be determined exactly and entered
as a machine data.

NCK SIMODRIVE 611D or


SIMODRIVE 611
Analog System
MD 32620: FFW_MODE = 1

+
Setpoint Feed- Posit.
forward Speed
(reference control. controller
control –
value)

Actual position value

MD 32610: VELO_FFW_WEIGHT
MD 32810: EQUIV_SPEEDCTRL_TIME

Fig. 3-7 Speed feedforward control

Parameters
The following axis-specific parameters must be defined for the speed feedfor-
ward control during installation:

S MD 32610: VELO_FFW_WEIGHT
Feedforward control factor

S MD 32810: EQUIV_SPEEDCTRL_TIME
Equivalent time constant of the closed speed control loop.

Parameter for MD 32810: EQUIV_SPEEDCTRL_TIME


speed feed- Equivalent time constant of the closed speed control loop.
forward control The equivalent time constant of the closed speed control loop is determined by
measuring the step response of the speed control loop. With the 611D, the set-
tling process can be displayed using the installation tools.
References: /IAF/, “Installation and Start-Up Guide”
/IAD/, “Installation and Start-Up Guide”
The equivalent time constant of the speed control loop can also be generated
from the position control cycle (=basic system cycle x factor for position control
cycle) plus the speed setpoint filter (drive machine data 1500 ... 1521).

Copyright © Siemens AG, 2005.


2/K3/2-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.4 Dynamic feedforward control (following error compensation)

MD 32610: VELO_FFW_WEIGHT
Feedforward control factor for speed feedforward control
If the control loop for axis/spindle is optimally set and the equivalent time
constant has been determined exactly, the feedforward control factor will be
approximately 1. Therefore the initial value to be entered in the machine data is
1 (= standard default setting).
With this value the following error will be reduced to nearly zero (i.e. control
deviation is 0) when speed is constant. This should be checked by making posi-
tioning movements based on the actual “control deviation” shown on the service
display.
References: /FB/, D1, “Diagnostics Tools”
Fine adjustment of MD 32810
By making fine adjustments to the values set in MD 32610:
VELO_FFW_WEIGHT and MD 32810: EQUIV_SPEEDCTRL_TIME, it is pos-
sible to set the desired response for the relevant axis/spindle.
This is done by traversing the axis/spindle at a constant velocity and checking
the affect of the changes made in the machine data in the service display Con-
trol deviation. The adjustment criterion for the speed feedforward control is ’con-
trol deviation’ = 0.
Case 1: When the axis is traversed in the positive direction the
’control deviation’ displays a positive value.
 The equivalent time constant of the speed control loop or the
feedforward factor is too small
Case 2: When the axis is traversed in the positive direction the
’control deviation’ displays a negative value.
 The equivalent time constant of the speed control loop or the
feedforward factor is too large
A small acceleration and a large feedrate should be chosen so that the values
can be easily read on the service display. This produces very long acceleration
phases from which it is easy to read off the control deviation.
In SW 5 and higher, you can optimize the position setpoint with a second bal-
ancing filter.
References: /FB/, G2, “Velocities, Setpoint/Actual Value Systems,
“Optimizing the control”

Examples Example with X axis:


MD 32300: MAX_AX_ACCEL = 0.1 ; m/s2
MD 32000: MAX_AX_VELO = 20000.0 ; mm/min
; Part program for setting the equivalent time constant
G1 F20000
FFWON
LOOP:
X1000
X0
GOTOB LOOP
M30
Example for active speed feedforward control of axes 1, 2 and 3.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-41
Compensations (K3) 06.05
2.4 Dynamic feedforward control (following error compensation)

Equivalent time constant of the speed control loop


(MD 32810: EQUIV_SPEEDCTRL_TIME) for

S Axis 1: 2 msec

S Axis 2: 4 msec (dynamically the slowest axis)

S Axis 3: 1 msec
The values for the time constant of the dynamic response adaptation
(MD32910: DYN_MATCH_TIME) are then as follows for:

S Axis 1: 2 msec

S Axis 2: 0 msec

S Axis 3: 3 msec
References: /FB/, G2, “Velocities, Setpoint/Actual Value Systems,
Closed-Loop Control”

Lead time for the With machine data MD 10082 and MD 10083, the transfer of the speed setpoint
speed setpoint to the drive is adjustable.

Note
It is only possible to fix the lead time for output of speed setpoints with the
digital 611D drives.

MD 10082: CTRLOUT_LEAD_TIME. The larger the value entered, the sooner


the drive transfers the speed setpoints.
The following meanings apply:

S 0 %: Setpoints are transferred at the beginning of the next position


control cycle

S 50 %: Setpoints are already transferred after execution of half of the


position control cycle
A reasonable lead time can only be determined by measuring the maximum
position control calculating time. In the machine data 10083:
CTRLOUT_LEAD_TIME_MAX suggests a value measured by the control. As
this is a net value, it is advisable for the user to provide for a safety allowance
of, for example, 5%.

Note
If lead times that are input are too high, this can cause output of drive alarm
300506.

The input value is rounded to the next lower speed controller pulse rate in the
drive. If the speed controller pulse rates of the drives are different, changing the
value will not necessarily lead to the same degree of controller improvement for
all configured drives.

Copyright © Siemens AG, 2005.


2/K3/2-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.4 Dynamic feedforward control (following error compensation)

2.4.3 Torque feedforward control (not 840Di)

In the case of torque feedforward control, an additional current setpoint propor-


tional to the torque is applied directly to the current controller input (see figure
below). This value is formed using the acceleration and moment of inertia.
In order to achieve a correctly set torque feedforward control, the exact equiva-
lent time constant must be determined and entered in the machine data.
Because of the direct current setpoint injection, torque feedforward control is
only possible with digital drives (SINUMERIK 840D).

NCK SIMODRIVE 611D

MD 32620: FFW_MODE = 2

Setpoint Feed + +
Posit. Speed Power
forward control.
(reference control controller control.
value) –

Actual position value

MD 32650: AX_INERTIA
MD 32800: EQUIV_CURRCTRL_TIME

Fig. 3-8 Torque feedforward control

Application
Torque feedforward control is required to achieve high contour accuracy where
the demands on the dynamics are great. If set correctly, the following error can
almost be completely compensated even during high acceleration.
Parameters
The following axis-specific parameters must be defined during installation for
torque feedforward control:

S MD 32650: AX_INERTIA
Moment of inertia of the axis for torque feedforward control (from the point of
view of the drive)

S MD 32800: EQUIV_CURRCTRL_TIME
Equivalent time constant of current control loop

S SIMODRIVE 611D-MD 1004: CTRL_CONFIG


Configuration structure
Set bit 0 = “1” (torque feedforward control active)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-43
Compensations (K3) 06.05
2.4 Dynamic feedforward control (following error compensation)

Parameters for (available only on SINUMERIK 840D)


torque feedforward
SIMODRIVE 611D MD 1004: CTRL_CONFIG Configuration structure
control
The torque feedforward control is activated in the SIMODRIVE 611D with bit
0 = 1.
MD 32800: EQUIV_CURRCTRL_TIME
Equivalent time constant of closed current control loop
The equivalent time constant of the closed current control loop is determined by
measuring the step response of the current control loop.
With the SIMODRIVE 611D, the settling process can be displayed using the
installation tool.
In addition, the current setpoint of the 1st drive of each module on the
1st DA converter of the module is output so that it can also be observed with an
oscilloscope.
References: /IAD/, “Installation and StartUp Guide”
The equivalent time constant must be determined as exactly as possible.
MD 32650: AX_INERTIA
Total moment of inertia of the axis
The total moment of inertia (moment of inertia of drive + load referred to the mo-
tor shaft) of the axis must be determined and entered in the MD for torque feed-
forward control.
1 to 2 times the SIMODRIVE 611D-MD 1117:
MOTOR_INERTIA (motor moment of inertia) is the recommended initial value
setting for MD 32650: AX_INERTIA.
Fine adjustment
By making fine adjustments to the values set in MD 32800:
EQUIV_CURRCTRL_TIME and MD 32650: AX_INERTIA it is possible to set the
desired response for the relevant axis/spindle.
Because acceleration is very fast the service display cannot be used to finely
adjust the parameters. In the case of the SIMODRIVE 611D, for example,
changes made to the machine data should be checked by recording the follo-
wing error from an analog setpoint output (this can only be done with the instal-
lation tool).
It is important to observe the following error against constant travel even when
the axis/spindle is accelerating.
The adjustment criterion for torque feedforward control is:
Following error  0
Case 1: When the axis is traversed in the positive direction the
following error shows a positive value.
 The values entered for the equivalent time constant of the
current control loop or for the moment of inertia of the axis
are too small
Case 2: When the axis is traversed in the positive direction the
following error shows a negative value.
 The values entered for the equivalent time constant of the
current control loop or for the moment of inertia of the axis
are too large

Copyright © Siemens AG, 2005.


2/K3/2-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.4 Dynamic feedforward control (following error compensation)

Setting for The feedforward control parameters must be set optimally for each axis even in
interpolating axes the case of interpolating axes. The axes can have different feedforward control
settings.

Check contour The two equivalent time constants (MD 32810: EQUIV_SPEEDCTRL_TIME
monitoring and MD 32800: EQUIV_CURRCTRL_TIME) influence the contour monitoring
which should therefore subsequently be checked.
References: /FB/, A3, “Axis Monitoring Functions, Protection Zones”

Effect on servo When the feedforward control is set correctly, the response to setpoint changes
gain factor in the controlled system under speed feedforward control is as dynamic as that
of the speed control loop or, under torque feedforward control, as that of the
current control loop, i.e. the servo gain factor set in MD 32200:
POS_CTRLGAIN has very little influence on the response to setpoint changes
(e.g. corner errors, overshoots, circle/radius errors).
On the other hand, feedforward control does not affect the disturbance charac-
teristic (synchronism). In this case, the factor set in MD 32200:
POS_CTRLGAIN is the active factor.

Service display When a feedforward control is active, the servo gain of the axis (corresponds to
“Servo gain servo gain factor applied to response to setpoint changes) shown in the Service
factor” display is very high.

Dynamic response For axes that interpolate with one another, but with different axial control loop
adaptation response times, dynamic response adaptation can be used to achieve identical
time responses of all axes to ensure optimum contour accuracy without loss of
control quality.
When a feedforward control is active, the difference between the equivalent
time constants of the “slowest” speed or current control loop for the relevant
axis must be entered as the time constant of the dynamic response adaptation
(MD 32910: DYN_MATCH_TIME).
In SW 5 and higher, you can optimize the position setpoint with a second bal-
ancing filter.
References: /FB/, G2, “Velocities, Setpoint/Actual Value Systems,
Optimizing the control”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-45
Compensations (K3) 06.05
2.5 Friction compensation (quadrant error compensation)

2.5 Friction compensation (quadrant error compensation)

2.5.1 General

Function Friction occurs predominantly in the gearing and guide ways. Static friction is
especially noticeable in the machine axes. Because it takes a greater force to
initiate a movement (breakaway) than to continue it, a greater following error
occurs at the beginning of a movement.
The same phenomenon occurs on a change of direction where static friction
causes a jump in frictional force. If, for example, one axis is accelerated from a
negative to a positive velocity, it sticks for a short time as the velocity passes
through zero because of the changing friction conditions. With interpolating
axes, changing friction conditions can cause contour errors.

Quadrant errors This behavior is particularly apparent on circular contours on which one axis is
moving at maximum path velocity and the other is stationary at quadrant transi-
tions. With the aid of friction compensation these so-called “quadrant errors” can
be almost completely eliminated.

Principle Measurements on machines have shown that contour errors caused by static
friction can be effectively compensated by the injection of an additional setpoint
pulse with the correct sign and amplitude.

Friction One of two friction compensation methods can be selected on the


compensation SINUMERIK 840D (MD 32490: FRICT_COMP_MODE “Type of friction
types compensation”):

S Conventional friction compensation (MD 32490: FRICT_COMP_MODE = 1)


With this type, the intensity of the compensation pulse can be set according to
the characteristic as a function of the acceleration. This characteristic must be
determined and parameterized during start-up using the circularity test. The
procedure for this is relatively complicated and requires some experience.
Conventional friction compensation can also be used with SINUMERIK FM-NC.

S Quadrant error compensation with neural networks


(option on SINUMERIK 840D) (MD 32490: FRICT_COMP_MODE = 2)
To simplify start-up, the compensation characteristic no longer has to be set
manually by the start-up engineer but is determined automatically during a
training phase and then stored in the non-volatile user memory.
The neural network can reproduce a compensation curve of much better quality
and precision.

Copyright © Siemens AG, 2005.


2/K3/2-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.5 Friction compensation (quadrant error compensation)

The function also allows simple automatic re-optimization directly at the


machine.

Circularity test The friction compensation function (both conventional and neural friction
compensation) can be started up most easily by means of a circularity test. This
is done by following a circular contour, measuring the actual position and
representing the deviations from the programmed radius (especially at the
quadrant transition points) graphically. The measurements are recorded using a
“Trace” that is stored in the passive file system.

2.5.2 Conventional friction compensation

Type of friction Conventional friction compensation is selected by entering the value 1 in MD


compensation 32490: FRICT_COMP_MODE (friction compensation type).

Amplitude In many cases, the injected amplitude of the friction compensation value does
adaptation not remain constant over the whole acceleration range. For example, for opti-
mum compensation with high accelerations, a smaller compensation value
must be injected than for smaller accelerations. For this reason, friction com-
pensation with adapted injection amplitude can be activated in cases where
high accuracy is required (see figure below). The function is activated axis-spe-
cifically in MD 32510:
FRICT_COMP_ADAPT_ ENABLE = 1 (adaptation for friction compensation
active).

Max. amplitude MD 32520: FRICT_COMP_CONST_MAX [n]


Dn max.

Min. amplitude
MD 32530:
FRICT_COMP_CONST_MIN[n]
Dn min

B1 B2 B3 B4 Acceleration
a1 a2 a3

MD 32570: FRICT_COMP_CONST_ACCEL3[n]
MD 32560: FRICT_COMP_CONST_ACCEL2[n]

MD 32550: FRICT_COMP_CONST_ACCEL1[n]

Fig. 3-9 Typical curve for friction compensation with amplitude adaptation

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-47
Compensations (K3) 06.05
2.5 Friction compensation (quadrant error compensation)

The adaptation characteristic is divided into four ranges (a different injection


amplitude Dn is applied in each range):
B1: for a < a1 Dn = Dnmax * a/ a1

B2: for a1  a  a2 Dn = Dnmax


B3: for a2 < a < a3 Dn = Dnmax * (1 – (a – a2)/ (a3 – a2))

B4: for a  a3 Dn = Dnmin

Characteristic The parameters of the adaptation characteristic in the figure above must be
parameters entered as machine data for specific axes.
Dn = Injection amplitude of the friction compensation value
Dnmax = Maximum friction compensation value
MD 32520: FRICT_COMP_CONST_MAX [n]
Dnmin = Minimum friction compensation value
MD 32530: FRICT_COMP_CONST_MIN [n]
a1 = Adaptation acceleration value 1 for friction compensation
MD 32550: FRICT_COMP_ACCEL1 [n]
a2 = Adaptation acceleration value 2 for friction compensation
MD 32560: FRICT_COMP_ACCEL2 [n]
a3 = Adaptation acceleration value 3 for friction compensation
MD 32570: FRICT_COMP_ACCEL3 [n]

Note about shape In special cases, the calculated characteristic may deviate from the typical
of characteristic shape illustrated in the figure above.
In some cases, the value for Dnmin (MD 32530: FRICT_COMP_CONST_MIN)
may even be greater than Dnmax (MD 32520: FRICT_COMP_CONST_MAX).

2.5.3 Start-up of conventional friction compensation

Circularity test The friction compensation function can be started up most easily by means of a
circularity test. Here, deviations from the programmed radius (especially at the
quadrant transitions) can be measured and displayed while traversing a circular
contour.

Step-by-step The conventional friction compensation function must first be selected.


start-up (MD 32490: FRICT_COMP_MODE=1).
The friction compensation value mainly depends on the machine
configuration. Installation is performed in two stages.

S Stage 1: Calculation of the compensation values without adaptation


S Stage 2: Calculation of the adaptation characteristic (if the friction com-
pensation is dependent on the acceleration and the results of stage 1 are
not satisfactory).

Copyright © Siemens AG, 2005.


2/K3/2-48 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.5 Friction compensation (quadrant error compensation)

Installation stage 1: Friction compensation without


adaptation

1. Circularity test A circularity test without friction compensation


without friction (MD 32500: FRICT_COMP_ENABLE = 0) must be performed first.
compensation The circularity test procedure is described in Section 2.7.
A typical characteristic of quadrant transitions without friction compensation is
shown in the figure below.

Counter 2

II I

Counter 1

Quadrant transition

III IV

Fig. 3-10 Uncompensated radius deviation at quadrant transitions

2. Enabling the After this, the friction compensation must be activated for the axis/spindle in
friction question.
compensation Activate friction compensation
 MD 32500: FRICT_COMP_ENABLE[n] = 1

3. Deactivate In order to start up friction compensation without adaptation, the adaptation


adaptation must be deactivated.
Deactivate adaptation
 MD 32510: FRICT_COMP_ADAPT_ENABLE[n] = 0

4. Determine Friction compensation without adaptation is defined by the following parame-


compensation ters:
parameters 1. MD 32520: FRICT_COMP_CONST_MAX [n] friction compensation value
(amplitude) in [mm/min]
2. MD 32540: FRICT_COMP_CONST_TIME [n] friction compensation time
constant in [s]

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-49
Compensations (K3) 06.05
2.5 Friction compensation (quadrant error compensation)

These two parameters are changed until the circularity test produces minimum
or no deviations from the programmed radius at the quadrant transitions (see
the next four figures). The tests must be performed with different radii and veloc-
ities (typical values for the application of the machine).

Start value A relatively low injection amplitude plus a time constant of a few position control-
ler cycles should be entered as the start value when measuring commences.
Example:
MD 32520: FRICT_COMP_CONST_MAX[n] = 10 (mm/min)
MD 32540: FRICT_ COMP_TIME [n] = 0.008 (8msec)
The effect of changing the parameters must be checked using the measured
and plotted circles.

Averaging If it is not possible to determine a common compensation time constant for the
varying radii and velocities, then the average of the calculated time constants
must be worked out.

Good friction When the friction compensation function is well set, quadrant transitions are no
compensation longer noticeable (see figure below).
setting

Counter 2

IV I

Counter 1

III II

Fig. 3-11 Quadrant transitions with correctly set friction compensation

Copyright © Siemens AG, 2005.


2/K3/2-50 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.5 Friction compensation (quadrant error compensation)

Amplitude too low When the injection amplitude setting is too low, radius deviations from the pro-
grammed radius are compensated inadequately at quadrant transitions during
circularity testing (see figure below).

Counter 2

II I

Counter 1

III
IV

Fig. 3-12 Amplitude too low

Amplitude too When the injection amplitude setting is too high, radius deviations at quadrant
high transitions are manifestly overcompensated at quadrant transitions (see figure
below).

Counter 2

II I

Counter 1

III IV

Fig. 3-13 Amplitude too high

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-51
Compensations (K3) 06.05
2.5 Friction compensation (quadrant error compensation)

Time constant When the compensation time constant settings are too low, radius deviations
too low are compensated briefly at quadrant transitions during circularity testing, but are
followed immediately again by greater radius deviations from the programmed
radius (see figure below).

Counter 2

II I

Counter 1

III IV

Fig. 3-14 Compensation time constant too small

Time constant When the compensation time constant settings are too high, radius deviations
too high are compensated at quadrant transitions during circularity testing (on condition
that the optimum injection amplitude has already been calculated), but the devi-
ation in the direction of the arc center increases significantly after quadrant tran-
sitions (see figure below).

Counter 2

II I

Counter 1

III IV

Fig. 3-15 Compensation time constant too large

Copyright © Siemens AG, 2005.


2/K3/2-52 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.5 Friction compensation (quadrant error compensation)

Adaptation If, with the time constant and the constant injection amplitude determined, a
yes/no? good result is achieved both in the circularity test and in positioning over the
whole working area (i.e. for all radii and velocities of relevance), curve adapta-
tion will not be necessary.
However, if the friction compensation turns out to be dependent on the accel-
eration, the adaptation characteristic must be calculated in second stage (see
stage 2: Friction compensation with adaptation).

Installation stage 2: Friction compensation with


adaptation

Application Whenever friction compensation depends on the acceleration and the required
results cannot be obtained with constant injection amplitude, adaptation must
be used.
In order to obtain optimum compensation over the whole of the working range of
the friction feedforward control where high demands are made on accuracy, the
acceleration dependency of the compensation value must be calculated. To
achieve this, the dependency must be measured at various points in the work-
ing range between acceleration zero and the maximum planned acceleration.
The adaptation characteristic derived from the measurement results is then en-
tered in the above machine data axis-specifically.

1. Determining the For different radii and velocities ...


adaptation
1. ... it is necessary to determine the required injection amplitudes,
characteristic
2. ... it is necessary to check the compensatory effect of the injection
amplitudes using the circularity test,
3. ... it is necessary to log the optimum amplitudes.
The adaptation characteristic (for example, see Fig. 3.9) is defined completely
by determining the parameters specified in Subsection 2.5.2. However, many
more measured values must be obtained for checking purposes. It must be en-
sured that there is a sufficiently large number of interpolation points for small
radii at high speed. The size of the curves must be obtained by plotting.

2. Determining During circular movement, the axial acceleration values are calculated using the
acceleration radius r and the traversed velocity v according to the formula
values a = v2/r .
Using the feedrate override switch it is easy to vary the velocity and therefore
axial acceleration value a.
Acceleration values a1, a2 and a3 for the adaptation characteristic must be en-
tered in MD 32550: FRICT_COMP_ACCEL1 to MD 32570: FRICT_COMP_AC-
CEL3 in compliance with the condition a1 < a2 < a3. If the curve is wrongly para-
meterized, the alarm 26001 “Parameterization error for friction compensation” is
output.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-53
Compensations (K3) 06.05
2.5 Friction compensation (quadrant error compensation)

Example of 1. Calculation of acceleration


characteristic The axial acceleration during the passage through zero of the speed
settings for a circular path is calculated using the formula a = v2/r.
With the radius r = 10 mm and a circular velocity of v = 1 m/min
(=16.7 mm/s) the acceleration is therefore a = 27.8 mm/s2.
2. Input of curve knee points
The following accelerations were calculated to be the curve knee points:
a1 = 1.1 mm/s2 ; a2 = 27. 8 mm/s2 ; a3 = 695 mm/s2
The following values are therefore entered in the machine data in this order:
MD 32550: FRICT_COMP_ACCEL1 [n] = 0.0011 [m/s2]
MD 32560: FRICT_COMP_ACCEL2 [n] = 0.0278 [m/s2]
MD 32570: FRICT_COMP_ACCEL3 [n] = 0.695 [m/s2]
For example, the following values were calculated for the injection amplitudes:
MD 32520: FRICT_COMP_CONST_MAX [n] = 30 [mm/min]
MD 32530: FRICT_COMP_CONST_MIN [n] = 10 [mm/min]

Note
If the results obtained at very low velocities are not satisfactory, then the
computational resolution for linear positions MD 10200: INT_INCR_ PER_MM
or for angular positions MD 10210: INT_INCR_PER_DEG must be increased.
See also MD 32580: FRICT_COMP_INC_FACTOR
(weighting factor of friction compensation value for short traversing
movements).

Copyright © Siemens AG, 2005.


2/K3/2-54 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

2.6 Neural quadrant error compensation

2.6.1 Fundamentals

Principle of QEC As explained in Section 2.5, the purpose of quadrant error compensation (QEC)
is to reduce contour errors occurring during reversal as the result of drift, back-
lash or torsion. Compensation is effected through prompt injection of an addi-
tional speed setpoint (see figure below).
In conventional QEC, the intensity of the compensation pulse can be set ac-
cording to a characteristic as a function of the acceleration. This characteristic
must be calculated and parameterized by a circularity test during start-up (see
Fig. 3.8). The procedure for this is relatively complicated and requires some
experience.

Dn

Setpoint Position Setpoint


(position) - controller (speed)

Actual value
(position)

Fig. 3-16 Injection of an additional speed setpoint pulse

Advantages of On the SINUMERIK 840D with Software Version 2 or higher, the characteristic
QEC with neural block that used to be manually parameterized can now be replaced by a neural
network network. This has the following advantages:

S Start-up has been simplified because the compensation characteristic no


longer needs to be set manually by the start-up engineer but is determined
automatically during a learning phase.

S The characteristic for a manually parameterized friction compensation is


approximated by a polygon with 4 straight lines (see Fig. 3.8). For improved
precision, the neural network can reproduce the real curve much better.
The resolution of the characteristic curve can be adapted to the precision
requirements and a directional quality of the compensation amplitude can be
considered.
In addition to the compensation amplitude, it is possible to adapt the decay
time to the acceleration in special cases.

S The system permits simple automatic re-optimization on site at any time.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-55
Compensations (K3) 06.05
2.6 Neural quadrant error compensation

Requirements for An essential requirement for implementing QEC with neural network is that the
neural QEC errors occurring on the workpiece at quadrant transitions are detected by the
measuring system. This is only possible either with a direct measuring system,
with an indirect measuring system with clear reactions of the load on the motor
(i.e. rigid mechanics, little backlash) or with suitable compensation. With indirect
measuring systems, any backlash that might occur must be compensated by
backlash compensation.

Learning/working QEC with neural network involves the following two phases:
phases
S Learning phase
During the learning phase, a certain pattern of behavior is memorized in the
neural network. The relation between the input and output signals is learnt.
The result is the learnt compensation characteristic that is stored in the
non-volatile user memory. Activation and deactivation
of the learning process is programmed in the NC parts program using
special high-level language commands.

S Working phase
During the working phase, additional speed setpoint pulses are injected in
accordance with the learnt characteristic. The stored characteristic does not
change during this phase.
The learning phase can be executed for several (up to 4) axes at the same
time. For further information about training the neural network, see
Subsection 2.6.3.
The learning and working phases and the resulting neural QEC are purely axial.
There is no mutual influence between the axes.

Saving On completion of the learning phase, the calculated compensation data


characteristic (characteristic values in user memory) including the network parameters (QEC
values system variables) must be saved in a file selected by the operator. As a
standard, these files are called “AXn_QEC.INI”.

Loading These saved and learned compensation data can be loaded back directly to the
characteristic user memory in the same way as part programs.
values When the parts program containing the tables is loaded, the compensation val-
ues are transferred to the NC user memory.
The characteristic values become effective only after compensation has been
enabled.
Characteristic values cannot be written when the compensation function is ac-
tive (MD 32500: FRICT_COMP_ENABLE must be set to 0 and activated).
With QEC: The QEC must be enabled (and activated) by setting MD 32500:
FRICT_COMP_ENABLE = 1 (QEC active).

Recommended As mentioned above, the neural network integrated in the control automatically
default setting for adapts the optimum compensation data during the learning phase.
start-up The axis involved must perform reversals with acceleration values constant sec-
tion by section. Before activation of the learning phase, the parameters of the
neural network (QEC system variables) must be pre-assigned in accordance
with the requirements.

Copyright © Siemens AG, 2005.


2/K3/2-56 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

In order to simplify start-up as much as possible, NC programs are provided as


reference examples.
As described in Subsection 2.6.4, the start-up engineer must first learn the char-
acteristic for the axes using these reference examples and the recommended
QEC parameter values and check the contour accuracy achieved using the
circularity test (see Section 2.7). If the results do not meet the requirements,
re-optimization must be performed changing the parameters appropriately (see
Subsections 2.6.2, 2.6.3 and 2.6.5) (i.e. relearning).

2.6.2 Parameterization of neural QEC

Machine data The basic configuring data for the neural QEC are stored as machine data.

S MD 32490: FRICT_COMP_MODE
Method of friction compensation (2 = neural QEC)

S MD 32500. FRICT_COMP_ENABLE
Friction compensation active

S MD 32580: FRICT_COMP_INC_FACTOR
Weighting factor for friction compensation value for short traversing blocks

S MD 38010: MM_QEC_MAX_POINTS
Maximum number of compensation values for QEC with neural networks
With these machine data, the neural QEC is activated as soon as the
memory space is reserved in the non-volatile RAM. The procedure and assign-
ment is described in Subsection 2.6.4 “Start-up” or in Chapter 4.
All other data are set using system variables.

QEC system The data for parameterizing the neural network are defined as system variables
variables that can be written and read by an NC program. The following system variables
are used for parameterization of the neural network:

S $AA_QEC_COARSE_STEPS “Coarse quantization of the characteristic”


This parameter defined the coarse quantization of the input signal and is
therefore the resolution of the characteristic. The larger the value that is se-
lected, the higher the memory requirement and the greater the length of time
required for the training phase. See the end of this section for more informa-
tion.
Value range: 1 to 1024; recommended value: 49

S $AA_QEC_FINE_STEPS “Fine quantization of the characteristic”

This parameter defines the fine quantization of the input signal and is there-
fore the resolution of the characteristic. The larger the value that is selected,
the higher the memory requirement.
Value range: 1 ... 16; recommended value: 8

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-57
Compensations (K3) 06.05
2.6 Neural quadrant error compensation

S $AA_QEC_DIRECTIONAL “Directionality”
This parameter defines whether the compensation is to be injected
directionally or not. If activated, a separate characteristic is determined and
stored for each acceleration direction. Because two characteristics are used,
double the memory space must be reserved in the non-volatile user
memory.
Value range: TRUE/FALSE; recommended value: FALSE

S $AA_QEC_LEARNING_RATE “Learning rate for the active learning”


With the learning rate it is possible to determine how quickly the optimum
characteristic is to be learnt in the active learning phase of the neural QEC.
This value is a weighting factor with which it is possible to define to what
extent the deviations affect the injection amplitude. With higher values
(>100%), the characteristic is learned more quickly but too high learning rate
values (weighting factors) can cause instability (two-step response).
A small learning rate is recommended for relearning processes during nor-
mal operation (<50%) otherwise the characteristic is changed on every little
disturbance when the speed passes through zero.

Value range: > 0%;  500%; recommended value: 50%

S $AA_QEC_ACCEL_1 / _2 / _3 “Acceleration limit values for the


characteristic areas 1 / 2 / 3”
The acceleration characteristic is divided into three areas. In each area
there is a different quantization of the acceleration steps. In the low accel-
eration range, an especially high resolution is required for the characteristic
in order to reproduce the widely varying compensation values there. For this
reason, the input signals are quantized more finely, the smaller the accelera-
tion is.
Recommended values for
– $AA_QEC_ACCEL_1 20 mm/sec2 (= 2% of $AA_QEC_ACCEL_3)
– $AA_QEC_ACCEL_2 600 mm/s2 (= 60% von
$AA_QEC_ACCEL_3)
– $AA_QEC_ACCEL_3 2
1000 mm/s (maximum acceleration
of working range)
The value of the parameter $AA_QEC_ACCEL_3 must be entered as ap-
propriate to the requirements; i.e. the neural network only works and learns
optimally in this range. If a higher acceleration is detected than the parame-
terized working area, the injection amplitude that was determined during the
defined maximum acceleration of the working range is used. At high accel-
erations, this injection value is relatively constant.
The recommended values must only be changed if the compensation is
insufficient in these acceleration ranges. For further information see Subsec-
tion 2.6.5.

S $AA_QEC_TIME_1 “Time constant for the neural QEC


(decay time)”
With this, the decay time of the compensation setpoint pulse is set if adapta-
tion of the decay time is not used.

Copyright © Siemens AG, 2005.


2/K3/2-58 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

The optimum decay time must be ascertained manually using the circularity
test at a working point in the mid acceleration range. The procedure is de-
tailed in the section dealing with friction compensation (Subsection 2.5.3)
(analogous to MD 32540: FRICT_COMP_TIME).
With the recommended value (15 ms), it is possible to achieve good results.

Value range:  0; recommended value: 0.015s


If the decay time adaptation is active, then $AA_QEC_TIME_1 determines
the filter time constant in the center of the operating range (i.e. with 0.5 *
$AA_QEC_ACCEL_3).

S $AA_QEC_TIME_2 “Compensation time constant for


adaptation of the decay time of the
correction value”
At a value of zero of less than or equal to $AA_QEC_TIME_1, no adaptation
is performed.
The decay time is usually constant over the entire working range. In rare
cases however, it can be advantageous to raise the decay time in the very
small acceleration range, or to lower it at high accelerations. For further in-
formation see Subsection 2.6.5.

Value range:  0; recommended value: 0.015s (identical to


$AA_QEC_TIME_1)

S $AA_QEC_MEAS_TIME_1 / _2 / _3
“Measurement duration for deter-
mining the error criterion in the
acceleration range 1 / 2 / 3”
The measuring time is started, as soon as the criterion for injection of the
compensation value is fulfilled (i.e. the set speed changes sign). The end of
the measuring item is defined by the set parameter values.
Different measuring times are required for each characteristic range.

Recommended values for


– $AA_QEC_MEAS_TIME_1: 0.090s
(= 6 *$AA_QEC_TIME_1)
– $AA_QEC_MEAS_TIME_2: 0.045s
(= 3 * $AA_QEC_TIME_1)
– $AA_QEC_MEAS_TIME_3: 0.030s
(= 2 * $AA_QEC_TIME_1)
The recommended values must only be changed if the compensation is
insufficient in these acceleration ranges or if $AA_QEC_TIME_1 is changed.
For further information see Subsection 2.6.5.

Transfer of The QEC system variables are stored in the non-volatile user memory
parameters after the NC program is started where they remain unchanged until the memory
is erased or reformatted or until a new learning or relearning process takes
place or until they are written by the NC program.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-59
Compensations (K3) 06.05
2.6 Neural quadrant error compensation

Before the learning cycle is called, all system variables must be assigned valid
values for the learning process. For example, this can be done in a subprogram.
After this NC program has run and a reset has been performed, the QEC data
are active.

Characteristic data The characteristic data determined during the learning process are
stored as system variables in the user memory reserved for this purpose.
Format: $AA_QEC[n] Range of n: 0 to 1024
These values write the learned characteristic in internal formats
and must therefore not be changed!

Quantization of The quantization, and thus the resolution, of the characteristic is defined via the
characteristic two quantities fine quantization ($AA_QEC_FINE_STEPS) and coarse quan-
tization ($AA_QEC_COARSE_STEPS). The finer the resolution, the higher the
memory requirement and the longer the duration of time required for the learn-
ing phase.
The number of memory locations required and the total number of quantization
intervals is calculated by the formula:
Number of memory locations = $AA_QEC_FINE_STEPS *
($AA_QEC_COARSE_STEPS+1)
Up to 1025 memory locations per axis can be reserved. In this way, a suffi-
ciently high resolution is achieved for high precision requirements.
The following 3 figures illustrate the meaning of the characteristic values for
coarse and fine quantization, and their effect on the teach-in period, as a func-
tion of the parameter “Detailed learning active y/n”. Three cases are distin-
guished for better understanding.
Case 1: Coarse quantization > 1; fine quantization = 1
(special case; usually the fine quantization is in the region of eight):
In this case, the interpolation points of the characteristic are determined
solely by coarse quantization (see figure below).

Compensation amplitude

Section A

Coarse quantization

Real
characteristic
curve

Set acceleration

Fig. 3-17 Coarse quantization of characteristic

Copyright © Siemens AG, 2005.


2/K3/2-60 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

Case 2: Coarse quantization > 1; fine quantization > 1; “Detailed learning” is


deactivated (this setting is the default);
In this case, discrete linear interpolation is used for fine quantization
between the interpolation points of the coarse quantization.
The learning duration is identical with 1 because learning only occurs at
the interpolation points of the coarse quantization.
The effect of fine quantization on a section of characteristic within a
coarse quantization process is shown in the figure below (see also
Section A in figure above).

Compensation amplitude
Section A

Real characteristic
curve

Coarse quantization

Fine quantization (= 4) and


“Detailed learning” = FALSE

Set acceleration

Fig. 3-18 Effect of fine quantization with “Detailed learning” inactive

Case 3: Coarse quantization > 1; fine quantization > 1; “Detailed learning” is


activated (its use is only recommended for very high precision require-
ments):
With “Detailed learning”, learning occurs both at the interpolation points
of the coarse quantization and of the fine quantization.
The learning duration is therefore much longer.
The figure below shows a severely fluctuating characteristic curve on
which the effect of selecting and deselecting the “Detailed learning”
function is clear.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-61
Compensations (K3) 06.05
2.6 Neural quadrant error compensation

Compensation amplitude

Coarse quantization

Fine quantization and


“Detailed learning” = FALSE

Fine quantization and


“Detailed learning” = TRUE

Real characteristic curve

Set acceleration

Fig. 3-19 Effect of fine quantization with “Detailed learning” active

Copyright © Siemens AG, 2005.


2/K3/2-62 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

2.6.3 Learning the neural network

Learning A certain type of response is impressed upon the neural network during the
process sequence learning phase. The relation between the input and output signals is learned.
The learning process is controlled entirely by NC programs and is divided into
the following areas:
1. Preset the QEC system variables for the learning process
2. Activate QEC system variables (by starting the NC program)
3. Parameterize the learning cycle
4. Start the learning cycle
The result is the learnt compensation characteristic that is stored in the
non-volatile user memory.
The results achieved must be checked using the circularity test (Section 2.7).

Reference NC In order to ease the task of the start-up engineer in starting up the QEC with
programs neural networks, NC programs containing specimen routines for learning
movements and assignments of QEC system variables (recommended values)
are available.
These are the following reference NC programs:

S QECLRNP.SPF Learning with POLY standards


(Option “POLY” necessary)

S QECLRNC.SPF Learning with circles

S QECDAT.MPF Reference NC program for assigning system


variables and for parameterization the learning cycle

S QECSTART.MPF Reference NC program that calls the learning cycle


These NC programs are contained on the diskette of the basic PLC program for
the SINUMERIK 840 D.
Implementing the learning process solely via NC programs has the following
advantages:

S Learning can be fully automatic without operator intervention.


This is advantageous for series start-ups if the optimum learning parameters
for a machine type have been found and only the characteristic for each
individual machine remains to determined or retrained.

S Learning can be executed for several axes (up to 4) simultaneously.


This reduces the learning phase for the machine considerably.

S The traverse movements can easily be adapted to special requirements.


S The start-up of the neural quadrant error compensation is also possible with
HMI Embedded
Exception: Direct circularity test on MMC is only possible with HMI
Advanced. The start-up tool should be used with HMI Embedded.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-63
Compensations (K3) 06.05
2.6 Neural quadrant error compensation

Learning motion The axis traversing motions that must be executed to learn a specific response
are generated by an NC program. Each learning motion of the sample learning
cycle comprises a group of NC blocks with parabolic movements (ensuring that
the axis traverses at the most constant possible setpoint speed after the zero
crossing; see figure below) in which the axes oscillate at constant acceleration
in each program section. The acceleration is decreased from group to group. In
the figure below, NC blocks 2 to 3, 5 to 6 and 8 to 9 each form a group; the
transitional movements to lower acceleration rates are programmed in blocks 1,
4, 7 and 10.

Note
So that the learning parameters act as preset, the feedrate override switch
must be set to 100% during the learning phase.

Distance Measuring time

Time

Set 1 2 3 4 5 6 7 8 9 10

Fig. 3-20 Typical traverse motion of an axis when learning the QEC characteristic

Assignment of Before a learning cycle is called, all QEC system variables must be set to the
system variables values required for the learning process. The values recommended in the
reference NC program must be checked and changed if necessary (see
Subsection 2.6.2).

Learning ON / OFF The actual learning process of the neural network is then activated in the
reference NC program. This is done using the following high-level language
command:
QECLRNON(axis name 1, ... 4) Learning ON (for specified axes)
Only during this phase are the characteristics changed.
After the learning motions of the required axes have been completed, the
learning process is deactivated for all axes. This is done with the high-level
language command:
QECLRNOF Deactivate learning (simultaneously for all axes)
After power-on reset, end of program (M02/M30) or operator panel front reset,
learning is also deactivated.

Copyright © Siemens AG, 2005.


2/K3/2-64 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

The current “Learning on / off” status is displayed in the service display “Axes”
with “QEC learning active” (1 = active; 0 = inactive).

Learning cycle call Once learning has been activated, the reference NC program calls the learning
cycle by means of the following input parameters:

S Number of axes to which learning is to apply (up to four).


Prerequisite: If more than one axis is to learn at the same time, all QEC
system variables of the axes involved must have the same
values. These values are monitored and an error
message is output if they are not equal.

S Names of the learning axes


S Initial number (same for all axes)
Value always 0 (setpoint branch)

S Learning mode (initial learning = 0; relearning = 1)

0: Initial learning active. All values of the network are preset to 0 before
learning.
1: Relearning active. Learning continues with the values already learnt in
the defined step width.

S Detailed learning active yes/no (TRUE/FALSE)


FALSE: “Detailed learning” is not active. The characteristic is therefore
learnt in the step width of the coarse quantization of the
acceleration.
TRUE: “Detailed learning” is active. The characteristic is therefore learnt
in the step width of the fine quantization of the acceleration, i.e.
with fine quantization of 10 steps per coarse step, determination
of the characteristic takes ten times longer. This parameter must
therefore only be used for extremely high precision requirements.

Note
If “Detailed learning” is selected, the number of learning passes can and must
be reduced in order to reduce the learning duration
(recommended range: between 1 and 5).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-65
Compensations (K3) 06.05
2.6 Neural quadrant error compensation

S Number of learning passes


Default value = 15; range > 0
The effect of this parameter depends on whether “Detailed learning active” is
set or not.
a) Detailed learning not active (= FALSE):
The number of test motions (back and forth) is defined for each
acceleration stage. The higher the number, the more accurate learning
is, but the longer learning takes.
With directional compensation ($AA_QEC_DIRECTION = TRUE), the
parameterized number of test movements for every direction is gener-
ated.
b) Detailed learning active (= TRUE):
In this way, the number of complete passes from maximum to minimum
acceleration and vice versa is activated with the fine step width.
In other words, with a value of 1, all acceleration steps are passed
through starting with the maximum value. For every acceleration stage,
two test movements are generated if there is no directional
compensation ($AA_QEC_DIRECTION = FALSE), otherwise four test
movements are performed per acceleration stage.
A reduction of the “Number of learning passes” can be made if data blocks
for the machine type already exist (series machines) and these are to be
used as a basis for further optimization.

S Section-by-section learning active yes/no (TRUE/FALSE)


“Section-by-section learning” in certain acceleration ranges is especially
interesting for “Detailed learning” e.g. in technologically important ranges of
the machine. By defining the ranges appropriately
it is possible to reduce the learning duration.
Default = FALSE

S Range boundaries for “Section-by-section learning” (minimum


acceleration, maximum acceleration); only relevant for “Section-by-section
learning active”.
Default value = 0; format: mm/s2

S Time taken for one test motion (to and fro)


Default value = 0.5; format: s (seconds)
(corresponds to a frequency of 2Hz)

Requirements In the learning phase, the neural QEC requires a speed feedforward control
(MD 32620: FFW_MODE=1; FFWON), but no jerk limitation (BRISK). The
feedforward control must therefore be correctly parameterized and optimized.
When the learning process is started a check is made to see whether the speed
feedforward control is activated. If not, the learning process is canceled and an
error message is generated.

Copyright © Siemens AG, 2005.


2/K3/2-66 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

2.6.4 Start-up of neural QEC

General This describes start-up of QEC with neural networks. As we have already
mentioned, the compensation characteristics during the learning phase are
determined automatically.
The axis involved must perform reversals with acceleration values constant sec-
tion by section. The QEC system variables for parameterization of the neural
network must also be preset to meet the requirements.
To simplify start-up as much as possible, NC programs are provided to serve as
reference examples (see Subsection 2.6.3).
In the learning process, a distinction is made between “initial learning” (espe-
cially for first start-up) and “relearning” (especially for re-optimization of charac-
teristics already learnt). The procedures of “initial learning” and “relearning” are
described below.
If the compensation characteristics for the machine are to be learnt for the first
time, we recommend use of the reference NC programs specified in Subsec-
tion 2.6.3.

“Initial learning” –> cycle parameters “Learning mode” = 0


“Initial learning”
1. a) Activate QEC with neural networks for the required axes:
sequence
MD 32490: FRICT_COMP_MODE = 2
Note: QEC with neural networks is an option!
b) Reserve memory space for the compensation points
MD 38010: MM_QEC_MAX_POINTS
If the required number is not yet known, a generous amount of memory
must be reserved initially (see also item 12).
c) Parameterize and optimize the speed feedforward control (required for
the learning phase)
d) Perform a hardware reset (because of the re-allocation of the
non-volatile user memory)
2. Activate the QEC system variables:
Adapt the reference NC program QECDAT.MPF for assigning the QEC sys-
tem variables for all axes concerned (if necessary use the recommended
values) and start the NC program. If error messages are output, correct the
values and restart the NC program.
3. Create the NC program that moves the machine axes to the required posi-
tions and parameterizes and calls the reference learning cycle
QECLRN.SPF (as in the example program QECSTART.MPF). The feedrate
override switch must be set to 100% of the learning phase so that the pa-
rameters can take effect in accordance with the defaults.
4. Activate the learning phase by starting this NC program.
The compensation characteristic is learnt for all the parameterized axes si-
multaneously. The learning duration depends on the specified learning pa-
rameters. If default values are used, it can take several minutes.
The status of the axes concerned can be observed in the service display
“axis” in the display “QEC learning active”.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-67
Compensations (K3) 06.05
2.6 Neural quadrant error compensation

5. Activation of the injection of the compensation values for the required axes:
MD 32500: FRICT_COMP_ENABLE = 1.
6. Parameterize the trace for the circularity test in the menu “Circularity test
measurement” (with HMI Advanced or start-up tool).
Parameter values for the reference NC program:
Radius[mm]:
Feedrate[mm/min].
After this, enable the measuring function with the vertical softkey “start”.
7. Start the NC program with the test motion (circle).
The position actual values are recorded during the circular movement and
stored in the passive file system. After termination of data recording, the
recorded contour is displayed as a diagram.
8. Check the quadrant transitions for the contour recorded.
9. Depending on the result, repeat items 2, 4, 7, 8 and 9 if necessary. It might
be necessary to change certain QEC system variables first (see also
Subsection 2.6.3).
10. The compensation characteristics must be saved as soon as the contour
precision meets the requirements (see Subsection 2.6.3).
11. If necessary, the memory area previously reserved for the compensation
values can be reduced to the memory actually required.
Caution: When the setting in MD 38010: MM_QEC_MAX_POINTS is
altered, the non-volatile user memory is automatically re-allocated on
system power-on. All the user data in the non-volatile user memory are lost.
These data must therefore be backed up first. After power-on of the control,
the backed up characteristics must be loaded again.

“Relearning” “Relearning” –> cycle parameter “Learning mode” = 1


sequence The “Relearning” function allows characteristics that have already been learned
to be re-optimized in a simple, automatic process. The values already in the
user memory are taken as the basis.
The reference NC programs adapted to the machine (e.g. from “initial learning”)
must be used in the learning phase for “relearning”. Generally, the previous
values of the QEC system variables can still be used. Before the learning cycle
is called, the parameter “learning mode” must be set to 1 (meaning “relearning”).
It might also be used to reduce the “number of training passes”.

Copyright © Siemens AG, 2005.


2/K3/2-68 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

Sequence of The sequence of operations involved in the Relearning process is described


operations for below.
“Relearning” 1. If characteristic values have not yet been stored in the user memory (RAM)
(e.g. start-up of a series machine), the pre-optimized data block must be
loaded (see Subsection 2.6.1).
2. Adapt the NC program that moves the machine axes to the required posi-
tions and parameterizes and calls the learning cycle. The parameters for the
learning cycle (e.g. QECLRN.SPF) might have to be changed for “relearn-
ing”.
– Set “Learn mode” = 1
– Reduce the “number of learning passes” if necessary (e.g. to 5)
– Activate “section-by-section learning” if necessary and define the
associated range boundaries
3. Activate the learning phase by starting this NC program.
The compensation characteristic is learnt for all the parameterized axes
simultaneously.
4. Parameterize the trace for the circularity test in the menu “Circularity test
measurement” (with HMI Advanced or start-up tool). After this, enable the
measuring function with the vertical softkey “start”.
5. Start the NC program with the test motion (circle).
The position actual values are recorded during the circular movement and
stored in the passive file system. After termination of data recording, the
recorded contour is displayed on the MMC.
6. Check the quadrant transitions for the contour recorded.
7. Depending on the result, repeat items 3, 4, 5 and 6 if necessary. It might be
necessary to change certain QEC system variables first (see also
Subsection 2.6.5).
8. The compensation characteristics must be saved as soon as the contour
precision meets requirements (see Subsection 2.6.1).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-69
Compensations (K3) 06.05
2.6 Neural quadrant error compensation

2.6.5 Further optimization and intervention options

Optimization In cases where the results of the circularity test do not meet the required accu-
options racy standards, the system can be further improved by selective changes to
QEC system variables. Several ways of optimizing the neural QEC are ex-
plained here.

Alteration of As described in previous sections, input variables are quantized by means of


coarse and the “Coarse quantization” and “Fine quantization” values.
fine quantization A high value for the fine quantization causes a “similar” output signal to be
obtained for adjacent intervals of the input signal, allowing, for example,
measuring errors which occur only at a particular acceleration rate to be
identified (see Fig. 3.16).
With a low fine quantization, highly fluctuating characteristics are reproduced
better.
For the neural friction compensation, it is necessary to make use of the largest
error tolerance by setting a high fine quantization ($AA_QEC_FINE_STEPS in
the region of 5 to 10).

Direction- Direction-dependent friction compensation must be used in cases where


dependent compensation is not applied equally on opposing quadrants when
compensation compensation values are being injected independently of direction (see figure
below).
The directional injection is activated via the system variable
$AA_QEC_DIRECTIONAL = TRUE.
Here, the following aspects must be observed:

S Since a characteristic is learned and stored for every direction of


acceleration, double the memory space is required in the non-volatile user
memory. MD 38010: MM_QEC_MAX_POINTS accordingly.
S The number of learning passes must be raised because only every second
passage occurs at the same location.
S If the characteristic resolution is the same, start-up takes longer.

Copyright © Siemens AG, 2005.


2/K3/2-70 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

y
Badly
compensated

Direction
Well of motion
compensated

Fig. 3-21 Example of directional friction compensation (circularity test)

Modification of The acceleration characteristic is subdivided into three ranges. In the low accel-
characteristic eration range, an especially high resolution is required for the characteristic in
ranges order to reproduce the widely varying compensation values there. Therefore,
the lower the acceleration rate, the finer the quantization of the input quantity
(see figure below).
In the high acceleration range, there are only small changes in the compensa-
tion values so that a small resolution is perfectly sufficient.
The percentage settings recommended in Subsection 2.6.2 for $AA_QEC_AC-
CEL_1 (2% of $AA_QEC_ACCEL_3) and for $AA_QEC_ACCEL_2 (60% of
$AA_QEC_ACCEL_3) are based on empirical values measured on machines
with a maximum acceleration rate (= operating range) of up to approx. 1 m/s2.
If the working range is significantly reduced, then the limit values for a1 and a2
must be set somewhat higher as a percentage of a3. However, $AA_QEC_AC-
CEL_1 must not exceed the range of approx. 5% of the maximum acceleration.
Useful boundaries for $AA_QEC_ACCEL_2 are approx. the values 40% to 75%
of the maximum acceleration.

Interval width

1 2 3 Acceleration
a1 a2 a3

Fig. 3-22 Interval width in acceleration ranges

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-71
Compensations (K3) 06.05
2.6 Neural quadrant error compensation

Adaptation of the In special cases, it is possible to adapt the decay time of the compensation set-
decay time point pulse in addition to the compensation amplitude.
If, for example, the circularity test reveals that in the low acceleration range (a1)
the quadrant transitions yield good compensation results but that radius devi-
ations occur again immediately after this, it is possible to achieve an improve-
ment by adapting the decay time.
The time constant without adaptation ($AA_QEC_TIME_1) is only valid in the
mid acceleration range (50%).
The adaptation of the decay time for the compensation setpoint impulse accord-
ing to the characteristic shown in the figure below is parameterized with system
variable $AA_QEC_TIME_2 (for acceleration = 0). The adaptation is formed by
these two points according to an e–x function (see figure below).
The adaptation is performed under the following condition:
$AA_QEC_TIME_2 > $AA_QEC_TIME_1

Decay time

$AA_QEC_TIME_2

f (Decay time)
$AA_QEC_TIME_1

Set acceleration
0 50% 100%

Fig. 3-23 Adaptation of the decay time

Alteration of During the learning phase for the neural network, the error measuring time
error measuring determines the time window within which contour errors are monitored after a
time zero-speed passage.
Experience has shown that the error measuring time to be used for average
acceleration rates (approx. 2 to 50 mm/s2) corresponds to three times the value
of the decay time ($AA_QEC_MEAS_TIME_2 = 3 * $AA_QEC_ TIME_1).
In the very low and high acceleration ranges, the error measuring time must be
adapted. This is done automatically according to the characteristic in the figure
below. The error measurement duration for small accelerations is set to six
times the value of the decay time ($AA_QEC_MEAS_TIME_1 = 6 * $AA_QEC_
TIME_1); double the decay time ($AA_QEC_MEAS_TIME_3 = 2 * $AA_QEC_
TIME_1) is taken as the error measurement time for larger accelerations.

Copyright © Siemens AG, 2005.


2/K3/2-72 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

Measurement time

tM1

$AA_QEC_MEAS_TIME_1

tM2
$AA_QEC_MEAS_TIME_2
tM3

$AA_QEC_MEAS_TIME_3
Acceleration
1 2 3
a1 a2 a3

Fig. 3-24 Dependency of error measuring time on acceleration rate

In special cases, it might be necessary to reparameterize the error measuring


times:

S Setting very extreme values for the compensation time constant of the QEC.
Experience has shown that error measuring times of less than 10 msec and
greater than 200 msec are not useful.

S Parameterization of the error measuring times with adaptation of the decay


time of the compensation value.
If the adaptation of the decay time of the compensation value is active (see
above), the following rule of thumb is applicable to the parameterization of
the error measuring time for acceleration range 1:
$AA_QEC_MEAS_TIME_1 = 3 * $AA_QEC_ TIME_2
Example:
Decay time ($AA_QEC_TIME_1) = 10 ms
Adaptation of the decay time ($AA_QEC_TIME_2) = 30 ms
Following the rule of thumb given above,
the error measuring time for acceleration range 1 is therefore:
$AA_QEC_MEAS_TIME_1 = 3 * 30 ms = 90 ms
Without adaptation of the decay time, it would only be
$AA_QEC_MEAS_TIME_1 = 6 * 10 ms = 60 ms.

Overcompensation Practical experience has shown that the optimum friction compensation value
with short calculated from the circularity test may result in overcompensation on the
traversing motions relevant axis if it executes very short axial positioning movements (e.g. on
infeeds in the mm range).
To improve accuracy in such cases too, it is possible to reduce the
compensation amplitude for short traversing motions.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-73
Compensations (K3) 06.05
2.6 Neural quadrant error compensation

This weighting factor programmed in MD 32580: FRICT_COMP_INC_FACTOR


automatically takes effect when friction compensation is activated (conventional
QEC or QEC with neural networks) acting on all positioning movements that are
made within an interpolation cycle of the control.
The input range is between 0 and 100% of the calculated compensation value.

Control of As described in previous sections, the duration of the learning process is


learning process dependent on several parameters. It is mainly dependent on the following
duration values:

S Coarse quantization ($AA_QEC_COARSE_STEPS)


S Measuring time for determining the error criterion
($AA_QEC_MEAS_TIME_1 up to $AA_QEC_MEAS_TIME_3)

S Number of learning passes


S Detailed learning active [yes/no]?
S Fine quantization ($AA_QEC_FINE_STEPS)
(only if “detailed learning = yes” is selected)

S Directional compensation active [yes/no]?


($AA_QEC_DIRECTIONAL)

S Duration of reversing movement


The setting “Detailed learning active = yes” causes a significant increase in the
time required for learning. It must therefore only be used where precision
requirements are high. It is necessary to check whether these requirements
only apply to certain acceleration ranges. If so, detailed learning only needs to
be performed section by section (see “Section-by-section learning y/n?”). The
number of learning passes must be reduced in any case.
If the reference NC programs mentioned above are used with the
recommended parameter values, the following times have been determined for
the learning process time:

S Detailed learning not active: approx. 6.5 min

S Detailed learning active: approx. 13 min

Copyright © Siemens AG, 2005.


2/K3/2-74 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

2.6.6 Quick start-up

Preparation for
“Learning”
1. Determining the optimum friction compensation time constant
(MD 32540 FRICT_COMP_TIME) with conventional friction compensation.
2. Enter the following machine data without power ON:

Machine data Standard Change to Meaning


MD 19330 0 Activate option “IPO_FUNKTION_MASK”.
NC-CODE_CONF_NAME_TAB[8] Only with learn program “Polynomial”!
Bit4 = 1
MD 19300 COMP_MASK 0 Set option
MD 32490 FRIC_COMP_MODE 1 2 “Type of friction compensation” neural
QEC
MD 32500 FRIC_COMP_ENABLE 0 0 “Friction compensation active” for learning
“OFF”
MD 32580 FRIC_COMP_INC_FACTOR 0 0 “Weighting factor of friction compensation
value for short traversing motions” (mm
increments)
MD 38010 MM_QEC_MAX_POINTS 0 400 “Selection of values for QEC” =
$AA_QEC_FINE_STEPS *
($AA_QEC_COARSE_STEPS + 1)
MD 32620 FFW_MODE 1 1 Speed feedforward control
MD 32610 VELO_FFW_WEIGHT 1 1 Injection 100%
MD 32630 FFW_ACTIVATION_MODE 1 0 Feedforward control ON continuously
MD 32810 EQUIV_SPEEDCTRL_TIME 0.004 Initial value Adjust equivalent time constant n control
t_pos + loop
n_setSm.*

*t_position ... position control cycle (=basic system cycle * factor for position control cycle), n_setSm. ... speed setpoint
smoothing (MD 1500 to 1521)

3. Read in of the machine data because of the memory change


(MD 38010):
HMI Embedded:
Save “Services”, “Data OUT”, “Start-up data, NCK data” and, if programmed,
“LEC, measuring system error and sag and angularity compensation tables”
via PCIN.
Execute a power ON-Reset and then read in the saved data with PCIN and
“Data IN”. (= series startup)
HMI Advanced:
Save “SERIES STARTUP” and if programmed, “LEC, measuring system
error, sag and angularity error compensation tables”.
Execute a power ON Reset and then read in the “Start-up” archive (saved
data are loaded again).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-75
Compensations (K3) 06.05
2.6 Neural quadrant error compensation

4. Copy the programs supplied on disk “MMC 100 TOOLBOX” into the NC
(with archive!)
QECDAT.MPF
QECSTART.MPF
QECLRNP.SPF (“Polynomial” learning program)or QECLRNC.SPF (“Circle”
learning program) is stored as QECLRN.SPF on the NC!
With geometry axes, it is preferable to use the Circle learning program; for
all other axes the Polynomial learning program only.
5. Make the following program adjustments:
– In part program QECDAT
Adjust friction compensation time constant if necessary (see para. 1)
N1340 $AA_QEC_TIME_1[outNr,axNr] = 0.0xx
N1040 def int numAxes = ..... Enter the number of axes
to be learned.
N1150 axisName[0] = ...... Axis name Enter 1st axis.
N1160 axisName[1] = ...... Axis name Enter 2nd axis.
N1170 axisName[2] = ...... Axis name Enter 3rd axis.
N1180 axisName[3] = ...... Axis name Enter 4th axis.
(For the “Circle” learning program, AX1 .. AX8 or the machine or channel
axis name can be used as the axis name. However, only the channel axis
name can be used for the “Polynomial” learning program).
– In part program QECSTART
N1080 def int numAxes = ..... Enter the number of axes
to be learned.
N1310 axisName[0] = ...... Axis name Enter 1st axis.
N1320 axisName[1] = ...... Axis name Enter 2nd axis.
N1330 axisName[2] = ...... Axis name Enter 3rd axis.
N1340 axisName[3] = ...... Axis name Enter 4th axis.
(For the “Circle” learning program, AX1 .. AX8 or the machine or channel
axis name can be entered as the axis name. In contrast, only the channel
axis name may be used for the “Polynomial” learning program).

Executing Start the following programs


“Learning”
process
S Select and start QECDAT.
System variables are assigned.

S Select QECSTART, override 100% and start.


The learning program runs for about 15 minutes involving approximately 30
cm traversing motions. If the message “REORG not possible” is displayed, it
can be ignored. The message is displayed for about 10 seconds. It then
disappears and the learning process continues with traversing motions.

Activate QEC

Machine data Standard Change to Meaning


MD 32500 0 1 Switch on “Friction
FRIC_COMP_ENABLE compensation active”

“Circularity test” Use the “Circularity test” to check the result!

Copyright © Siemens AG, 2005.


2/K3/2-76 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.6 Neural quadrant error compensation

Save Save compensation data (select QEC data during the generation of the
compensation data series start-up file):
HMI Embedded:
Save with PCIN under SERVICES\Data\Circle error compensation\All.
HMI Advanced:
Save the file under SERVICES\NCK\NC Active Data\Quadrant Error
Co\Quadrant error comp-complete.ini. This file contains all compensation
values.
Note: Change the “displayed name length” to “20” in SERVICES “System
settings” “for display” to ensure that the whole name is visible.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-77
Compensations (K3) 06.05
2.7 Circularity test

2.7 Circularity test

Function One of the purposes of the circularity test is to check the contour accuracy ob-
tained by the friction compensation function (conventional or neural QEC). It
works by measuring the actual positions during a circular movement and dis-
playing the deviations from the programmed radius as a diagram (especially at
the quadrant transitions).

Procedure The circle contour for the axes involved is specified by an NC program. To
simplify the circularity test as much as possible for the start-up engineer, an NC
program is provided as a reference example for the circularity test motion (file
QECTEST.MPF on the diskette with the basic PLC program). The start-up
engineer must adapt this NC program to his application.
Several measurements must be made during the circularity test with different
acceleration values to ascertain whether the learnt compensation characteristic
(for neural QEC) or the defined compensation values (for conventional QEC)
meet the requirements.
The circular movement can easily be made with different accelerations if you
change the feedrate using the feedrate override switch without changing circular
contour. The real feedrate must be taken into account in the measurement in
the input field “feedrate”.
The circle radius chosen must be typical of machining operations on the
machine (e.g. radius in the range 10 to 200 mm).
For the duration of the circular movement, the position actual values of the axes
are recorded and stored in a “trace” in the passive file system. The circularity
test is therefore purely a measuring function.

Parameterization You select in this menu the names or numbers of the axes with which the circle
of circularity test is traversed and whose actual position data must be recorded. No check is
made to find out whether the selected axes match the axes programmed in the
NC parts program.
The parameter settings in the input fields “Radius” and “Feed” must correspond
to the values from the parts program that controls the circular motion of the
axes, taking account of the feed override switch setting. No check is made to
see whether the values in the parts program (including feedrate override) and
the input values match.
The “Measuring time” display field shows the measuring time calculated from
the “Radius” and “Feed” values for recording the position actual values during
the circular movement.
If only parts of the circle can be represented (i.e. measuring time too short) the
measuring time can be increased in the menu by reducing the feed value. This
also applies if the circularity test is started from the stationary condition.

Copyright © Siemens AG, 2005.


2/K3/2-78 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.7 Circularity test

Fig. 3-25 Circularity test measurement menu

Mode of The following parameter assignments for programming the mode of representa-
representation tion of measurement results can also be made:

S Display based on mean radius


S Display based on programmed radius
S Scaling of the diagram axes
If the measuring time calculated exceeds the time range that can be displayed
from the trace buffers (maximum measuring time = position control cycle fre-
quency * 2048), a coarser sampling rate is used for recording (n * position con-
trol cycle frequency), so that a complete circle can be displayed.

Starting the The operator must use an NC Start to start the parts program in which the
measurement circular motion for the selected axes is stored (AUTOMATIC or MDA operating
mode).
The measuring function is started with the vertical soft key Start.
The sequence of operations (NC Start for part program and Start measurement)
can be chosen by the user according to the application.
When the circularity test is active for the specified axes, the message “active”
appears in the “Status” display field.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-79
Compensations (K3) 06.05
2.7 Circularity test

Stopping the The measurement can be stopped at any time by pressing the Stop key.
measurement Any incomplete measurement
recordings are best displayed by selecting the Display soft key. There is no
monitoring in this respect.
To allow direct access to the required controller parameters, the soft keys
Axis-specific MD, FDD-MD and MSD-MD are displayed. The vertical soft keys
Axis+ and Axis– can be used to select the desired axis.
The “Service axis” display is displayed when you press the Service Axis soft
key. The following service data are displayed here for commissioning of the
friction torque compensation:

S QEC learning active yes/no?


S Current position and actual speed values

Display When you press the Display soft key, the display switches to the graphical view
of the recorded circle diagram.

Fig. 3-26 Circularity test display menu

This screen displays the measurements of the two actual position values as a
circle with the set resolution.
The programmed radius, the programmed feedrate and the measuring time
derived from these values are also displayed for documentation purposes (for
subsequent storage of the measured circle characteristics in file format).
The operator can enter a finer scale for the diagram axes in the Resolution
input field, e.g. in order to emphasize the transitions at the quadrants. The circle
diagram is refreshed with the new resolution when you press the Display
softkey.

Copyright © Siemens AG, 2005.


2/K3/2-80 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.7 Circularity test

File functions The displayed measurement results and the parameter settings can be stored
as a file on the MMC by selection of softkey File functions.

Printer settings The basic display for selecting a printer (Fig. 10-15) can be called by means of
soft keys MMC Printer selection.
The toggle key is used to define whether the displayed graphic is to be output
directly on the printer or transferred to a bit map file after softkey Print graph is
selected.

Fig. 3-27 Basic screen for printer selection

Direct output on The printer must be set up under MS-Windows.


printer
“Output on printer” is set in the selection field.
After selection of the softkey labeled Print graph, the displayed graph is output
on the connected printer.

Output as The graphic is stored in a bitmap file (*.bmp).


bitmap file
“Output as bitmap file” is chosen in the printer settings selection
field.
When the softkey labeled Print graph is selected, the screen form for assigning
a file name appears in the “Circularity test display”. A new file name can be en-
tered or an existing file name selected for overwriting
in the drop-down list.
Softkey Ok is selected to store the file.
Softkey Abort is selected to return to the current graphic display.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-81
Compensations (K3) 06.05
2.7 Circularity test

Fig. 3-28 Assignment of file name for output in a bitmap file.

2.7.1 Neural quadrant error compensation, quick start-up

“Neural quadrant error compensation” quick start-up with parabolic/circu-


lar movements

Preparation for The friction compensation time constant (MD 32540 FRICT_COMP_TIME) is
“Learning” calculated first by means of conventional friction compensation.

Table 2-2 Enter the following machine data without power ON

Machine data Stan- Change Meaning


dard to
MD 19330 IPO_FUNCTION_MASK 0 8 Activate “Polynomial interpolation” option.
For polynomial only! Bit 4=1
MD 19300 COMP_MASK 0 8 Option “Neural QEC”, bit 4 = 1
MD 32490 FRIC_COMP_MODE 1 2 “Type of friction compensation” neural QEC
MD 32500 FRIC_COMP_ENABLE 0 0 “Friction compensation active” for learning “OFF”
MD 32580 FRIC_COMP_INC_FACTOR 0 0 “Weighting factor of friction compensation value for
short traverse motions” (mm increments)
MD 38010 MM_QEC_MAX_POINTS 0 400 “Selection of values for QEC” =
$AA_QERC_FINE_STEPSA *
($AA_QEC_COARSE_STEPS + 1)
MD 32620 FFW_MODE 1 1 Speed feedforward control
MD 32610 VELO_FFW_WEIGHT 1 1 Injection 100%
MD 32630 FFW_ACTIVATION_MODE 1 0 Feedforward control ON continuously
MD 32810 EQUIV_SPEEDCTRL_TIME 0.004 t_pos.+ Adjust equivalent time constant n control loop

n_setSm.
*)

Copyright © Siemens AG, 2005.


2/K3/2-82 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.7 Circularity test

*) t_position ... position control cycle (=basic system cycle * factor for position
control cycle), n-setSm. ... speed setpoint filter (MD 1500 ... 1521)
Owing to re-allocation of memory (MD 38010), save the machine data with:
HMI Emb. Save “Services”, “Data OUT”, “Start-up data, NCK data” and,
if programmed, measuring system error and sag/angularity com-
pensation tables via PCIN, execute a power ON-Reset and then
read in the saved data with PCIN and “Data IN” (=series machine
start-up).
HMI Adv. Save “SERIES START-UP” and, if programmed, measuring sys-
tem error and sag/angularity compensation tables, execute power
ON-Reset and read in “Start-up” archive (saved data are re-
loaded).
Copy the programs supplied on disk “MMC 100 TOOLBOX” into the NC
(with archive!)

QECDAT.MPF
QECSTART.MPF
QECLERNP.SPF (“Polynomial” learning program) or QECLRNC.SPF (“Circle”
learning program) is stored as QECLRN.SPF on the NC!
Adapt the following programs:

S In parts program QECDAT


N1040 def int numAxes=... Enter the number of axes to be learned
N1150 axisName[0] Enter axis name of 1st axis.
N1160 axisName[1] Enter axis name of 2nd axis.
N1170 axisName[2] Enter axis name of 3rd axis.
N1180 axisName[3] Enter axis name of 4th axis.
(AX1 .. AX8 or the machine or channel axis name can be used as an axis
name for the “Circle” learning program. In contrast, only the channel axis
name may be used for the “Polynomial” learning program).

S In part program QECSTART


N1080 def int numAxes=... Enter the number of axes to be learned
N1310 axisName[0] Enter axis name of 1st axis.
N1320 axisName[1] Enter axis name of 2nd axis.
N1330 axisName[2] Enter axis name of 3rd axis.
N1340 axisName[3] Enter axis name of 4th axis.
(AX1 .. AX8 or the machine or channel axis name can be used as an axis
name for the “Circle” learning program. In contrast, only the channel axis
name may be used for the “Polynomial” learning program).

Execute Select and start QECDAT


LEARN process
System variables are assigned.
Select QECSTART 100% override and start
The learning program runs for about 15 minutes
involving approximately 30 cm traversing motions. The message
“REORG not possible” can be ignored if it occurs. The message
is displayed for about 10 seconds. It then disappears and the
learning process continues with traversing motions.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-83
Compensations (K3) 06.05
2.7 Circularity test

Activate QEC

Machine data Standard Change to Meaning


MD 32500 FRIC_COMP_ENABLE 0 1 Switch on “Friction compensation active”

Use the Save compensation data (QEC data are not included in back-up with “SERIES
“Circularity test” START-UP”):
to check the HMI Emb.: Save with PCIN under SERVICES\Data\Circle error compensa-
result! tion\All.
HMI Adv.: Save the file under SERVICES\NCK\NC Active Data\Quadrant
Error Co\Quadrant error comp-complete.ini. This file contains all
compensation values.

Note
Change the “displayed name length” to “20” in SERVICES “System settings”
“for display” to ensure that the whole name is visible.

Copyright © Siemens AG, 2005.


2/K3/2-84 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.8 Electronic weight compensation (vertical axis)

2.8 Electronic weight compensation (vertical axis)

Prerequisite This function is available only for use in conjunction with SIMODRIVE 611 digital
drives.

Note
The “Electronic weight compensation” functionality is not currently available for
the combination SINUMERIK 840D sl and SINAMICS universal drive.
The “Electronic weight compensation” functionality is not currently available for
the combination SINUMERIK 840Di and SIMODRIVE 611 universal drive.
The parameters required for the function cannot be transferred to the drive via
the PROFIBUS-DP.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-85
Compensations (K3) 06.05
2.8 Electronic weight compensation (vertical axis)

2.8.1 Electronic counterweight function

Axis without In the case of weight-bearing axes without weight compensation, the vertical
electronic weight axes drop when the brake is released and the system responds as follows:
compensation

1. Brake holds Z
+Z 2. Brake releases, servo enable,
pulse enable
3. Axis Z is lowered.
4. After some delay, the control
holds the axis in
position
Feed Drive

Distance
Brake Z

–Z dz

t
Torque
Z
Weight

dz
t

Fig. 3-29 Lowering of a vertical axis without electronic weight compensation

The amount the axis (Z) is lowered increases in proportion to the speed control-
ler reset time in MD 1409: SPEEDCTRL_INTEGRATOR_TIME_1 set with the
SIMODRIVE 611 digital. Through activation of the electronic weight compensa-
tion function, it is possible to minimize the amount by which the axis is lowered.

Activation The function is activated by setting axis-specific MD 32460:TORQUE_OFFSET


to a value other than zero and made operative on the next RESET or POWER
ON or via softkey key “Activate MD”.

Axis with The electronic weight compensation function prevents weight-bearing axes from
electronic weight sagging when the control is switched on. After releasing the brake, the constant
compensation weight compensation torque maintains the position of the vertical axis. This pro-
cess is illustrated in the figure below.

Copyright © Siemens AG, 2005.


2/K3/2-86 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.8 Electronic weight compensation (vertical axis)

1. Brake holds Z
+Z 2. Brake releases, servo enable,
pulse enable,
weight compensation torque
3. Axis Z stays in position.

Feed Drive Distance


Z
Brake
dz = ~ 0
–Z
t

Torque

Weight

dz = ~ 0 t

Fig. 3-30 Lowering of a vertical axis with electronic weight compensation

Note
This function is available only in conjunction with SIMODRIVE 611 digital.

Switching off The electronic weight compensation function is deactivated with setting
MD 32460:TORQUE_OFFSET = 0.
The deselection takes effect after the next RESET or power ON or on selection
of softkey “Activate MD”.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-87
Compensations (K3) 06.05
2.8 Electronic weight compensation (vertical axis)

2.8.2 Effect on electronic counterweight function of rebooting from


HMI

Introduction HMI is capable of booting the NCK for the purpose, for example, of ac-
tivating machine data. The result of this reboot would be that vertical
axes would drop a short distance. Use can be made of the “Reboot
Management” function to avoid this problem.
When the management function is appropriately set, the NCK permits the NCK
and PLC to be powered down with a delay and also signals that shutdown is
imminent. This allows enough time for brake activation to prevent vertical axes
from dropping.
The Reboot Management function works only in conjunction with controlled Po-
wer On via the HMI. A power failure or hardware reboot does not activate the
Reboot Management function.

REBOOT The HMI initiates an NCK and PLC reboot using PI service
sequence “_N_IBN_SS”.
NCK immediately activates alarm 2900 in response to the PI service.
Machine data MD 10088: REBOOT_DELAY_TIME then specifies the time pe-
riod allowed by the NCK between the PI service and initiation of reboot. This
time delay can be used to activate mechanical axis brakes.

Reactions to alarm
2900
1. The following VDI signals are canceled, i.e. set to zero.
Mode Group ready
DB 11 DBB 6 Bit 3 (all mode groups)
Channel ready
DB 21 DBB 36 Bit 5 (all channels)
Axis ready
DB 31 DBB 61 Bit 2 (all axes)

2. The “Ready” message at relay contacts 72 73.1 73.2 74 is not reset.


3. The NCK brakes along the current limit.
See also
MD 36610: AX_EMERGENCY_STOP_TIME and
MD 36620: SERVO_DISABLE_DELAY_TIME.
Note: The NCK deactivates the position control after SERVO_DIS-
ABLE_DELAY_TIME.
4. The following VDI signals remain at 1.
NC ready
DB 10 DBB 108 Bit 7
Machine data
MD 11410: SUPPRESS_ALARM_MASK (BIT20) can be used to suppress
alarm 2900, but the NCK still initiates the same reactions.

Copyright © Siemens AG, 2005.


2/K3/2-88 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.8 Electronic weight compensation (vertical axis)

As alarm 2900 deactivates the axis position control, this alarm must be config-
ured to effect application of the mechanical brakes by the PLC. Rebooting
the PLC forces the PLC outputs to change to defined zero. The brakes must be
connected up in such a way that they remain closed at zero, i.e. a 1 signal on
the PLC allows the brakes to open.
Note: In terms of its reactions, the alarm is the same as the Emergency Stop
alarm (3000). For internal reasons, the reboot delay time of the NCK can be
slightly increased.

Activation The reboot management function is activated when MD 10088: RE-


BOOT_DELAY_TIME is set to a value other than zero.

Evaluation with a System variable $AN_REBOOT_DELAY_TIME can be read in a synchronous


system variable action. A value higher than zero indicates that the reboot request initiated by the
HMI has been issued and how much time (in seconds) the NCK will allow until
reboot (Power Off followed by Power On). The user can detect an imminent
reboot by reading a synchronous action and react accordingly (e.g. with “Safe
Standstill” in a Safety Integrated application). $AN_REBOOT_DELAY_TIME is
0.0 as long as the HMI has not initiated a reboot request.
See also/PGA1/, List of System Variables.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-89
Compensations (K3) 10.00
06.05
2.8 Electronic weight compensation (vertical axis)

2.8.3 Electronic weight compensation with travel to fixed stop

SIMODRIVE 611 With NC SW 6 and SW 5.1 SIMODRIVE 611 digital and earlier, both functions
digital up to “electronic weight compensation” and “travel to fixed stop” can be used simulta-
SW 5.1 neously, but the following special points should be noted in this respect:

Interaction with The electronic weight compensation may not be used to offset the zero point for
traverse against the fixed stop torque or fixed stop force as it is unsuitable for this purpose.
fixed stop
S If, for example, the axis requires 30% weight compensation in a case where
40% fixed stop torque is programmed in the same direction, then the actual
torque with which the axis presses against the fixed stop only corresponds
to 10% of rated torque.

S If 40% fixed stop torque is programmed in the other direction (in the opposite
direction to weight compensation, i.e. in direction in which axis would drop)
in the same situation described above, then the actual torque with which the
axis presses against the fixed stop corresponds to 70% of rated torque.

S If the axis needs, for example, a weight counterbalance of 30%, then it is


not possible for the axis to approach a fixed stop if less than 30% fixed stop
torque is programmed. The drive torque would be limited so severely that
the axis could no longer be kept under control and would drop!
These characteristics of the traverse against fixed stop function with vertical
axes are determined by the available options for torque limitation in the drive.
They are neither improved nor impaired by the weight compensation function.

SIMODRIVE 611 For travel to fixed stop with NC-SW 6 or SIMODRIVE 611 digital SW 5.1 and
digital SW 5.1 and higher, it is also possible to set a torque limit in the NC that is smaller than the
higher weight of the drive. In doing this, a torque/force limit is evaluated by the NC.
This torque/force limit is operative in addition to the limits set in the drive

S Current,
S Force/torque,
S Power, pullout power
S Setup mode

Required The torque/force limit is entered for the different drive types in the drive machine
adjustments data provided for this purpose.

Drive machine data Drive type Meaning


MD 1192: TORQUE_LIMIT_WEIGHT FDD/MSD The torque corresponding to the force due to weight
MD 1192: FORCE_LIMIT_WEIGHT 1FN1 and 1FN3 The force due to weight with linear motors
MD 5231: FORCE_LIMIT_WEIGHT HLD Module The force due to weight with hydraulic drives

Copyright © Siemens AG, 2005.


2/K3/2-90 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
2.8 Electronic weight compensation (vertical axis)

Relationships for adjustment

Limit values of NC Machine data MD 1192 uses the same unit in percent (%) as the NC machine
symmetrical to data MD 32460: TORQUE_OFFSET[n] additional torque for electronic counter-
SIMODRIVE weight. The torque/force limit of the NC therefore acts symmetrically above and
below this weight torque/force. The resulting static torque/static force relation-
ship is as follows:

Formula M0  k T * I 0 for synchronous motors (13)


or rated torque:
Mrated for induction motors
cT = Torque constant [Nm/A]
I0 = Current at zero speed [A]

Manual NC format In order to facilitate the setting procedure MD 1728: DESIRED_TORQUE dis-
adjustment with plays the current torque/force setpoint in the same format as in MD 1192 and
SIMODRIVE MD 32460: TORQUE_OFFSET[n].
If only the force due to weight is active, the value can be read and
MD 1192 and MD 32460: TORQUE_OFFSET[n] transferred. If the value of the
force due to weight is greater than the torque/force limit of the NC, then the up-
per and lower torque/force limit has the same leading sign. If the force due to
weight is entered incorrectly, it can result in constant acceleration once the NC
force limit is reached!
With SW 5.1 and higher, the torque limit for setup mode
MD 1239: TORQUE_LIMIT_FOR_SETUP and the force limit
MD 1239: FORCE_LIMIT_FOR_SETUP also act symmetrically at the force due
to weight. The minimum is selected from the limit of NC and setup mode if setup
mode is active.
With SW 5.1 and higher for SIMODRIVE 611 digital, the limits of the NC and
setup mode are no longer included in

S the reference values for ramp-function generator follow-up


S the capacity utilization and
S the M<Mx signaling function.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/2-91
Compensations (K3) 06.05
2.8 Electronic weight compensation (vertical axis)

Notes

Copyright © Siemens AG, 2005.


2/K3/2-92 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
3.1 Availability

Supplementary Conditions 3
3.1 Availability
The individual compensation types are:

S Backlash compensation
S Leadscrew error and measuring system compensation
S Multi-dimensional beam sag compensation
S Manual quadrant error compensation
S Automatic quadrant error compensation (neural network)
S Temperature compensation
S Automatic drift compensation for analog speed setpoints
S Electronic weight compensation

“Backlash This function is available for:


compensation”
S SINUMERIK 840D with NCU 571/572/573 with SW 1 and higher
function

“Leadscrew error This function is available for:


and measuring
S SINUMERIK 840D with NCU 571/572/573 with SW 1 and higher
system error
compensation”
function

“Multi-dimensional The function is an option and is available for


beam sag
S SINUMERIK 840D with NCU 571/572/573 with SW 2 and higher
compensation”
function The function is contained in the export version 840DE with restricted functional-
ity; it is not contained in the FM-NC, 810DE (SW 3.1 and lower).

S The function is available for the SINUMERIK 810DE in SW 3.2 and higher.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/3-93
Compensations (K3) 06.05
3.1 Availability

“Quadrant error This function is available for:


compensation by
operator input”
S SINUMERIK 840D with NCU 571/572/573 with SW 1 and higher
function

“Automatic The function is an option and is available for


quadrant error
compensation”
S SINUMERIK 840D with NCU 571/572/573 with SW 2 and higher
function

“Temperature The function is an option and is available for


compensation”
function
S SINUMERIK 840D with NCU 571/572/573 with SW 1 and higher
S SINUMERIK FMNC with NCU 570 with SW 1 and higher

“Electronic weight This function is available for:


compensation”
function
S SINUMERIK with NCU 571/572/573, SW 3 and
higher, in conjunction with SIMODRIVE 611D.
J

Copyright © Siemens AG, 2005.


2/K3/3-94 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
4.1 Description of machine data

Data Descriptions (MD, SD) 4


4.1 Description of machine data
4.1.1 General machine data

10082 CTRLOUT_LEAD_TIME
MD number Shift of setpoint transfer time
Default setting: 0.0 Minimum input limit: 0.0 Maximum input limit: 100.0
Changes effective after POWER ON Protection level: 2 / 7 Unit: %
Data type: DOUBLE Applies from SW: 2
Meaning: Lead time for output of the speed setpoints.
The larger the value entered, the sooner the drive accepts the speed setpoints.
S 0 % setpoints are transferred at the beginning of the next position control cycle.
S 50 % setpoints are already transferred after execution of half of the position control
cycle.
A reasonable lead time can only be determined by measuring the maximum position control
calculating time.
In the machine data 10083: CTRLOUT_LEAD_TIME_MAX suggests a value measured by
the control. As this is a net value, it is advisable for the user to provide for a safety allow-
ance of, for example, 5%.
If lead times that are too high are input, this can cause output of drive alarm 300506.
The input value is rounded to the next speed controller pulse rate in the drive.
If the speed controller pulse rates of the drives are different,
changing the value will not necessarily lead to the same degree of controller improvement
for all configured drives.
Note: This MD is only important for axes with digital drives.
Related to .... MD 10083: CTRLOUT_LEAD_TIME_MAX

10083 CTRLOUT_LEAD_TIME_MAX
MD number Maximum permissible setting for shift of setpoint transfer time
Default setting: 100.0 Minimum input limit: 0.0 Maximum input limit: 100.0
Changes effective after NEW_CONF Protection level: 2 / 7 Unit: %
Data type: DOUBLE Applies from SW: 4
Meaning: Maximum permissible lead time for output of the speed setpoints.
MD 10083 represents a setting aid for MD 10082.
The displayed value can be directly transferred to MD 10082, taking the safety allowance
into account.
The permissible lead time is determined from the maximum measured computing time re-
quired by the position controller. It decreases as the position controller’s computing time
requirements increase.
By reducing the position control cycle via MD 10060 or 10050, you can
reduce the permissible lead time.
The lead time is measured during the entire operating life. The displayed
value can only be increased by manual input.
If the specified lead time is greater than the permissible one (e.g. 100%), then it is automati-
cally determined again.
Note: This MD is only important for axes with digital drives.
Related to .... MD 10050: SYSCLOCK_CYCLE_TIME (system clock time)
MD 10060: POSCTRL_SYSC LOCK_TIME_RATIO (factor for position control cycle)
MD 10082: CTRLOUT_LEAD_TIME

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-95
Compensations (K3) 06.05
4.1 Description of machine data

10088 REBOOT_DELAY_TIME
MD number Reboot delay
Default setting: 0.2 Minimum input limit: 0.0 Maximum input limit: 1.0
Changes effective immediately Protection level: 3 / 3 Unit: s
Data type: DOUBLE Applies from SW: 7.2
Meaning: The reboot operation which follows PI “N_IBN_SS” is delayed by the time
REBOOT_DELAY_TIME.
The suppressible NOREADY alarm 2900 is activated immediately by PI “_N_IBN_SS”.

If REBOOT_DELAY_TIME is shorter than the time set in MD 36620:


SERVO_DISABLE_DELAY_TIME for a particular axis,
then the axis will be braked while the REBOOT_DELAY_TIME is active and the servo
enable signal will then be canceled, in other words, the time
SERVO_DISABLE_DELAY_TIME is n o t fully applied.

When REBOOT_DELAY_TIME = 0.0, alarm 2900 is not activated and no reboot delay is
applied.

18342 MM_CEC_MAX_ POINTS[t]


MD number Maximum number of interpolation points for beam sag compensation [table t]
Default setting: 0 Minimum input limit: 0 Maximum input limit: 2000
Changes effective after POWER ON Protection level: 2 / 4 Unit: –
Data type: DWORD Applies from SW: 2.1
Meaning: For beam sag compensation, the number of required interpolation points must be defined
for every compensation table [t].
where: [t] = Index of compensation table

with (0  t  2 * maximum number of axes)


i.e. t = 0: 1. compensation table
t = 1: 2. compensation table etc.
The necessary number can be calculated from the defined parameters as follows (see
Subsection 2.3.3):
$AN_CEC_MAX[t]–$AN_CEC_MIN[t]
MM_CEC_MAX_POINTS[t]  1
$AN_CEC_STEP[t]

$AN_CEC_MIN [t] Initial position (system variable)


$AN_CEC_MAX [t] End position (system variable)
$AN_CEC_STEP [t] Distance between interpolation points (system variable)
When selecting the number of interpolation points and the distance between them the
resulting size of the compensation table and the resulting required memory capacity in the
non-volatile user memory must be noted. 8 bytes are required for every compensation
value (interpolation point).
If the value 0 is entered, no memory is reserved for the table; i.e. the table does not exist
and the function cannot therefore be activated.
Special cases, errors, ...... Caution!
When MD 18342: MM_CEC_MAX_POINTS[t] is changed the non-volatile NC user memory
is automatically reallocated on power ON. This deletes all the user data in the non-volatile
user memory (e.g. drive and MMC machine data, tool offsets, parts programs etc.).

Related to .... SD 41300: CEC_TABLE_ENABLE[t] Enable evaluation of beam sag compensation


table [t]
References /FB/, S7, “Memory Configuration”

Copyright © Siemens AG, 2005.


2/K3/4-96 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
4.1 Description of machine data

4.1.2 Axis-specific machine data

32450 BACKLASH[n]
MD number Backlash
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after NEW_CONF Protection level: 2 Unit: mm or degrees
Data type: DOUBLE Applies from SW: 1.1
Meaning: Backlash between the positive and the negative direction of travel.
The compensation value input is
S positive, if the encoder leads the machine part (normal case)
S negative, if the encoder lags behind the machine part.
If zero is entered backlash compensation is deactivated.
Backlash compensation is always activated after reference point approach in all modes.
The index [n] has the following coding:
[encoder no.]: 0 or 1
Special cases, errors, ...... If there is a second measuring system, a separate backlash value must be entered for this
measuring system.
Related to .... MD: NUM_ENC (number of measuring systems)
MD: ENC_CHANGE_TOL (maximum tolerance for position actual-value switchover)

32452 BACKLASH_FACTOR[n]
MD number Weighting factor for backlash
Default setting: 1.0 Minimum input limit: 0.01 Maximum input limit: 100.0
Changes effective after NEW_CONF Protection level: 2 / 7 Unit: –
Data type: DOUBLE Applies from SW: 5.1
Meaning: Weighting factor for backlash
This machine data enables the backlash entered in MD 32450: BACKLASH to be changed
as a function of a parameter set, e.g. in order to take account of gear-stage-specific back-
lash.
Related to .... MD 32450: BACKLASH[n]

32460 TORQUE_OFFSET
MD number Additional torque for electronic weight compensation
Default setting: 0 Minimum input limit: –100 Maximum input limit: 100
Changes effective after NEW_CONF Protection level: 2 / 7 Unit: %
Data type: DOUBLE Applies from SW: 3.1
Meaning: The additional torque for the electronic weight compensation is entered in the % block of
the static torque (calculated from MD1113 x MD1118). It is immediately effective when the
current controller is activated. Vertical axes are thus prevented from sagging when the
controller enabling signal is set, particularly when the speed controller reset time setting is
high.

100% corresponds to the static torque of the axis drive.

With the speed controller deactivated, a positive value would move the drive in a positive
traversing direction (see also MD 32100: AX_MOTION_DIR for further details).

If, therefore, the positive traversing direction is upwards (axis is raised), then a positive
value must be entered for the weight compensation.
Conversely, a positive traversing direction downwards would call for a negative value.

MD is effective only for SIMODRIVE 611D drive systems.


Special cases, errors, ... See Interaction with “Traverse against fixed stop” function
...
Related to ....

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-97
Compensations (K3) 06.05
4.1 Description of machine data

32490 FRICT_COMP_MODE
MD number Friction compensation mode
Default setting: 0 Minimum input limit: 0 Maximum input limit: 2
Changes effective after NEW_CONF Protection level: 2/4 Unit: –
Data type: BOOLEAN Applies from SW: 2.1
Meaning: 0: No friction compensation
1: Friction compensation with const. feedforward value or adaptive characteristic
2: Friction compensation with learnt characteristic via neural network
Related to ....

32500 FRICT_COMP_ENABLE
MD number Friction compensation active
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after NEW_CONF Protection level: 2 / 4 Unit: –
Data type: BOOLEAN Applies from SW: 1.1
Meaning: 1: The axis is enabled for “friction compensation” and therefore injection of the friction
compensation values.
Quadrant errors on circular contours can be compensated with “friction compensation”.
Axial MD 32490: FRICT_COMP_MODE “friction compensation type” defines whether
“friction compensation with constant injected value” or “quadrant error compensation
with neural networks” is selected.
In the case of neural networks, the machine data should first be set to “1” when a valid
characteristic has been “learnt”. During the learning phase, the compensation values
are injected independently of the contents of this machine data.
0: Friction compensation is not enabled for this axis. No friction compensation values are
injected.
Related to .... MD 32490: FRICT_COMP_MODE Friction compensation type
MD 32510: FRICT_COMP_ADAPT_ENABLE Friction compensation adaptation active
MD 32520: FRICT_COMP_CONST_MAX Maximum friction compensation value
MD 32540: FRICT_COMP_TIME Friction compensation time constant
MD 38010: MM_QEC_MAX_POINTS Number of interpolation points for
quadrant error compensation with neural
networks

Copyright © Siemens AG, 2005.


2/K3/4-98 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
4.1 Description of machine data

32510 FRICT_COMP_ADAPT_ENABLE [n]


MD number Friction compensation adaptation active [setpoint branch]: 0
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after NEW_CONF Protection level: 2 Unit: –
Data type: BOOLEAN Applies from SW:
Meaning: 1: Friction compensation with amplitude adaptation is enabled for the axis.
With “friction compensation” quadrant errors on circular contours can be compensated.
Often, the injection amplitude of the friction compensation value is not constant over
the entire acceleration range. In this case, for high accelerations a smaller compensa-
tion value must be injected than for small accelerations to achieve optimum friction
compensation.
The parameters of the adaptation curve (see Fig. 2–14) must be determined and en-
tered in the machine data.
0: Friction compensation with amplitude adaptation must be enabled for the axis.
MD irrelevant for ...... MD 32500: FRICT_COMP_ENABLE = 0
MD 32490: FRICT_COMP_MODE = 2 (neural QEC)
Related to .... MD 32500: FRICT_COMP_ENABLE Friction compensation active
MD 32520: FRICT_COMP_CONST_MAX Maximum friction compensation value
MD 32530: FRICT_COMP_CONST_MIN Minimum friction compensation value
MD 32550: FRICT_COMP_ACCEL1 Adaptation acceleration value 1
MD 32560: FRICT_COMP_ACCEL2 Adaptation acceleration value 2
MD 32570: FRICT_COMP_ACCEL3 Adaptation acceleration value 3
MD 32540: FRICT_COMP_TIME Friction compensation time constant

32520 FRICT_COMP_CONST_MAX [n]


MD number Maximum friction compensation value [setpoint branch]: 0
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 Unit: mm/min
Data type: DOUBLE Applies from SW:
Meaning: MD 32520: FRICT_COMP_CONST_MAX the magnitude of the (maximum) injection ampli-
tude of the friction compensation value is defined.
This value is injected over the entire acceleration range for friction compensation without
adaptation.
In the case of friction compensation with adaption, this value is merely applied in the accel-
eration range B2 of the adaptation characteristic (see Chapter 2, Subsection “Conv. friction
friction compensation).
MD irrelevant for ... ... MD 32500: FRICT_COMP_ENABLE = 0
MD 32490: FRICT_COMP_MODE = 2 (neural QEC)
Related to .... MD 32500: FRICT_COMP_ENABLE Friction compensation active
MD 32510: FRICT_COMP_ADAPT_ENABLE Friction compensation adaptation active
MD 32530: FRICT_COMP_CONST_MIN Minimum friction compensation value
MD 32550: FRICT_COMP_ACCEL1 Adaptation acceleration value 1
MD 32560: FRICT_COMP_ACCEL2 Adaptation acceleration value 2
MD 32570: FRICT_COMP_ACCEL3 Adaptation acceleration value 3
MD 32540: FRICT_COMP_TIME Friction compensation time constant

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-99
Compensations (K3) 06.05
4.1 Description of machine data

32530 FRICT_COMP_CONST_MIN [n]


MD number Minimum friction compensation value [setpoint branch]: 0
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 Unit: mm/min
Data type: DOUBLE Applies from SW: 1.1
Meaning: The minimum friction compensation value is needed only if “Friction compensation with
adaptation” is active (MD 32510: FRICT_COMP_ADAPT_ENABLE = 1).
The friction compensation amplitude entered in FRICT_COMP_CONST_MIN is applied in
the acceleration range B4 (a  a3) of the adaptation characteristic (see Chapter 2, Sub-
section “Conv. friction compensation”).
MD irrelevant for ...... MD 32510: FRICT_COMP_ADAPT_ENABLE = 0
MD 32490: FRICT_COMP_MODE = 2 (neural QEC)
Special cases, ...... In exceptional cases, the value programmed for FRICT_COMP_CONST_MIN may even be
higher than the setting for MD 32520: FRICT_COMP_CONST_MAX.
Related to .... MD 32500: FRICT_COMP_ENABLE Friction compensation active
MD 32510: FRICT_COMP_ADAPT_ENABLE Friction compensation adaptation active
MD 32520: FRICT_COMP_CONST_MAX Maximum friction compensation value
MD 32550: FRICT_COMP_ACCEL1 Adaptation acceleration value 1
MD 32560: FRICT_COMP_ACCEL2 Adaptation acceleration value 2
MD 32570: FRICT_COMP_ACCEL3 Adaptation acceleration value 3
MD 32540: FRICT_COMP_TIME Friction compensation time constant

32540 FRICT_COMP_TIME[n]
MD number Friction compensation time constant [setpoint branch]: 0
Default setting: 0,015 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 Unit: s
Data type: DOUBLE Applies from SW: 1.1
Meaning: Time constant over which the friction compensation value is injected (decay time of the
compensation setpoint pulse).
Deviations at the quadrant transitions are not only influenced by the injection amplitude but
also by a change in the friction compensation time constant (see Subsection 2.5.3).
MD irrelevant for ...... MD 32500: FRICT_COMP_ENABLE = 0
Related to .... MD 32500: FRICT_COMP_ENABLE Friction compensation active
MD 32520: FRICT_COMP_CONST_MAX Maximum friction compensation value

Copyright © Siemens AG, 2005.


2/K3/4-100 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
4.1 Description of machine data

32550 FRICT_COMP_ACCEL1 [n]


MD number Adaptation acceleration value 1 [setpoint branch]: 0
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 Unit: m/s2
Data type: DOUBLE Applies from SW: 1.1
Meaning: The adaptation acceleration value is only required if “Friction compensation with adaptation”
is active.
The adaptation acceleration values 1 to 3 are interpolation points for defining the
adaptation curve. The adaptation curve is subdivided into four ranges in which different
friction compensation values apply.
Range B1 is defined by FRICT_COMP_ACCEL1 (a1) (see Chapter 2, Subsection “Conv.
friction compensation”).
For the injection amplitude within range B1 the following applies:

Dn = Dnmax * a/ a1 for a < a1

MD irrelevant for ...... MD 32510: FRICT_COMP_ADAPT_ENABLE = 0


MD 32490: FRICT_COMP_MODE = 2 (neural QEC)
Related to .... MD 32500: FRICT_COMP_ENABLE Friction compensation active
MD 32510: FRICT_COMP_ADAPT_ENABLE Friction compensation adaptation active
MD 32520: FRICT_COMP_CONST_MAX Maximum friction compensation value
MD 32530: FRICT_COMP_CONST_MIN Minimum friction compensation value
MD 32560: FRICT_COMP_ACCEL2 Adaptation acceleration value 2
MD 32570: FRICT_COMP_ACCEL3 Adaptation acceleration value 3
MD 32540: FRICT_COMP_TIME Friction compensation time constant

32560 FRICT_COMP_ACCEL2 [n]


MD number Adaptation acceleration value 2 [setpoint branch]: 0
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 Unit: m/s2
Data type: DOUBLE Applies from SW: 1.1
Meaning: The adaptation acceleration value is only required if “Friction compensation with adaptation”
is active.
The adaptation acceleration values 1 to 3 are interpolation points for defining the adaptation
curve. The adaptation curve is subdivided into four ranges in which different friction com-
pensation values apply.
Range B2 is defined by MD 32550: FRICT_COMP_ACCEL1 (a1) and FRICT_COMP_AC-
CEL2 (a2) (see Chapter 2, Subsection “Conv. friction compensation”).
For the injection amplitude within range B2 the following applies:

Dn = Dnmax for a1  a  a2

MD irrelevant for ...... MD 32510: FRICT_COMP_ADAPT_ENABLE = 0


MD 32490: FRICT_COMP_MODE = 2 (neural QEC)
Related to .... MD 32500: FRICT_COMP_ENABLE Friction compensation active
MD 32510: FRICT_COMP_ADAPT_ENABLE Friction compensation adaptation active
MD 32520: FRICT_COMP_CONST_MAX Maximum friction compensation value
MD 32530: FRICT_COMP_CONST_MIN Minimum friction compensation value
MD 32550: FRICT_COMP_ACCEL1 Adaptation acceleration value 2
MD 32570: FRICT_COMP_ACCEL3 Adaptation acceleration value 3
MD 32540: FRICT_COMP_TIME Friction compensation time constant

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-101
Compensations (K3) 06.05
4.1 Description of machine data

32570 FRICT_COMP_ACCEL3 [n]


MD number Adaptation acceleration value 3 [setpoint branch]: 0
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 Unit: m/s2
Data type: DOUBLE Applies from SW: 1.1
Meaning: The adaptation acceleration value is only required if “Friction compensation with adaptation”
is active.
The adaptation acceleration values 1 to 3 are interpolation points for defining the
adaptation curve. The adaptation curve is subdivided into four ranges in which different
friction compensation values apply.
Range B2 is defined by MD 32560: FRICT_COMP_ACCEL2 (a2) and FRICT_COMP_AC-
CEL3 (a3) (see Chapter 2, Subsection “Conv. friction compensation”).
For the injection amplitude within range B3 the following applies:

Dn = Dnmax * (1 – (a – a2) / (a3 – a2)) for a2 < a < a3

Range B4 applies to acceleration values > a3. The following applies to the injection ampli-
tude within range B3:

Dn = Dnmin for a  a3
MD irrelevant for ...... MD 32510: FRICT_COMP_ADAPT_ENABLE = 0
MD 32490: FRICT_COMP_MODE = 2 (neural QEC)
Related to .... MD 32500: FRICT_COMP_ENABLE Friction compensation active
MD 32510: FRICT_COMP_ADAPT_ENABLE Friction compensation adaptation active
MD 32520: FRICT_COMP_CONST_MAX Maximum friction compensation value
MD 32530: FRICT_COMP_CONST_MIN Minimum friction compensation value
MD 32550: FRICT_COMP_ACCEL1 Adaptation acceleration value 2
MD 32560: FRICT_COMP_ACCEL2 Adaptation acceleration value 2
MD 32540: FRICT_COMP_TIME Friction compensation time constant

32580 FRICT_COMP_INC_FACTOR
MD number Weighting factor of friction compensation value with short traversing movements
Default setting: 1 Minimum input limit: 0 Maximum input limit: 100
Changes effective after POWER ON Protection level: 2 / 4 Unit: %
Data type: DOUBLE Applies from SW: 2.1
Meaning: The optimum friction compensation value determined by the circularity test can cause over-
compensation of this axis if compensation is activated and axial positioning movements are
short.
In such cases, a better setting can be achieved by reducing the amplitude of the friction
compensation value (conventional or quadrant error compensation with neural networks)
and all positioning movements that are made within an interpolation cycle of the control.
The factor that has to be entered can be determined empirically and can be different from
axis to axis because of the different friction conditions. The input range is between 0 to
100% of the value determined by the circularity test.
The default setting is 0; so that no compensation is performed for short traversing move-
ments.
Related to .... MD 32500: FRICT_COMP_ENABLE Friction compensation active

Copyright © Siemens AG, 2005.


2/K3/4-102 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
4.1 Description of machine data

32610 VELO_FFW_WEIGHT[n]
MD number Weighting factor for feedforward control
Default setting: 1 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 / 7 Unit: Factor
Data type: DOUBLE Applies from SW: 1.1, changed from SW 5.1
Meaning: From SW 1.1 to SW 4.4 feedforward control factor for speed feedforward control
In the case of speed feedforward control, a velocity setpoint is also applied directly to the
input of the speed controller (see Chapter 2, Section “Speed feedforward control”). This
additional setpoint can be weighted with a factor (called feedforward control factor).
To ensure that the speed feedforward control is set correctly, the equivalent time constant
of the speed control loop must be determined precisely and entered in MD 32810:
EQUIV_SPEEDCTRL_TIME.
If the equivalent time constant of the speed control loop is defined exactly, the feedforward
control factor has a value of approximately 1. In this case, the system deviation is roughly
zero (check by looking at the service display in the operating area Diagnosis).
If the feedforward control factor 0 is entered, feedforward control is deactivated. However,
because the calculations are performed anyway, feedforward control must be deactivated
with MD: FFW_MODE = 0.

From SW 5.1 weighting factor for feedforward control


dependent on the parameter set [n=0..5]
This factor weights the setpoint velocity before it is used for feedforward control of the
drive.

Default: MD 32610: VELO_FFW_WEIGHT = 1.0


This default weighting factor (1.0) acts as follows:
S On digital drives typically to ensure the setpoint speed is strictly adhered to.
S On analog drives the drive actuator gain errors can be compensated for, so that the
actual speed is exactly equal to the setpoint speed (this reduces the following error
when using feedforward control).

MD 32610: VELO_FFW_WEIGHT < 1.0


With both drives types this weighting factor allows the effect of the feedforward control to be
gradually removed if the machine is traversing with a speed characteristic that is too stiff
and other measures (e.g. jerk limitation) are not to be used. This reduces any overshooting,
which results in increased error occurrence at curved contours, e.g. on circles.

Generally the settings for the feedforward control are better when the weighting factor re-
mains set to (1.0), and overshooting is removed by means of jerk limitation and balancing
filter MD 32810: EQUIV_SPEEDCTRL_TIME.

MD 32610: VELO_FFW_WEIGHT = 0.0


This setting provides position control only without feedforward control.

MD 32610: VELO_FFW_WEIGHT > 1.0


The contour monitor also takes weighting factors higher than 1 into account.
In individual cases, it may be necessary to increase the contour monitoring tolerance band
in MD 36400: CONTOUR_TOL.
MD irrelevant for ...... MD 32620: FFW_MODE = 0 or 2
Related to .... MD 32620: FFW_MODE
MD 32630: FFW_ACTIVATION_MODE
MD 32810: EQUIV_SPEEDCTRL_TIME

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-103
Compensations (K3) 06.05
4.1 Description of machine data

32620 FFW_MODE
MD number Feedforward control mode
Default setting: 1 Minimum input limit: 0 Maximum input limit: 4
Changes effective after RESET Protection level: 2 / 7 Unit: –
Data type: Byte Applies from SW: 4.3 extended in SW 5.1 and
higher
Meaning: FFW_MODE defines the feedforward control mode to be applied on an axis-specific basis.
0 = No feedforward control
1 = Velocity feedforward control with PT1 balancing
2 = Torque feedforward control with PT1 balancing
(only possible with SINUMERIK 840D)

Extending the selection with values 3 and 4 with SW 5.1 and higher
for SINUMERIK 840D/810D only
The default is 1 for compatibility with earlier software versions.

The default for SINUMERIK 840Di is 3


3= Velocity feedforward control with Tt balancing
4= Torque feedforward control with Tt balancing
(only possible with SINUMERIK 840D)

Torque feedforward control is an option that must be enabled.

FFWON and FFWOF are used to activate and deactivate the feedforward control for spe-
cific channels on all axes.
To prevent these instructions from changing the feedforward control for individual axes, the
setting can be activated or deactivated permanently in machine data MD 32630: FFW_AC-
TIVATION_MODE (see also MD 32630).

If a feedforward control mode is selected (speed or torque feedforward control), it can be


programmed additionally in MD 32630: FFW_ACTIVATION_MODE whether the feedfor-
ward control can be activated or deactivated by the parts program.
Application example(s) In order to achieve excellent machining accuracy at high path velocities, contour inaccura-
cies due to following error can be eliminated using feedforward control.
Related to .... MD 32630: FFW_ACTIVATION_MODE
MD 32610: VELO_FFW_WEIGHT
MD 32650: AX_INERTIA

32630 FFW_ACTIVATION_MODE
MD number Activate feedforward control from program
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after RESET Protection level: 0 / 0 Unit: –
Data type: Byte Applies from SW: 4.3
Meaning: FFW_ACTIVATION_MODE can be set to define whether the feedforward control for this
axis/spindle can be switched on and off in the parts program.
0 = The feedforward control cannot be switched on or off by high-level language ele-
ments FFWON or FFWOF.
The condition set in MD: FFW_MODE is always active for the axis/spindle.
1 = Feedforward control can be switched on/off with FFWON or FFWOF.
The default setting is programmed in channel-specific data MD 20150:
GCODE_RESET_VALUES. This setting is valid even before the first NC block has
been executed.
The last condition to be active remains active even after Reset (and therefore with JOG).
Because the feedforward control for all axes of a channel is switched on/off with FFWON or
FFWOF, MD:
FFW_ACTIVATION_MODE should therefore have identical settings for axes that interpo-
late with each other.
Related to .... MD 32620: FFW_MODE
MD 20150: GCODE_RESET_VALUES
References /PA/, “Programming Guide Fundamentals”

Copyright © Siemens AG, 2005.


2/K3/4-104 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
08.97
12.01
06.05 Compensations (K3)
4.1 Description of machine data

32640 STIFFNESS_CONTROL_ENABLE
MD number Activate dynamic stiffness control
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after NEW_CONF Protection level: 2 / 7 Unit: –
Data type: Applies from SW: 4.1
Meaning: Activate dynamic stiffness control if bit is set.

With active dynamic stiffness control, higher servo gain factors are possible
(MD 32200: POSCTRL_GAIN).

Due to the higher computing load in SIMODRIVE 611 digital, it may be necessary to adapt
the settings of the sampling cycle (current/drive module cycle) in the 611D.
(This does not apply to PROFIBUS-DP drives)

For a single-axis drive module, the default setting (125 µs current, 125 µs speed controller
cycle) is sufficient. The speed controller cycle might have to be increased (to 250 µs) for
two-axis modules.

Note:
Up to SW 6.4, because of the implementation in the SIMODRIVE 611 digital drive, the stiff-
ness control is only possible with the motor measuring system.
Related to .... MD 32642: STIFFNESS_CONTROL_CONFIG
MD 32644: STIFFNESS_DELAY_TIME
References /FBA/, DD2 Dynamic Stiffness Control (DSC) Subsection

32642 STIFFNESS_CONTROL_CONFIG
MD number Config. dynamic stiffness control
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: BOOLEAN Applies from SW: 6.3
Meaning: Dynamic Stiffness Control Configuration (DSC):

Normal case: 0 = DSC in drive uses indirect measuring system


PROFIBUS-DP drives: 1 = DSC in drive uses direct measuring system

Note:
Up to SW 6.4, DSC with a direct measuring system is possible only on the PROFIBUS-DP
with SIMODRIVE 611 universal drives.
Related to .... MD 32640: STIFFNESS_CONTROL_ENABLE
MD 32644: STIFFNESS_DELAY_TIME
References /FBA/, DD2 Dynamic Stiffness Control (DSC) Subsection

32644 STIFFNESS_DELAY_TIME
MD number Dyn. stiffness control: Delay
Default setting: 0.0 Minimum input limit: –0.02 Maximum input limit: 0.02
Changes effective after POWER ON Protection level: 2 / 7 Unit: s
Data type: DOUBLE Applies from SW: 6.3
Meaning: Effective only for PROFIBUS-DP drives
Configuration of a compensation deadtime for Dynamic Stiffness Control (DSC) with opti-
mized DP cycle (e.g. SIMODRIVE 611 universal).
With machine data MD 32644: STIFFNESS_DELAY_TIME, fine adjustment for the DSC
function is also possible for third-party PROFIBUS-DP drives.

On SIMODRIVE 611 digital drives, the complete adjustment is performed automatically


within the control. Readjustment is not necessary.
Related to .... MD 32640: STIFFNESS_CONTROL_ENABLE
MD 32642: STIFFNESS_CONTROL_CONFIG
References /FBA/, DD2 Dynamic Stiffness Control (DSC) Subsection

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-105
Compensations (K3) 06.05
4.1 Description of machine data

32650 AX_INERTIA
MD number Moment of inertia for torque feedforward control
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 Unit: kgm2
Data type: DOUBLE Applies from SW: 1.1
Meaning: In the case of torque feedforward control, an additional current setpoint proportional to the
torque is applied directly to the current controller input (see Chapter 2, subsection “Torque
feedforward control”). This value is formed using the acceleration and the moment of iner-
tia. The equivalent time constant of the current control loop must be defined for this purpose
and entered in MD 32800: EQUIV_CURRCTRL_TIME.
The total moment of inertia of the axis (drive + load) must also be entered in AX_INERTIA
(total moment of inertia referred to motor shaft according to data supplied by machine
manufacturer).
When AX_INERTIA and MD 32800: EQUIV_CURRCTRL_ TIME are set correctly, the follo-
wing error is almost zero even during acceleration (check this by looking at the following
error in the service display).
The torque feedforward control is deactivated if AX_INERTIA is set to 0. However, because
the calculations are performed anyway, torque feedforward control must always be deacti-
vated with MD: FFW_MODE = 0 or 1.
Because of the direct current setpoint injection, torque feedforward control is only possible
on digital drives (SIMODRIVE 611D).
MD irrelevant for ...... SINUMERIK MD 32620: FFW_MODE = 0 or 1
Application example(s) Torque feedforward control is required to achieve high contour accuracy where the de-
mands on the dynamics are great.
Related to .... MD 32620: FFW_MODE
MD 32630: FFW_ACTIVATION_MODE
MD 32800: EQUIV_CURRCTRL_TIME

32652 AX_MASS
MD number Axis mass for torque feedforward control
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 / 7 Unit: kg
Data type: DOUBLE Applies from SW: 4.1
Meaning: Mass of axis for torque feedforward control.
This MD is used instead of AX_INERTIA on linear drives (DRIVE_TYPE=3).
Related to ....
References

32700 ENC_COMP_ENABLE[n]
MD number LEC active [n]
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after NEW_CONF Protection level: 2 / 7 Unit: –
Data type: BOOLEAN Applies from SW: 1.1
Meaning: 1: ’LEC’ is activated for the axis/measuring system.
With LEC, leadscrew errors and measuring system errors can be compensated.
The function is only enabled internally if the measuring system has been referenced
(IS: “Referenced/synchronized” = 1).
Write protection function (compensation values) active.
0: Interpolatory compensation is not active for the axis/measuring system.

Index [n] has the following coding:


[Encoder no.]: 0 or 1
Related to .... MD: MM_ENC_COMP_MAX_POINTS Number of interpolation points for LEC
IS “Referenced/synchronized 1”
IS “Referenced/synchronized 2”

Copyright © Siemens AG, 2005.


2/K3/4-106 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
4.1 Description of machine data

32710 CEC_ENABLE
MD number Enabling of beam sag compensation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after NEW_CONF Protection level: 2 / 4 Unit: –
Data type: BOOLEAN Applies from SW: 2.0
Meaning: 1: “Beam sag compensation” is enabled for the compensation axis.
With “beam sag compensation”, inter-axis geometry errors (e.g. beam sag and angular-
ity errors) can be compensated. The function is not enabled in the control until the follo-
wing conditions have been fulfilled:
S Option Interpolatory compensation is set
S Associated compensation tables are available
S Evaluation of the required compensation table is enabled
(SD: CEC_TABLE_ENABLE[t] = 1)
S The position measuring system required is referenced (IS: “Referenced/synchro-
nized” = 1).
S Write protection function (compensation values) active.
0: “Beam sag compensation” is not enabled for the compensation axis.
Related to .... MD: MM_CEC_MAX_POINTS[t] Number of interpolation points for beam
sag compensation
SD: CEC_TABLE_ENABLE[t] Enable evaluation of beam sag compensation
table t IS
“Referenced/synchronized 1 or 2” DB31–48, DBX60.4 or 60.5

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-107
Compensations (K3) 06.05
4.1 Description of machine data

32711 CEC_SCALING_SYSTEM_METRIC
MD number Measuring system of beam sag compensation
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after RESET Protection level: 2 / 7 Unit: –
Data type: BOOLEAN Applies from SW: 5
Meaning: Compensation data are contained in:
S MD 32711=0: inch system
S MD 32711=1: metric system
The measuring system can be configured for all beam sag compensation tables
that affect the same axis.
Hereby all position entries are interpolated together with the calculated total axial
compensation value in the configured measuring system.
External table conversions after the measuring system has been switched over are no
longer necessary.
Axial configuration of the measuring system is necessary, as only the total axial compensa-
tion value is referring unambiguously to a position, not the individual table contents that are
calculated in relation to one another.

Note: Only effective when MD 10260: CONVERT_SCALING_SYSTEM=1. (see /G2/)


Related to .... MD 10260: CONVERT_SCALING_SYSTEM Basic system switchover active

MD number System of measurement of sag compensation


32720 CEC_MAX_SUM
MD number Maximum compensation value for beam sag compensation
Default setting: 1 Minimum input limit: 0 Maximum input limit: 10
Changes effective after NEW_CONF Protection level: 2 / 4 Unit:
Linear axis: mm
Rotary axis: Degrees
Data type: DOUBLE Applies from SW: 2.1
Meaning: In beam sag compensation, the absolute magnitude of the total compensation value (sum
of compensation values of all compensation relations) is monitored axially with machine
data value CEC_MAX_SUM.
If the determined total compensation value is larger than the maximum value, alarm 20124
is triggered. Program processing is not interrupted. The compensation value output as the
additional setpoint is limited to the maximum value.
MD irrelevant for ...... Leadscrew error compensation
Backlash compensation
Temperature compensation
Related to .... MD: CEC_ ENABLE Enable beam sag compensation
SD: CEC_TABLE_ENABLE[t] Enable evaluation of beam sag
compensation table t IS
“Referenced/synchronized 1 or 2” DB31–48, DBX60.4 or 60.5

Copyright © Siemens AG, 2005.


2/K3/4-108 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Compensations (K3)
4.1 Description of machine data

32730 CEC_MAX_VELO
MD number Maximum permissible change value for beam sag compensation
Default setting: 10 Minimum input limit: 0 Maximum input limit: 100
Changes effective after NEW_CONF Protection level: 2 / 7 Unit: %
Data type: DOUBLE Applies from SW: 2.1
Meaning: In beam sag compensation, modification of the total compensation value (sum of the com-
pensation values of all active compensation relations) is limited axially. The maximum
change value is defined in this machine data as a percentage of MD 32000:
MAX_AX_VELO (maximum axis velocity).
If the change in the total compensation value is greater than the maximum value, alarm
20125 is output. Program processing is however continued. The path not covered because
of the limitation is made up as soon as the compensation value is no longer subject to limi-
tation.
MD irrelevant for ...... Leadscrew error compensation
Backlash compensation
Temperature compensation
Related to .... MD: CEC_ ENABLE Enable beam sag compensation
MD: MAX_AX_VELO Maximum axis velocity
SD: CEC_TABLE_ENABLE[t] Enable evaluation of beam sag
compensation table t IS
“Referenced/synchronized 1 or 2” DB31–48, DBX60.4 or 60.5

32750 TEMP_COMP_TYPE
MD number Temperature compensation type
Default setting: 0 Minimum input limit: 0 Maximum input limit: 7
Changes effective after POWER ON Protection level: 2 / 7 Unit: Hex
Data type: BYTE Applies from SW: 1.1, bit 2, in SW 6.1 and higher
extended
Meaning: The temperature compensation type effective for the machine axis is activated with ma-
chine data TEMP_COMP_TYPE.
A distinction is made between the following types:
TEMP_COMP_TYPE
Value = 0: No temperature compensation active
Bit 0 = 1: Positions independent temperature compensation active
(compensation value with SD 43900: TEMP_COMP_ABS_VALUE)
Bit 1 = 1: Position dependent temperature compensation active
(compensation value with SD 43910: TEMP_COMP_SLOPE and
SD 43920: TEMP_COMP_REF_POSITION)
Bit 2 = 1: Compensation active in tool direction
(in order to activate temperature compensation in tool direction,
machine data MD 20390: TOOL_TEMP_COMP_ON
must also be set.)

Several compensation types can be activated at the same time.

The compensation values are overwritten via the PLC or synchronized actions.
To prevent velocity step changes on individual axes, the applied compensation values are
limited via MD 32760: COMP_ADD_VELO_FACTOR.
Temperature compensation is an option that must be enabled.
Related to .... SD 43900: TEMP_COMP_ABS_VALUE Position-dependent
temperature compensation value
SD 43920: TEMP_COMP_REF_POSITION Reference position for position-dependent
temperature compensation
SD 43910: TEMP_COMP_SLOPE Gradient for position-dependent
temperature compensation
MD 32760: COMP_ADD_VELO_FACTOR Velocity violation due to
compensation
MD 20390: TOOL_TEMP_COMP_ON Activation of temperature compensation for
tool length

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-109
Compensations (K3) 06.05
4.1 Description of machine data

32760 COMP_ADD_VELO_FACTOR
MD number Velocity violation due to compensation
Default setting: 0,01 Minimum input limit: 0 Maximum input limit: 0,1
Changes effective after POWER ON Protection level: 2 / 7 Unit: Factor
Data type: DOUBLE Applies from SW: 1.1
Meaning: With axial MD: COMP_ADD_VELO_FACTOR the maximum distance that can be traversed
because of temperature compensation in one IPO cycle is limited.
If the resulting temperature compensation value is above this maximum, it is traversed over
several IPO cycles. There is no alarm.
The maximum compensation value per IPO cycle is input as a factor with reference to the
maximum axis velocity (MD: MAX_AX_VELO).
With this machine data the maximum gradient of the temperature compensation tanbmax is
also limited.
Example of calculation of the maximum gradient tanbmax:
1. Calculation of the interpolator closed-loop control (see Description of Functions Veloci-
ties, Setpoint/Actual-Value Systems, Closed-Loop Control (G2))
Interpolator closed-loop control = basic system clock rate * factor for interpolation cycle
Interpolator closed-loop control = MD: SYSCLOCK_CYCLE_TIME * MD: IPO_
SYSCLOCK_TIME_RATIO
Example: MD: SYSCLOCK_CYCLE_TIME = 0.004 [s]
MD: IPO_SYSCLOCK_TIME_RATIO = 3
 Interpolator closed-loop control = 0.004 * 3 = 0.012 [s]
2. Calculation of the maximum velocity increase because of a change made to the tem-
perature compensation parameter DvTmax
DvTmax = MD: MAX_AX_VELO * MD: COMP_ADD_VELO_FACTOR
Example: MD: MAX_AX_VELO = 10 000 [mm/min ]
MD: COMP_ADD_VELO_FACTOR = 0.01
 DvTmax = 10 000 * 0.01 = 100 [mm/min]
3. Calculation of the traverse distances per interpolator cycle
0.012
S1 (at vmax) = 10 000 x ––––––– = 2.0 [mm]
60
0.012
ST (at DvTmax) = 100 x –––––––– = 0.02 [mm]
60
4. Calculation of tanbmax
ST 0.02
tanbmax = –––– = –––––– = 0.01 (corresponds to the value of
S1 2 COMP_ADD_VELO_FACTOR)
 bmax = arc tan 0.01 = 0.57 degrees
With larger values of SD: TEMP_COMP_SLOPE the maximum gradient (here 0.57
degrees) for the position-dependent temperature compensation value is used internally.
There is no alarm.
Note: Any additional velocity violation caused by temperature compensation must be taken
into account when defining the limit value for velocity monitoring (MD: AX_VELO_LIMIT).
MD irrelevant for ...... TEMP_COMP_TYPE = 0, sag compensation, LEC, backlash compensation
Related to .... MD: TEMP_COMP_TYPE Temperature compensation type
SD: TEMP_COMP_ABS_VALUE Position-independent temperature compensation
SD: TEMP_COMP_SLOPE Gradient for position-dependent temperature
compensation
MD: MAX_AX_VELO Maximum axis velocity
MD: AX_VELO_LIMIT Limit value for velocity monitoring
MD: IPO_SYSCLOCK_TIME_RATIO Ratio basic system clock rate to IPO cycle
MD: SYSCLOCK_CYCLE_TIME System clock cycle

Copyright © Siemens AG, 2005.


2/K3/4-110 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
4.1 Description of machine data

32800 EQUIV_CURRCTRL_TIME [n]


MD number Equivalent time constant of current control loop
Default setting: 0,0005 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 / 7 Unit: s
Data type: DOUBLE Applies from SW: 1.1
Meaning: This time constant must equal the equivalent time constant of the closed current control
loop.
It is used for parameterization of the torque feedforward control and for calculation of the
dynamic following error model (contour monitoring).
In order to set the torque feedforward control correctly, the equivalent time constant of the
current control loop must be determined precisely by measuring the step response of the
current control loop.
With SIMODRIVE 611D the settling process can be displayed using the installation tool.
Index[n] has the following coding:
[control parameter block number]: 0 to 5
(References: /FB/, G2, “Velocities, Setpoint/Actual Value Systems, Cycle Times”)
Related to .... MD: FFW_MODE Feedforward control type
MD: AX_INERTION Moment of inertia for speed feedforward control
MD: CONTOUR_TOL Tolerance band contour monitoring
References /IAD/ “Installation and Start-Up Guide”
/IAF/ “Installation and Start-Up Guide”

32810 EQUIV_SPEEDCTRL_TIME [n]


MD number Equivalent time constant of speed control loop
Default setting: 0,004 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 / 7 Unit: s
Data type: DOUBLE Applies from SW: 1.1
Meaning: This time constant must equal the equivalent time constant of the closed speed control
loop.
It is used for parameterization of the symmetrization filter for the speed feedforward control
and for calculation of the dynamic following error model (contour monitoring).
In order to set the speed feedforward control correctly, the equivalent time constant of the
speed control loop must be determined precisely by measuring the step response of the
speed control loop.
With SIMODRIVE 611D the settling process can be displayed using the installation tool.
Index[n] has the following coding:
[control parameter block number]: 0 to 5
(References: /FB/, G2, “Velocities, Setpoint/Actual Value Systems, Cycle Times”)
Related to .... MD: FFW_MODE Feedforward control type
MD: VELO_FFW_WEIGHT Moment of inertia for speed feedforward control
MD: CONTOUR_TOL Tolerance band contour monitoring
References /IAF/, “Installation and Start-Up Guide”
/IAD/, “Installation and Start-Up Guide”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-111
Compensations (K3) 06.05
4.1 Description of machine data

36500 ENC_CHANGE_TOL
MD number Maximum tolerance for position actual value switchover
Default setting: 0.1 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: 2 / 7 Unit: mm, degrees
Data type: DOUBLE Applies from SW: 1.1
Meaning: The permissible deviation between the actual values of the two measuring systems
is entered in the MD.
This tolerance must not be violated when switching from one measuring system to the
other for closed-loop control in order to avoid too large compensatory processes. Other-
wise error message 25100, “Axis %1 Measuring system switchover not possible” is gener-
ated and switchover between the two systems does not take place.
SW 5.3 and higher
This MD is used to manage large backlash compensation values. It ensures that the back-
lash is not switched through to the actual value all at once, but in n steps with an increment
size as set in MD 36500: ENC_CHANGE_TOL. Inclusion of the backlash thus takes n
servo cycles.
If the time elapsed until the full inclusion of the backlash is excessive, zero speed monitor-
ing alarms may be triggered. The original method of injecting the backlash compensation
value is used if
MD 36500: ENC_CHANGE_TOL is set higher than
MD 32450: BACKLASH.
MD irrelevant for ...... This MD is irrelevant for MD 30200: NUM_ENCS = 0 or 1.
Application example(s) To avoid too large compensatory processes when switching measuring systems.
Related to .... MD 32450: BACKLASH

36700 DRIFT_ENABLE
MD number Automatic drift compensation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after NEW_CONF Protection level: 840D:0 Unit: –
Data type: BOOLEAN Applies from SW: 1.1
Meaning: MD: DRIFT_ENABLE activates automatic drift compensation.
1: Automatic drift compensation is active (only for position-controlled axes/spindles).
With automatic drift compensation at zero speed, the control constantly determines the
additional drift value required so that the value zero is reached for the following error
(compensation criterion).
The total drift value is therefore composed of the basic drift value (MD:
DRIFT_VALUE) and the additional drift value (see Fig. 2-21).
0: Automatic drift compensation is not active.
The drift value is only formed from the basic drift value (MD: DRIFT_VALUE).
MD irrelevant for ...... 840D or for axes/spindles which are not position-controlled
Related to .... MD: DRIFT_LIMIT Drift limit value for automatic drift compensation
MD: DRIFT_VALUE Drift basic value

36710 DRIFT_LIMIT
MD number Drift limit value for automatic drift compensation
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after NEW_CONF Protection level: Unit:
840D: 0 % of manipulated vari-
FM-NC: 2 able
(e.g. 10 V  100%)
Data type: DOUBLE Applies from SW: 1.1
Meaning: MD: DRIFT_LIMIT, the magnitude of the additional drift value determined during automatic
drift compensation can be limited.
If the additional drift value exceeds the value entered in MD: DRIFT_LIMIT, alarm 25070
“Drift value too large” is signaled and the additional drift value is limited to this value.
MD irrelevant for ...... SINUMERIK 840D or
MD: DRIFT_ENABLE = 0
Related to .... MD: DRIFT_ENABLE Automatic drift compensation

Copyright © Siemens AG, 2005.


2/K3/4-112 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
4.1 Description of machine data

36720 DRIFT_VALUE
MD number Drift basic value
Default setting: 0 Minimum input limit: 0 Maximum input limit:
Changes effective after NEW_CONF Protection level: 840D:0 Unit: %
Data type: DOUBLE Applies from SW: 1.1
Meaning: The basic drift value entered in MD: DRIFT_VALUE is always injected as an additional
speed setpoint.
The basic drift value is always active (independently of the MD: DRIFT_ENABLE)!
While the automatic drift compensation only applies to position-controlled axes, the basic
drift value is also active for speed-controlled axes/spindles.
Note: Digital drives have no drift!
For drives on the Profibus:
This MD can still however be used for “simple” drives on the Profibus which are experienc-
ing drift problems. To avoid setting errors, however, this drift compensation on the Profibus
is operative only if $MA_RATED_OUTVAL != 0 (i.e. the MD is inactive when the interfaces
between the NC and drive have been automatically adjusted).
Normalization: The input value refers to the interface normalization
according to $MA_RATED_OUTVAL, $MA_RATED_VELO and
$MA_CTRLOUT_LIMIT.

Note: When the DSC ($MA_STIFFNESS_CONTROL_ENABLE=1) function is used, drift


compensation must not be active on the Profibus as unpredictable speed fluctuations will
otherwise occur when DSC is activated or deactivated.
MD irrelevant for ...... SINUMERIK 840D

38000 MM_ENC_COMP_MAX_POINTS[n]
MD number Number of interpolation points for LEC (SRAM)
Default setting: 0 Minimum input limit: 0 Maximum input limit: 5000
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 1.1
Meaning: For leadscrew error compensation, the number of interpolation points required per measur-
ing system must be defined.
The required number can be calculated as follows using the defined parameters (see Sub-
section 2.3.2)
$AA_ENC_COMP_MAX-$AA_ENC_COMP_MIN
MD: MM_ENC_COMP_MAX_POINTS = ––––––––––––––––––––––––––––––––––––––– + 1
$AA_ENC_COMP_STEP

$AA_ENC_COMP_MIN Initial position (system variable)


$AA_ENC_COMP_MAX End position (system variable)
$AA_ENC_COMP_STEP Distance betw. interpolat. points (system variable)

In selecting the number of interpolation points and the distance between them, it is impor-
tant to take account of the resulting size of the compensation table and the required space
in the backed-up NC user memory (SRAM). 8 bytes are required per compensation value
(interpolation point).
Index[n] has the following coding: [encoder no.]: 0 or 1
Special cases, errors, ...... Notice:
After any change in MD: MM_ENC_COMP_MAX_POINTS, the backed-up NC user
memory is reallocated automatically on power up.
All data in the backed-up NC user memory are then lost (e.g. parts programs, tool offsets
etc.). Alarm 6020 “Machine data changed - memory reallocated” is signaled.
If reallocation of the NC user memory fails because the total memory capacity available is
not sufficient, alarm 6000 “Memory allocation made with standard machine data” is sig-
naled.
In this case the NC user memory is allocated using the default values of the standard ma-
chine data.
References: /FB/, S7, “Memory Configuration”
/DA/, “Diagnostic Guide”
Related to .... MD: ENC_ COMP_ ENABLE[n] Interpolatory compensation active
References /FB/, S7, “Memory Configuration”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-113
Compensations (K3) 06.05
4.1 Description of machine data

38010 MM_QEC_MAX_POINTS
MD number Maximum number of compensation values for QEC with neural networks
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1024
Changes effective after POWER ON Protection level: 2 / 4 Unit: –
Data type: DWORD Applies from SW: 2.1
Meaning: In quadrant error compensation with neural networks (QEC) the number of required com-
pensation values must be entered for every axis to be compensated.
The required number can be calculated as follows using the defined parameters (see Sub-
section 2.6.2):

MM_QEC_MAX_POINTS  ($AA_QEC_COARSE_STEPS + 1) *
$AA_QEC_FINE_STEPS
$AA_QEC_COARSE_STEPS Coarse quantiz. of characteristic (system variable)
$AA_QEC_FINE_STEPS Fine quantization of characteristic (system variable)
For “direction-dependent” compensation the number must be greater than or equal to
double value of this product.
When selecting coarse or fine quantization, the resulting size of the compensation table
and the memory required for it in the non-volatile user memory must be taken into account.
4 bytes are required for every compensation value. If the value 0 is entered, no memory is
reserved for the table; i.e. the table does not exist and the function can therefore not be
activated.
Special cases, errors, ...... Caution!
If MD: MM_QEC_MAX_POINTS is altered, the non-volatile user memory is automatically
re-allocated on system power-on. This deletes all the user data in the non-volatile user
memory (e.g. drive and MMC machine data, tool offsets, parts programs etc.).
Note:
Because the exact number of required interpolation points is not exactly known during the
first installation of the function, a large number should be chosen initially. As soon as the
characteristics are recorded and saved, the number can be reduced to the required size.
After performing a power ON again, the saved characteristics can be reloaded.
References /FB/, S7, “Memory Configuration”

Copyright © Siemens AG, 2005.


2/K3/4-114 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
4.2 Description of setting data

4.2 Description of setting data

41300 CEC_TABLE_ENABLE[t]
MD number Enable evaluation of beam sag compensation table [t]
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective immediately Protection level: 7 Unit: –
Data type: BOOLEAN Applies from SW: 2.1
Meaning: 1: Evaluation of compensation table [t] is enabled. The compensation table defines, for
example, the compensation relation (assignment of basis to compensation axis) with [t]
= index of compensation table (see MD: MM_CEC_MAX_POINTS).
In “beam sag compensation” the compensation axis can be influenced by several
tables. SD:
CEC_TABLE_ENABLE[t] can be altered by the NC parts program or PLC user pro-
gram to adapt the total compensation value of the machining application (e.g. switch
over tables).
The compensation is not enabled in the control until the following conditions have been
fulfilled:

S Option Interpolatory compensation is set


S Assigned compensation tables exist
S Beam sag compensation for compensation axis is activated
(MD: CEC_ENABLE = 1)
S The position measuring system required is referenced (IS: “Referenced/synchro-
nized” = 1).

0: Evaluation of the beam sag compensation table [t] is not enabled.


Related to .... MD: MM_CEC_MAX_POINTS[t] Number of interpolation points for beam
sag compensation
SD: CEC_TABLE_ENABLE[t] Enable evaluation of beam sag
compensation table t IS
“Referenced/synchronized 1” DB31–48, DBX60.4
IS “Referenced/synchronized 2” DB31–48, DBX60.5

41310 CEC_TABLE_WEIGHT[t]
MD number Weighting factor for beam sag compensation table [t]
Default setting: 1,0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7 Unit: (factor)
Data type: DOUBLE Applies from SW: 2.1
Meaning: The compensation value stored in the table [t] is multiplied by the weighting factor. When
choosing the weighting factor, ensure that the resulting compensation value does not ex-
ceed the maximum value (MD: CEC_MAX_SUM).
With [t] = index of compensation table (see MD: MM_CEC_MAX_POINTS)
If, for example, the weight of the tools on the machine or workpiece to be machined differ
greatly and affect the error curve by a change in amplitude, this can be corrected by chang-
ing the weighting factor. In beam sag compensation the weighting factor of the table can be
altered for specific tools or workpieces by the PLC user program or the NC program by
overwriting the setting data.
If, however, the progression of the characteristic curve is greatly changed because of differ-
ing weights, different compensation tables must be used.
Related to .... SD: CEC_TABLE_ENABLE[t] Enable evaluation of beam sag
compensation table t
MD: CEC_MAX_SUM Maximum compensation value for
beam sag compensation

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-115
Compensations (K3) 06.05
4.2 Description of setting data

43900 TEMP_COMP_ABS_VALUE
SD number Position-independent temperature compensation value
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after: immediately Protection level: MMCMD 9220 Unit:
mm or degrees
Data type: DOUBLE Applies from SW: 1.1
Meaning: SD: TEMP_COMP_ABS_VALUE defines the position-independent temperature com-
pensation value (see Fig. 2-2).
This value depends on the current temperature from the PLC (user program).
As soon as position-independent temperature compensation has been activated (MD:
TEMP_COMP_TYPE = 1 or 3), this additional compensation value is traversed by the ma-
chine axis.
SD irrelevant for ...... MD: TEMP_COMP_TYPE = 0 or 2
Related to .... MD: TEMP_COMP_TYPE Temperature compensation type
MD: COMP_ADD_VELO_FACTOR Velocity violation due to
compensation

43910 TEMP_COMP_SLOPE
SD number Gradient for position-dependent temperature compensation
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after: immediately Protection level: MMCMD 9220 Unit:
mm or degrees
Data type: DOUBLE Applies from SW: 1.1
Meaning: With position-dependent temperature compensation, the error curve of the temperature-
dependent actual-value deviation can often be approximated by a straight line. This straight
line is defined by a reference point P0 and a gradient tanb (see Fig. 2-2).
SD: TEMP_COMP_SLOPE defines the gradient tanb. This gradient can be changed by the
PLC user program as a function of the current temperature.
As soon as position-dependent temperature compensation is active (MD:
TEMP_COMP_TYPE = 2 or 3), the axis traverses the compensation value calculated for
the current actual position.
MD: COMP_ADD_VELO_FACTOR limits the maximum gradient tanbmax of the error curve.
This maximum gradient cannot be exceeded.
SD irrelevant for ...... MD: TEMP_COMP_TYPE = 0 or 1
Special cases, errors, ... When TEMP_COMP_SLOPE is greater than tanbmax, gradient tanbmax is used to calculate
... the position-dependent temperature compensation value internally. No alarm is output.
Related to .... MD: TEMP_COMP_TYPE Temperature compensation type
SD: TEMP_COMP_REF_POSITION Reference position for position-dependent
temperature compensation
MD: COMP_ADD_VELO_FACTOR Velocity violation due to compensation

Copyright © Siemens AG, 2005.


2/K3/4-116 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
4.2 Description of setting data

43920 TEMP_COMP_REF_POSITION
SD number Reference position for position-dependent temperature compensation
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after: immediately Protection level: MMCMD 9220 Unit:
mm or degrees
Data type: DOUBLE Applies from SW: 1.1
Meaning: With position-dependent temperature compensation, the error curve of the temperature-
dependent actual-value deviation can often be approximated by a straight line. This straight
line is defined by a reference point P0 and a gradient tanb (see Fig. 2-2).
SD: TEMP_COMP_REF_POSITION defines the position of the reference point P0. This
reference point position can be changed by the PLC user program as a function of the cur-
rent temperature.
As soon as position-dependent temperature compensation is active (MD:
TEMP_COMP_TYPE = 2 or 3), the axis also traverses the compensation value calculated
for the current actual position.
SD irrelevant for ...... MD: TEMP_COMP_TYPE = 0 or 1
Related to .... MD: TEMP_COMP_TYPE Temperature compensation type
SD: TEMP_COMP_SLOPE Gradient for position-dependent
temperature compensation

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/4-117
Compensations (K3) 06.05
4.2 Description of setting data

Notes

Copyright © Siemens AG, 2005.


2/K3/4-118 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
7.1 Interface signals

Signal Descriptions 5
There are no separate signals for compensation.
J

Example 6
– None –
J

Data Fields, Lists 7


7.1 Interface signals

DB number Byte.Bit Name Refer-


ence
General signals from NCK
10 108.7 NC Ready A2
Mode groupspecific
11, ... 6.3 Mode group ready
Channel-specific
21, ... 36.5 Channel ready
Axis/spindle-specific
31, ... 60.4 Referenced/synchronized 1 R1
31, ... 60.5 Referenced/synchronized 2 R1
31, ... 61.2 Axis ready

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/7-119
Compensations (K3) 12.01
06.05
7.2 Machine data

7.2 Machine data

Number Names Name Refer-


ence
General ($MN_...)
10050 SYSCLOCK_CYCLE_TIME System clock cycle G2
10070 IPO_SYSCLOCK_TIME_RATIO Factor for interpolator cycle G2
10082 CTRLOUT_LEAD_TIME Shift of setpoint transfer time
10083 CTRLOUT_LEAD_TIME_MAX Maximum permissible setting for shift of set-
point transfer time
10088 REBOOT_DELAY_TIME Reboot delay
18342 MM_CEC_MAX_ POINTS[t] Maximum number of interpolation points for
the beam sag compensation
Channel-specific ($MA_...)
20150 GCODE_RESET_VALUES Reset G groups K1
Axis-specific ($MC_ ... )
32000 MAX_AX_VELO Maximum axis velocity G2
32200 POSCTRL_GAIN Servo gain factor G2
32450 BACKLASH[n] Backlash
32452 BACKLASH_FACTOR[n] Weighting factor for backlash
32460 TORQUE_OFFSET Additional torque for electr. weight compensat.
32490 FRICT_COMP_MODE Type of friction compensation
32500 FRICT_COMP_ENABLE Friction compensation active
32510 FRICT_COMP_ADAPT_ENABLE [n] Friction compensation adaptation active
32520 FRICT_COMP_CONST_MAX [n] Maximum friction compensation value
32530 FRICT_COMP_CONST_MIN [n] Minimum friction compensation value
32540 FRICT_COMP_TIME[n] Friction compensation time constant
32550 FRICT_COMP_ACCEL1 [n] Adaptation acceleration value 1
32560 FRICT_COMP_ACCEL2 [n] Adaptation acceleration value 2
32570 FRICT_COMP_ACCEL3 [n] Adaptation acceleration value 3
32580 FRICT_COMP_INC_FACTOR Weighting factor of friction compensation value
with short traversing movements
32610 VELO_FFW_WEIGHT Feedforward control factor for speed feedfor-
ward control from SW 5.1 weighting factor for
feedforward control
32620 FFW_MODE Feedforward control mode
32630 FFW_ACTIVATION_MODE Activate feedforward control from program
32640 STIFFNESS_CONTROL_ENABLE Activate dynamic stiffness control
32642 STIFFNES_CONTROL_CONFIG Config. dynamic stiffness control
32644 STIFFNESS_DELAY_TIME Dyn. stiffness control: Delay
32650 AX_INERTIA Moment of inertia for torque feedforward
control
32652 AX_MASS Axis mass for torque feedforward control
32700 ENC_COMP_ENABLE[n] Interpolatory compensation active
32710 CEC_ENABLE Enabling of beam sag compensation
32711 CEC_SCALING_SYSTEM_METRIC System of measurement of sag compensation

Copyright © Siemens AG, 2005.


2/K3/7-120 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Compensations (K3)
7.3 Setting data

Number Names Name Refer-


ence
32720 CEC_MAX_SUM Maximum compensation value for beam sag
compensation
32730 CEC_MAX_VELO Maximum value of change for beam
sag compensation
32750 TEMP_COMP_TYPE Temperature compensation type
32760 COMP_ADD_VELO_FACTOR Velocity violation caused by
compensation
32800 EQUIV_CURRCTRL_TIME [n] Equivalent time constant of current control
loop
32810 EQUIV_SPEEDCTRL_TIME [n] Equivalent time constant of the speed control
loop
36200 AX_VELO_LIMIT Limit value for velocity A3
monitoring
36400 CONTOUR_TOL Tolerance band contour monitoring A3
36500 ENC_CHANGE_TOL Maximum tolerance for position actual value G2
switchover
36700 DRIFT_ENABLE Automatic drift compensation
36710 DRIFT_LIMIT Drift limit value for automatic drift
compensation
36720 DRIFT_VALUE Drift basic value
38000 MM_ENC_COMP_MAX_POINTS[n] Number of intermediate points with interpola-
tory compensation
38010 MM_QEC_MAX_POINTS Maximum number of compensation values for
QEC with neural networks
SIMODRIVE 611D machine data ($MD_...)
1004 CTRL_CONFIG Configuration structure IAD
1117 MOTOR_INERTIA Motor moment of inertia IAD

7.3 Setting data

Number Names Name Refer-


ence
General ($MN_ ... )
41300 CEC_TABLE_ENABLE[t] Enable evaluation of beam sag compensation
table
41310 CEC_TABLE_WEIGHT[t] Weighting factor for beam sag compensation
table
Axis-specific ($SA_...)
43900 TEMP_COMP_ABS_VALUE Position-independent
temperature compensation value
43910 TEMP_COMP_SLOPE Gradient for position-dependent temperature
compensation
43920 TEMP_COMP_REF_POSITION Reference position for position dependent
temperature compensation

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K3/7-121
Compensations (K3) 06.05
7.4 Alarms

7.4 Alarms
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, “Diagnostics Guide”
or in the Online help.
J

Copyright © Siemens AG, 2005.


2/K3/7-122 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Mode Groups, Channels, Axis Replacement


(K5)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/2-5
2.1 Mode groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/2-5
2.2 Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/2-6
2.2.1 Channel synchronization (program coordination) . . . . . . . . . . . . . . 2/K5/2-6
2.3 Axis/spindle replacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/2-14
2.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/2-14
2.3.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/2-17
2.3.3 Axis transfer to neutral state (release) . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/2-18
2.3.4 Transferring axis or spindle in the part program . . . . . . . . . . . . . . . . 2/K5/2-18
2.3.5 Automatic axis replacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/2-20
2.3.6 Examples of an axis replacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/2-21
2.3.7 Axis replacement with and without preprocessing stop . . . . . . . . . 2/K5/2-21
2.3.8 Axis replacement via axis container rotation . . . . . . . . . . . . . . . . . . . 2/K5/2-22
2.3.9 Axis replacement via PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/2-23
2.3.10 Frame with rotation and axis replacement . . . . . . . . . . . . . . . . . . . . 2/K5/2-25
2.3.11 Axis replacement via synchronized actions . . . . . . . . . . . . . . . . . . . 2/K5/2-27
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/3-29
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/4-31
4.1 General machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/4-31
4.2 Axis/spindle–specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/4-32
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/5-33
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-35
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-35
7.1 General machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-35
7.2 Channel machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-35
7.2.1 Basic machine data of channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-35
7.2.2 Auxiliary function settings of channel . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-37
7.2.3 Transformation definitions in channel . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-37
7.2.4 Channelspecific memory settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-39

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/i
06.05

7.3 Axis/spindle-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-40


7.4 Channel-specific setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-40
7.5 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-41
7.5.1 Mode group signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-41
7.5.2 Channel signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-41
7.6 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/K5/7-41
J

Copyright © Siemens AG, 2005.


2/K5/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
1 Brief Description

Brief Description 1
Mode groups A mode group is a collection of machine axes, spindles and channels which are
programmed to form a unit. A mode group can, in principle, be compared to an
independent NC control (with several channels). A mode group is made up of
those channels that always have to operate simultaneously in the same mode.

Note
In the standard case a mode group exists and is described in

References: /FB/, K1, “Mode Group, Channels, Program Operation Mode”

Channels Every channel has its own program decoding, block preparation and
interpolation functions. A channel can process a part program
independently.

Note
In the standard case a channel exists and is described in

References: /FB/, K1, “Mode Group, Channels, Program Operation Mode”

The processes in several channels of a mode group can be synchronized in the


parts programs.

Axis/spindle After control system power ON, an axis/spindle is assigned to a specific


replacement channel and can only be utilized in the channel to which it is assigned.
With the function “Axis/spindle replacement” it is possible to enable an
axis/spindle and to allocate it to another channel, that means to replace the
axis/spindle.
In SW 3 and higher, axis/spindle replacement can be activated both via the
parts program and via the PLC program.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/1-3
Mode Groups, Channels, Axis Replacement (K5) 06.05
1 Brief Description

Notes

Copyright © Siemens AG, 2005.


2/K5/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.1 Mode groups

Detailed Description 2
2.1 Mode groups

Mode groups A mode group combines NC channels with axes and spindles to form a
machining unit.
A mode group contains all those channels that always have to operate in the
same mode.
Any axis can be programmed in any channel of a certain mode group. A mode
group therefore corresponds to an independent, multiple-channel NC.

Example On large machine tools (machining centers), it may be necessary for a parts
program to be processed on one part of the machine while new workpieces to
be machined need to be clamped and set up on another part. Such tasks
usually require two independent NC controls.
With the mode group function, both tasks can be implemented on one NC
control with two mode groups because a different mode can be set for each
mode group (AUTOMATIC mode for the program processing, JOG for setting up
a workpiece).

Mode group The configuration of a mode group defines the channels, geometry axes,
assignment machine axes and spindles which it is to contain.
A mode group consists of one or several channels which must not be assigned
to any other mode group. Machine axes, geometry axes and special axes
themselves are assigned to these channels. A machine axis can only be
assigned to the channels of one mode group and can only traverse in this mode
group.
A mode group is configured with the following data:

S Channel-specific MD 10010: ASSIGN_CHAN_TO_MODE_GROUP


(channel valid in mode group)

S Configuration data of the channels

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-5
Mode Groups, Channels, Axis Replacement (K5) 06.05
2.2 Channels

Note
For more information about the first mode group, please refer to

References: /FB/, K1, “Mode Group, Channels, Program Operation Mode”

2.2 Channels

Note
A description of the terms Channel, Channel Configuration, Channel States,
Effects of Commands/Signals, etc. for the first channel can be found in

References: /FB/, K1, “Mode Group, Channels, Program Operation Mode”


For all other channels, this information applies, too.

2.2.1 Channel synchronization (program coordination)

General

Definition As an example, double-slide machining operations or real-time processes can


only be carried out if it is possible to synchronize processing in two channels.
The channels affected shall perform certain processing procedures
time-matched. To allow time-matched processing, the relevant channels must
be joined to form a synchronization group (mode group).
The channel synchronization is programmed only via the NC language. The
affected channels must be assigned to the same mode group.

Coordination If several channels are involved in the machining of a workpiece, it may be


necessary to synchronize program runs in the individual channels.
Special statements (commands) are provided for this program coordination. In
each case, they are listed in one block.

Copyright © Siemens AG, 2005.


2/K5/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.2 Channels

Table 2-1 Program coordination instructions

Instruction Meaning
SW 3

INIT(n,“identifier”,“q”) Selection of a program for processing in a cer-


tain channel
Acknowledgement mode: n (without) or
s (synchronous)
Name of program with path

Number of channel: Values 1 to 4 possible


CLEAR (identifier) Deletion of a program indicating the program
identifier
START (n,n,n,) Start of the programs selected
in other channels

Enumeration of channel numbers: Values 1 to


4 possible
WAITM (Mnr, n, n, n, n) Wait for mark number Mnr for program syn-
chronization in the specified channels n (chan-
nel used can be indicated, but this is optional).
The mark number must be identical in all chan-
nels.
Numbers 0 to 9 can be selected.
WAITE (n,n,n) Waiting for the program end of the channels
indicated
(do not indicate program coordination channel)
SW 4
SETM(Mnr1, Mnr2, ...Mnri) Set wait marks Mnr1, Mnr2, ...Mnri for condi-
tional wait with WAITMC() for the channel in
which SETM() is issued. The channel thus de-
clares to its partner channels that its wait char-
acteristic is fulfilled.
The command can be activated in synchro-
nized actions. Up to 10 marks (0–9) can be set
using one command.
CLEARM(Mnr1, Mnr2, ...Mnri) Delete wait marks Mnr1, Mnr2, ...Mnri for con-
ditional wait with WAITMC() for the channel in
which CLEARM() is issued. The channel thus
declares to its partner channels that its wait
characteristic is fulfilled.
The command can be activated in synchro-
nized actions. Up to 10 marks (0 – 9) can be
deleted using one command.
WAITMC(Mnr, n1, n2, ...) Conditional wait in continuous-path mode for
the specified wait characteristic Mnr from the
specified channels n1, n2, ... nk. The program
coordination channel can be indicated, but this
is optional. When processing continues after
the wait marks from the other channels in the
group have arrived, the wait marks of these
channels are deleted.

The number of marks depends on the CPU installed


CPU 572 ––> 2 channels ––> = 20
CPU 573 ––> 10 channels ––> =100

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-7
Mode Groups, Channels, Axis Replacement (K5) 06.05
2.2 Channels

SW 3

Procedure When a WAITM() call is reached, the axes in the current channel are
decelerated and wait until the mark number specified in the call arrives from the
other channels to be synchronized. The group is synchronized when the other
channels are also decelerated as they reach their WAITM() command. The
synchronized channels then continue operation.

Example of Channel 1:
program %100
coordination N10 INIT(2,“_N_200_MPF”,“n”)
N11 START(2)
. ; Processing in channel 1

N80 WAITM(1,1,2) ; Waiting for WAIT mark 1 in channel 1 and in channel 2


. ; Further processing in channel 1

N180 WAITM(2,1,2) ; Waiting for WAIT mark 2 in channel 1 and in channel 2


. ; Further processing in channel 1

N200 WAITE(2) ; Waiting for program end of channel 2


N201 M30 ; Program end channel 1, total end
.
.
Channel 2:
%200
. ; Processing in channel 2
N70 WAITM(1,1,2) ; Waiting for WAIT mark 1 in channel 1 and in channel 2
. ; Further processing in channel 2
N270 WAITM(2,1,2) ; Waiting for WAIT mark 2 in channel 1 and in channel 2
. ; Further processing in channel 2

N400 M30 ; Program end of channel 2

Copyright © Siemens AG, 2005.


2/K5/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.2 Channels

N70 N270
WAITM(1,1,2) WAITM(2,1,2)

Channel 2 N400
N10 ... ... ... ... ... Wait ... ...
%200 M30

Channel 1 N10 N11 N201


... ... Wait ... ... ... ... ... ... Wait
%100
M30

N80 N180 N200


START (2) WAITM(1,1,2) WAITM(2,1,2) WAITE(2)

Start START (2) M1 M2 End Time

Fig. 2-1 Program runs illustrated by example of coordination with WAITM(), unconditional wait

References: /PA/, Programming Guide

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-9
Mode Groups, Channels, Axis Replacement (K5) 06.05
2.2 Channels

SW 4

Objective Decelerating and waiting must take place only in cases where not all the
channels to be coordinated have set their mark numbers for the purpose of
synchronization. Conditional waiting.
The instants in time for generating wait marks and the conditional wait calls are
decoupled.
For the purpose of inter-channel communication, marks may even be set when
waiting and decelerating are not intended at all. No WAITMC() command. In this
case, the channel marks settings remain valid after execution of RESET and
NC Start.

Preconditions for To utilize conditional wait with WAITMC() and reduced wait times, the following
conditional wait conditions must be fulfilled:

S Continuous-path mode G64 must be set


S Look Ahead function must be active
S Exact stop (G60, G09) must not be set.
If exact stop is selected, waiting with WAITMC() corresponds to waiting with
WAITM() from SW 3.

Procedure A) Starting with the motion block before the WAITMC() call, the wait marks of
the other channels to be synchronized are checked. If these have all been
supplied, then the channels continue to operate without deceleration in
continuous-path mode. No wait. The path velocity remains unchanged.
B) If at least one wait mark from one of the channels to be synchronized is
missing, then the axes start to decelerate from path velocity down to exact stop
velocity. A check is now performed in every interpolation cycle to see whether
the missing wait marks of the channels to be coordinated have arrived in the
meantime. If this is the case, the axis is accelerated up to path velocity again
and machining continued.
C) If the marks to be supplied by the channels to be synchronized have not
arrived by the time exact stop velocity is reached, the machining operation is
halted until the missing marks appear. When the last required mark appears, the
axes are accelerated from standstill up to path velocity.
The following table shows the sequences of events for cases A) – C):

Copyright © Siemens AG, 2005.


2/K5/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.2 Channels

Table 2-2 Deceleration response to conditional wait with WAITMC()

With WAITMC Procedure Velocity curve


A) Wait marks of all channels have al- Continued operation with no decelera- v
ready arrived tion
Path velocity

WAITMC

Exact stop velocity t

B) All wait marks arrived during decel- Deceleration ceases immediately v


eration from path velocity down to ex- when last expected wait mark ap-
act stop velocity pears. The axes are accelerated back Path velocity
up to path velocity.

WAITMC
t
Exact stop velocity

C) The last wait mark does not arrive Brake down to exact stop velocity. v
until exact stop velocity has been When the last required mark appears,
reached. the axes are accelerated from exact Path velocity
stop velocity up to path velocity.
Zero
speed
WAITMC

Exact stop velocity t

Example of The example is schematic and shows only those commands that are relevant to
conditional wait in the synchronization process.
continuous Channel 1:
path mode
%100
N10 INIT(2, “_N_200_MPF”,“n”) ; Select partner program channel 2
N11 INIT(3, “_N_300_MPF”,“n”) ; Select partner program channel 3
N15 START(2, 3) ; Start programs in channels 2, 3
... ; Processing in channel 1
N20 WAITMC(7, 2, 3) ; Wait conditionally for mark 7 from channels
; 2 and 3
... ; Processing continues in channel 1
N40 WAITMC(8, 2) ; Wait conditionally for mark 8 from channel 2
... ; Processing continues in channel 1
N70 M30 ; End of channel 1
Channel 2:
%200
N200 ; Processing in channel 2
N210 SETM(7) ; Channel 2 sets wait mark 7
... ; Processing continues in channel 2
N250 SETM(8) ; Channel 2 sets wait mark 8
N260 M30 ; End of channel 2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-11
Mode Groups, Channels, Axis Replacement (K5) 06.05
2.2 Channels

Channel 3:
%300
N300 ; Processing in channel 3
...
N350 WHEN <condition> DO SETM(7)
; Set wait mark in a synchronized
; action
; Processing continues in channel 3
N360 M30 ; End of channel 3

Condition fulfilled: WHEN <condition> DO SETM(7)


Channel 3
N N N
300 350 360

7
SETM(7) SETM(8)
Channel 2

N N N N
200 210 250 260

7 8
Channel 1

N10 N11 N15 N20 N40 N70

WAITMC(7,2,3) WAITMC(8,2)
v

Path velocity No deceleration

Channel 1 t

Fig. 2-2 Conditional wait involving three channels (schematic)

WAITMC SW 5.3 WAITMC and SETM (in Synact) can be synchronized with SW 5.3 and higher.
and higher
Note
When G64 is active, a WAITMC(1,2,3) block does not generate a separate
block, but is appended to the preceding block. A drop in velocity must be
prevented when continuous-path mode is active. A WAITMC is therefore
fulfilled if the preceding block is halted, e.g. by a read-in disable.

Copyright © Siemens AG, 2005.


2/K5/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
11.02
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.2 Channels

Example M555 is output in channel 3 while the axis is traversing and generates a read-in
of WAITMC and disable (RID). As the WAITMC is appended to BLOCK N312, the wait mark is
read-in disable set and processing in channel 2 continues.
Channel 2:
N112 G18 G64 X200 Z200 F567 ; Processing in channel 2
N120 WAITMC(1,2,3) ; Channel 2 sets wait marks 1, 2 and 3
... ; Further processing in channel 2 because
... ; WAITMC is appended to block N312.
... ; Further processing in channel 2
N170 M30 ; End of channel 2
Channel 3: Read-in disable M555 during traversal
N300 ; Processing in channel 3
N312 G18 G64 D1 X180 Z300 M555
N320 WAITMC(1,2,3) ; Wait because of RID

Wait mark 1 is set in channels 2 and 3


Channel 2 continues processing and program execution in channel 3 is halted
due to the read-in disable.
This response can be transferred to all available channels.

Block change in With block change condition IPOBRKA, when the wait flag is received, the next
response to block is loaded instantaneously and the axes started, provided none of the
WAITMC SW 6.4 other block end conditions prevent the block change. Braking only occurs if the
and higher flag is not yet reached, or another block end condition prevents the block
change.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-13
Mode Groups, Channels, Axis Replacement (K5) 06.05
2.3 Axis/spindle replacement

2.3 Axis/spindle replacement

2.3.1 Introduction

General An axis/spindle is firmly allocated to a certain channel via the machine data.
The axis/spindle can be used in this channel only.

Definition The “Axis/spindle replacement” function allows an axis or spindle to be enabled


and assigned to another channel, in other words, to be replaced.
Since the spindle function is subordinated to the axis function, only the term
“Axis replacement” is used in the following.

Axis types According to the channel, we distinguish four types of axes: The reactions at
axis change depend on the settings in MD 30552: AUTO_GET_TYPE.
Channel axis
A channel axis can be programmed in the parts program and traversed in all
modes.
PLC axis
A PLC axis can only be positioned via the PLC.
If a PLC axis is programmed in the parts program
If MD30552: AUTO_GET_TYPE = 0, an alarm will be output.
If MD30552: AUTO_GET_TYPE = 1, an automatic GET will be generated.
If MD30552: AUTO_GET_TYPE = 2, an automatic GETD will be generated.
Neutral axis
If a neutral axis is programmed in the parts program
If MD30552: AUTO_GET_TYPE = 0, an alarm will be output.
If MD30552: AUTO_GET_TYPE = 1, an automatic GET will be generated.
If MD30552: AUTO_GET_TYPE = 2, an automatic GETD will be generated.
Axis in another channel
This is actually not a proper type of axis. It is the internal state of a replaceable
axis. If this happens to be active in another channel (as channel, PLC or neutral
axis).
If an axis is programmed in another channel in the parts program:
If MD30552: AUTO_GET_TYPE = 0, an alarm will be output.
If MD30552: AUTO_GET_TYPE = 1, an automatic GET will be generated.
If MD30552: AUTO_GET_TYPE = 2, an automatic GETD will be generated.

Copyright © Siemens AG, 2005.


2/K5/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.3 Axis/spindle replacement

Note
Check and, if necessary, correct MDs 20110: RESET_MODE_MASK and MD
20112: START_MODE_MASK control the behavior of axis assignments in
RESET, during booting and part program start. The settings for channels
between which axes are to be replaced must be selected such that no illegal
constellations (alarms) are generated in conjunction with
MD 30552:AUTO_GET_TYPE.
References: /FB/, K2, ... “Actual-value system for workpiece”, ...

Prerequisites To allow an axis to be replaced, the following must be defined via


channel-specific MD 20070: AXCONF_MACHAX_USED
(machine axis number valid in channel)
and via
axis-specific MD 30550: AXCONF_ASSIGN_MASTER_CHAN
(initial setting of the channel for axis replacement):
1) In which channel can the axis be used and replaced?
2) To which channel shall the axis be allocated with power ON?

Example With 6 axes and 2 channels, the 1st, 2nd, 3rd and 4th axis in channel 1 and the
5th and 6th axis in channel 2 shall be used. It shall be possible to replace the
1st axis, this shall be allocated to channel 2 after power ON.
The channel-specific machine data must be allocated with:
CHANDATA(1)
MD 20070: AXCONF_MACHAX_USED=(1, 2, 3, 4, 0, 0, 0, 0)
CHANDATA(2)
MD 20070: AXCONF_MACHAX_USED=(5, 6, 1, 0, 0, 0, 0, 0)
The axis-specific machine data must be allocated with:
MD 30550: AXCONF_ASSIGN_MASTER_CHAN[AX1]=2

Displays The current type of axis and the current channel for this axis will be displayed in
an axial PLC interface byte.
See Section “Axis replacement via the PLC”.

Note
If an axis is not valid in the channel selected, this is displayed by inversion of
the axis name on the MMC/HMI.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-15
Mode Groups, Channels, Axis Replacement (K5) 03.02
05.05
06.05
2.3 Axis/spindle replacement

Options for the An axis can be replaced from the part program and also for a tool change via
axis replacement motion synchronized actions. The axis is replaced in the currently enabled
channel and, depending on the respective axis type, the axis replacement
behavior can be set via MD 10722: AXCHANGE_MASK.
The following options are available for an axis replacement:

S Programming in the GET/GETD part program


Transfer an axis or spindle with the GET command or directly from another
channel with GETD.

S Automatic axis replacement through programming of axis name


S Axis replacement with and without preprocessing stop and existing
synchronization between preprocessing and main run.

S Axis replacement via axis container rotation with implicit GET/GETD.


S Axis replacement through PLC via the VDI interface to the NCK.
S Frame with rotation and axis replacement in the JOG mode via
MD 32074: FRAME_OR_CORRPOS_NOTALLOWED can be set.

S Axis replacement via synchronized actions, $AA_AXCHANGE_TYP[axis].

Varying the axis The machine data MD 10722: AXCHANGE_MASK can be used to influence the
replacement as of release time of axes or spindle as follows:
SW 5.3
S Bit 0 = 1 Automatic axis replacement also occurs between
two channels if WAITP has brought the axis
to a neutral state (response as before).

S Bit 1 = 1 With effect from SW 5.3 all the axes fetched with GET or
GETD into the axis container can only be replaced again
after an axis container rotation.

S Bit 2 = 1 With effect from SW 6.4, when an intermediate block is


inserted the main run will check whether or not reorganization
is required. Reorganization is only required if the axis states of
this block do not match the current axis states.

S Bit 2 = 1 With effect from SW 6.4, when an intermediate block is


inserted the main run will check whether or not reorganization
is required. Reorganization is only required if the axis states of
this block do not match the current axis states.

S Bit 3 = 1 With effect from SW 7.3 an axis replacement request via the
VDI for each axis that is not exclusively controlled from the
PLC is ignored by the NC and the VDI signal NCK ⇒ PLC
IS “Axis replacement possible” (DB31, ... DBX68.5) is always
set to zero. So that the axis can be traversed exclusively as
PLC axis via function block FC18,
Bit4 = 1must be set in MD 30460: BASE_FUNCTION_MASK.
If Bit4 = 0, then the axis can be used by the NC and the PLC.

Copyright © Siemens AG, 2005.


2/K5/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.3 Axis/spindle replacement

2.3.2 Description

Possible The following diagram shows which axis replacement possibilities are available.
transitions

ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
Neutral axis

ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
Axis (spindle)

ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
Channel 1 Channel 2

ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
G
R

Axis in another channel


ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
G R

ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
Axis (spindle)
After power ON
GD
Axis (spindle)

R0
BP
Rn
BP

BP
Rn
Axis (spindle)

PLC axis

R RELEASE(AX ...) from NC program G GET (AX ...) from NC program

RESET key

R0 Release in neutral state via PLC BP GET via PLC

Rn Release to a spec. channel via PLC GD GET directly from NC program

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-17
Mode Groups, Channels, Axis Replacement (K5) 06.05
2.3 Axis/spindle replacement

2.3.3 Axis transfer to neutral state (release)

RELEASE Notation in parts program:


RELEASE (axis name, axis name, SPI (spindle no.), ....)

Note
The axis name corresponds to the axis allocations in the system and is either

S AX1, AX2, AX3, ... or

S the name assigned via MD 10000: AXCONF_MACHAX_NAME_TAB

With RELEASE (axis name, ...) a dedicated NC block will always be generated.
Exception: The axis is already in the neutral state.
The RELEASE command is interrupted if

S the prerequisites for axis replacement are not fulfilled


(MD 20070: AXCONF_MACHAX_USED and
MD 30550: AXCONF_ASSIGN_MASTER_CHAN)

S the axis is involved in a transformation


S the axis is within an axis network

Note

If the RELEASE command is applied to a gantry master axis, all following axes
are released, too.

If there is ... and ... then ...


the axis is released, but not ... a RESET takes place via ... the axis is allocated
yet transferred with GET ... the operator panel front ... again to the last responsi-
ble channel.

2.3.4 Transferring axis or spindle in the part program

Options The release time and the behavior of an axis or spindle replacement is
influenced in the part program as follows:

S Programming with the GET command in the same channel


S Directly from another channel through programming with GETD
References: /PGA/, “Axis replacement, spindle replacement (RELEASE,
GET, GETD)”

Copyright © Siemens AG, 2005.


2/K5/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.3 Axis/spindle replacement

With GET GET (axis name, axis name, SPI (spindle no.), ...)
command
The takeover of an axis is delayed if

S the axis is changing the measuring system


S servo disable is being processed for the axis (transition from control in
follow-up/stop and vice versa)

S the axis/spindle disable is set


S the axis has not yet been enabled by the other channel with RELEASE
S interpolation for the axis has not yet been completed (except for a
speed-controlled spindle)
With GET (axis name, ...) a separate NC block with search stop is always
generated.

Exception: S If the axis is already a channel axis, then no block


is generated.

S If the axis is synchronous, (i.e. it has not been swapped to


another channel in the meantime or received a signal from the
PLC) no extra block is generated either.

With the GETD With GETD (GET Directly), an axis is fetched directly from another channel.
command That means that no suitable RELEASE must be programmed for this GETD in
another channel. In addition, another channel communication must be created
(e.g. wait marks), since the supplying channel is interrupted with GETD1. If the
axis is a PLC axis, replacement is delayed until the PLC has enabled the axis.

Caution
! This programming command interrupts the program run in the channel in which
the required axis is currently to be found! (REORG).
Exception: The axis is at the time in a neutral state.

Note

If there is ... and ... then ...


the GET command has ... a RESET takes place in ... the channel does not try
been programmed, transfer the channel ... any longer to take over the
is delayed ... axis.

An axis assumed with GET remains allocated to this channel even after a key
RESET or program RESET. The axis can be replaced by programming
RELEASE and GET again or will be assigned to the channel defined in
MD 30550: AXCONF_ASSIGN_MASTER_CHAN.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-19
Mode Groups, Channels, Axis Replacement (K5) 06.05
2.3 Axis/spindle replacement

2.3.5 Automatic axis replacement

Automatically Depending on the setting in MD 30552: AUTO_GET_TYPE, a GET or GETD


through command is automatically generated when a neutral axis is programmed again.
programming of
axis name

Example 1 N1 M3 S1000
N2 RELEASE (SPI(1)) ;=>Transition to neutral state
N3 S3000 ; New speed for released spindle
; MD AUTO_GET_TYPE =
; 0 => Alarm “Wrong axis type” is output
; 1 => GET (SPI(1)) is generated.
; 2 => GETD (SPI(1)) is generated.

Example 2 ; (axis 1 = X)
N1 RELEASE (AX1) ;=>Transition to neutral state
N2 G04 F2
N3 G0 X100 Y100: ; Motion of released axis
; MD AUTO_GET_TYPE =
; 0 => Alarm “Wrong axis type” is output
; 1 => GET (AX1) is generated.
; 2 => GETD (AX1) is generated.

Example 3 ; (axis 1 = X)
N1 RELEASE (AX1) ;=>Transition to neutral state
N2 G04 F2
N3 POS (X) = 100: ; Positioning the released axis:
; MD AUTO_GET_TYPE =
; 0 => Alarm “Wrong axis type” is output
; 1 => GET (AX1) is generated. *)
; 2 => GETD (AX1) is generated. *)
*) If the axis is still synchronized, no dedicated block will be generated.

Note
If an automatic GETD is set, the following must be observed:
1. The channels may influence one another.
(REORG if axis is taken away)
2. With simultaneous access of several channels to an axis it is not known
which channel will have the axis at the end.

Copyright © Siemens AG, 2005.


2/K5/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
07.02
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.3 Axis/spindle replacement

2.3.6 Examples of an axis replacement

Assumption With 6 axes and 2 channels, the 1st, 2nd, 3rd and 4th axis in channel 1 and the
5th and 6th axis in channel 2 shall be used. It shall be possible to replace the
2nd axis between the channels and to allocate to channel 1 after power ON.

Task The task is subdivided into the following areas:

S Machine data allocation so that the prerequisites for axis replacement are
given.

S Programming of axis replacement between channel 1 and channel 2.

Fulfillment of Assignment of the channel-specific


preconditions MD 20070: AXCONF_MACHAX_USED[1]=(1, 2, 3, 4, 0, 0, 0, 0)
MD 20070: AXCONF_MACHAX_USED[2]=(5, 6, 2, 0, 0, 0, 0, 0)
Assignment of the axis-specific
MD 30550: AXCONF_ASSIGN_MASTER_CHAN[AX2]=1

Program in channel 1 Program TAUSH2 in channel 2


...
RELEASE (AX2)
; Enable axis AX2 ...
INIT (2, “_N_MPF_DIR\_N_TAUSH2_MPF”, “S”) WAITM (1,1,2)
; Select program TAUSCH2 in channel 2 ; Wait for wait mark 1 in channels 1 and 2
START (2) GET (AX2)
; Start program in channel 2 ; Transfer axis AX2
WAITM (1,1,2) ... ;
; Wait for wait mark 1 in channels 1 and 2 ... ; Further sequence of operations after axis
... ; ; replacement
... ; Further sequence of operations after axis ... ;
; replacement RELEASE (AX2)
... ; ; Release for further axis replacement
... ; ... ;
M30 M30

2.3.7 Axis replacement with and without preprocessing stop

As of SW 6.4 Axis replacement without a preprocessing stop


Instead of a GET block with a preprocessing stop, this GET request only
generates an intermediate block. In the main run, when this block is executed,
the system checks whether the states of the axes in the block match the current
axis states. If they do not match, forced reorganization can be triggered.
The following states of an axis or positioned spindle are checked:

S The mode for the axis or positioned spindle


S The setpoint position

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-21
Mode Groups, Channels, Axis Replacement (K5) 03.02
05.05
06.05
2.3 Axis/spindle replacement

The following states of a spindle in speed mode are checked:

S Speed mode
S Spindle speed
S Direction of rotation
S Gear stage
S Master spindle at constant cutting rate.
Reorganization of the following axes is forced in any case.
For a programming example for the activation or an axis replacement without
preprocessing stop in the part program, please see:
References: /PGA/, “Axis replacement, spindle replacement (RELEASE,
GET, GETD)”

Exception Axis replacement with a preprocessing stop


Without a GET or GETD instruction having previously occurred in the main run,
the spindle or the axis can be made available again by RELEASE(axis) or
WAITP(axis), for example. A subsequent GET leads to a GET with a
preprocessing stop.

2.3.8 Axis replacement via axis container rotation

Release axis When an axis container rotation is activated, all the axis container axes that can
container rotation be assigned to the channel are assigned to the channel by means of implicit
GETs or GETDs. The axes can only be released again after the axis container
rotation.

Note
This response does not apply if an axis in main run axis state (e.g. the PLC
axis) is to take part in an axis container rotation, as this axis would have to give
up this state for the axis container rotation. For further explanations on the axis
replacement of channel axes with axis container, please see:
References: /FB/, B3, “Several operator panel fronts and NCUs”

Example Axis container rotation with implicit GET or GETD


Action channel 1:
axctswe(CT 1) ; gets spindle in channel 1 and allows axis container rotation
Action channel 2:
SPOS = 180 positioned
Exception: The spindle is used in both channels and is also an axis in
axis container CT 1.

Copyright © Siemens AG, 2005.


2/K5/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.3 Axis/spindle replacement

2.3.9 Axis replacement via PLC

S The type of an axis can be determined at any time via an interface byte
(PLC axis, channel axis, neutral axis)

TYPE display NCK => PLC (DB31– ..., DBB68)


Bit7 Bit0
0 0 0 0 0 0 0 0

NC axis in channels 1–10


New type requested from PLC
Axis replacement possible
Neutral axis/spindle*
PLC axis/spindle

Ex. 1: Channel axis K2


0 0 0 0 0 0 1 0

Ex. 2: PLC axis. Interpolation and interface processing in K1


1 0 0 0 0 0 0 1

Ex. 3: Neutral axis. Interface processing in K3


0 1 0 0 0 0 1 1

* neutral axis/spindle also includes the command/reciprocating axis

NCK=>PLC, DBB68 PLC=>NCK, DBB8

After power ON 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0

RELEASE (K1) 0 1 1 0 0 0 0 1

0 1 0 0 0 0 0 1
Time
GET (K2) 0 0 1 0 0 0 1 0

0 0 0 0 0 0 1 0

Fig. 2-3 Changing an axis from K1 to K2 via parts program.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-23
Mode Groups, Channels, Axis Replacement (K5) 06.05
2.3 Axis/spindle replacement

S The PLC can request and traverse an axis at any time and in any operating
mode.

Specifying TYPE PLC => NCK (DB31– ..., DBB8)


Bit7 Bit0
0 0 0 0 0 0 0 0

NC axis is to go in channels 1–10


PLC: Request new type
NC reacts to rising edge

Axis is to become PLC axis

In principle, the PLC must set the signal “Request new type”. It is deleted again
after change. This also applies to a channel change with GET and RELEASE.

S The PLC can change an axis from one channel to another.


PLC axes and PLC spindles are traversed via special function modules in the
basic PLC program.
FC15: POS_AX Positioning of linear and rotary axes
FC16: PART_AX Positioning of indexing axes
FC18: SpinCtrl Spindle control

Examples The following diagrams show the IS signal sequences for changing an NC axis
to a PLC axis and transferring an NC axis to a neutral axis through the PLC.

NCK=>PLC, DBB68 PLC=>NCK, DBB8

After power ON 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0

New TYPE (PLC) 1 0 0 1 0 0 0 0

0 0 1 1 0 0 0 1 1 0 0 1 0 0 0 0
Time
0 0 1 1 0 0 0 1 1 0 0 0 0 0 0 0

1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0

Fig. 2-4 Changing an NC axis to a PLC axis

Copyright © Siemens AG, 2005.


2/K5/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
05.05
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.3 Axis/spindle replacement

NCK=>PLC, DBB68 PLC=>NCK, DBB8

After power ON 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0

New TYPE (PLC) 1 0 0 1 0 0 0 0

0 0 1 1 0 0 0 1 1 0 0 1 0 0 0 0

1 0 0 0 0 0 0 0
Time

1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0

New TYPE (PLC) 0 0 0 1 0 0 0 0

1 0 1 1 0 0 0 1 0 0 0 1 0 0 0 0

0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0

Fig. 2-5 Changing an NC axis to a neutral axis through the PLC.

PLC axis only for This axis replacement can only be requested via the VDI interface by setting Bit
PLC controlled 3 to one in machine data MD 10722: AXCHANGE_MASK. The axis
axes replacement then refers exclusively to axes controlled on the PLC. For all other
axes, IS “Axis replacement possible” (DB31, ...,DBX68.5) is always set to zero.
The following functions are permitted for a PLC axis possible in this way:

S JOG movements of the axis via traversing keys or handwheel,


S Axis homing,
S Traversing of the axis via the function block FC18,
S Traversing via static synchronized action, see
/FB2/ P2, Positioning axes, “Autonomous single-axis operations”,

S Traversing as oscillating axis with required Oscillation option, see


/FB2/ P5, “Oscillation”.

2.3.10 Frame with rotation and axis replacement

Function In the JOG mode, an active geometry axis linked via a frame with rotation can
be traversed as PL axis or a command axis traversed via static synchronized
actions. Bit 10=1 must be set in machine data
MD 32074: FRAME_OR_CORRPOS_NOTALLOWED. The reposition behavior
of this axis is influenced via Bit 11.

Note
An axis can only become a PLC or command axis within the channel, an axis
replacement in another channel is not allowed.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-25
Mode Groups, Channels, Axis Replacement (K5) 05.05
06.05
2.3 Axis/spindle replacement

All axes influenced by a rotating frame are considered as a geometry axis


grouping and handled collectively. In this way, all axes of the geometry axis
grouping are either

S assigned to the NC program or


S all axes are neutral or
S are active as main run axes (PLC, command, or oscillation axis).
For example, if one axis is programmed with a WAITP, waiting is performed for
all further axes of the geometry axis grouping, so that these axes can
collectively become neutral axes. If one of the axes becomes a PLC axis in the
main run, then all other axes of this geometry axis grouping become neutral
axes.

Mode change The axis movement must have been completed before switching from JOG
mode to another mode and the axis must have at least become a neutral axis.
If this is not the case when an operating mode change is triggered, the
operating mode change is not carried out and alarm 16908 is signaled.

Supplementary Interpolating axes may not be linked to other axes via a frame with rotation. This
condition is always the case when an axis influenced by a frame with rotation is currently
programmed in the NC program. In this case, IS “Axis replacement possible”
(DB31, ...DBX68.5) is reset at the VDI interface NCK → PLC.

Example In the NC program, ROT Z45 actively links the Z axis with a rotating frame and
therefore no axis replacement is possible for the X axis and Y axis. Therefore,
the following signals are set on the VDI interface:
IS “Axis replacement possible” (DB31, ...DBX68.5) = 0 and
IS “Axis replacement possible” (DB32, ...DBX68.5) = 0
Therefore, an axis replacement is not performed when the X or Y axis is
programmed in the NC program and a block with this programming is currently
being interpolated.
Depending on the setting in MD 32074:
FRAME_OR_CORRPOS_NOTALLOWED Bit 10, an axis replacement can be
performed in the JOG mode. For
Bit10 = 0: Even when a block with such programming has been
interrupted in JOG, no axis replacement is possible.
Bit10 = 1: An axis replacement is possible (both IS are set to 1)
If a block, in which an axis influenced by a
rotating frame is programmed, the
corresponding axis is repositioned depending on bit 11
of this machine data MD 32074.
If an axis replacement is possible, Bit10=1, then the following is valid for
Bit11 = 0: The PLC or command axis movement is considered
as a JOG movement and after a
mode change back to AUTOMATIC, repositioned
at the interrupt position (AUTO-REPOS).
Bit11 = 1: The end position of the PLC or command axis movement
is accepted as for a mode change and
the geometry axes repositioned in accordance with the
rotation.

Copyright © Siemens AG, 2005.


2/K5/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
05.05
06.05 Mode Groups, Channels, Axis Replacement (K5)
2.3 Axis/spindle replacement

2.3.11 Axis replacement via synchronized actions

Function In a certain channel, an axis can be requested with GET/GETD for command
axis movements of, e.g. swivel or gripper arms as action of a motion
synchronized action, and released with RELEASE for an axis replacement.
With which axis type and interpolation right a possible axis replacement is to be
performed, results from the system variable $AA_AXCHANGE_TYP[axis].
Whether the axis can also be replaced is displayed via the system variable
$AA_AXCHANGE_STAT[axis].
References: /FBSY/ “Actions in synchronized actions”
/PGA/, “Motion synchronized actions”

Move axis to An axis can be transferred directly between channels to a certain channel with
another channel the NC language command AXTOCHAN via synchronized actions and in the
part program. This axis does not have to be the same channel and it is not
necessary that this channel be in possession of the current interpolation right for
the axis. For further information about the programming, please see:

Note
The axis must be assigned to the channel via machine data.
An axis controlled exclusively by the PLC cannot be assigned
to the NC program. Bit4 = 0 can be used to change the axis-specific MD 30460:
BASE_FUNCTION_MASK, so that an axis can also be used by the NC.

References: /PGA/, “Flexible NC programming”


J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/2-27
Mode Groups, Channels, Axis Replacement (K5) 04.00
06.05
2.3 Axis/spindle replacement

Notes

Copyright © Siemens AG, 2005.


2/K5/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
3 Supplementary Conditions

Supplementary Conditions 3
“Mode group” On SINUMERIK 840D up to 10 mode groups.
function

Number of Up to 10 channels are available on the SINUMERIK 840D control.


channels

“Axis/spindle This function is available for


replacement”
function
S SINUMERIK 840D with NCU 572/573, SW2 and higher

Change to the If an axis is changed from PLC axis, neutral axis or axis in another channel to
channel axis the axis type channel axis, a synchronization must take place.
With this synchronization,
– the current positions are assumed
– the current speed and gear stage is assumed with spindles.
It is therefore obligatory to perform a feed stop which interrupts the active path
movement.
If the axis is transferred with GET, this transition is clearly defined by the parts
program.
If the axis is allocated by the PLC, the program section in which the change
takes place is not clearly foreseeable.
(Except by a separate user-specific NC <–> PLC logic)
For this reason, the change to the channel axis is delayed in the following
conditions.

S Path mode is active (G64+axes programmed)


S Thread cutting/tapping is active (G33/G331/G332)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/3-29
Mode Groups, Channels, Axis Replacement (K5) 06.05
3 Supplementary Conditions

Change from a The change of a channel axis to a neutral axis or PLC axes cannot be
channel axis performed during an active path operation.
With RELEASE this is caused by the fact that RELEASE must be located in a
separate NC block.
If the PLC changes the axis type, a REORG is triggered internally. Therefore,
the change with the listed program conditions is delayed.

Block search During block search with calculation, all GET, GETD or RELEASE blocks are
stored and output after the next NC Start.
Exception:
Blocks which are mutually exclusive are deleted.
Example:
N10 RELEASE (AX1) Blocks are deleted
N40 GET (AX1) ”
N70 Destination
J

Copyright © Siemens AG, 2005.


2/K5/3-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
03.02
05.05
07.02
06.05 Mode Groups, Channels, Axis Replacement (K5)
4.1 General machine data

Data Descriptions (MD, SD) 4


4.1 General machine data

10722 AXCHANGE_MASK
MD number Parameterization of the axis replacement response
Default setting: 0 Minimum input limit: 0 Maximum input limit: 0xFFFF
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 5.3 extended to
Bit 2 as of SW 6.4, Bit 3 as of SW 7.3
Meaning: This machine data can be used to change the axis replacement response.
Bit = 1
Bit 0 an automatic axis replacement via channels also occurs if
WAITP has brought the axis to a neutral state.
Bit 1 an axctswe fetches all the axis container axes that can be assigned to the channel
by means of implicit GETs or GETDs.
An axis can only be replaced again after the axis container rotation.
Bit 2 a GET generates an intermediate block without a preprocessing stop and it is only
in the main run that the system checks whether reorganization is required.
Bit 3 an axis replacement request via VDI interface for each axis not
exclusively controlled by the PLC is ignored by the NC, when via
MD 30460: BASE_FUNKTION_MASK, Bit 4 = 1 is set. The VDI signal
IS “Axis replacement possible” (DB31, ...,DBX68.5) is then always set to zero.
Bit 3 = 0: An axis replacement can be requested from the PLC for each axis.
Related to .... MD: AXCONF_MACHAX_USED

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/4-31
Mode Groups, Channels, Axis Replacement (K5) 06.05
4.2 Axis/spindle-specific machine data

4.2 Axis/spindle-specific machine data

30460 BASE_FUNCTION_MASK
MD number Axis functions
Default setting: 0x00 Minimum input limit: 0 Maximum input limit: 0xFF
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies as of SW 2 Bit 4 extended SW 7.3
Meaning: Axis–specific functions can be set with this machine data.

The following bits are assigned for this bit–coded machine data:
Bit 0
== 0: Control axis is not allowed
== 1: Control axis is allowed. The axis traverse in speed mode when the
signal PLC ! NCK IS “Control axis” (DB31, ... DBX24.1) = 1 is set.

Bit 1
reserved for “Control axis”
Bit 2
reserved for “Control axis”
Bit 3
reserved for “Control axis”

Bit 4 as of SW 7.3
== 0: The axis can be used by the NC and PLC.
== 1: The axis is exclusively a PLC–controlled axis.

Related to .... MD: AXCHANGE_MASK

30550 AXCONF_ASSIGN_MASTER_CHAN
MD number Reset position of channel for axis change
Default setting: 0 Minimum input limit: 0 Maximum input limit: 2
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: BYTE Applies as of SW 2
Meaning: Definition of the channel to which the axis is allocated after power ON
Application example(s) With the function “Axis/spindle replacement”, a machine axis must be allocated to a chan-
nel after power on.
AXCONF_ASSIGN_MASTER_CHAN[AX2]=1 ⇒ axis AX2 is assigned to channel 1 after
power on.
Related to .... MD: AXCONF_MACHAX_USED

30552 AUTO_GET_TYPE
MD number Definition for automatic GET
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2 Unit:
Data type: BYTE Applies as of SW 3
Meaning: 0=no automatically generated GET⇒Alarm in response to programming error.
1=a GET is output when GET is generated automatically.
2=a GETD is output when GET is generated automatically.
Related to ....

Copyright © Siemens AG, 2005.


2/K5/4-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
5 Signal Descriptions

Signal Descriptions 5
DB31, ...
DBB8 Axis/spindle replacement
Data Block Signal(s) to channel (PLC –––> NCK)
Edge evaluation: yes Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The current axis type and currently active channel for this axis must be specified.
transition 0 –––> 1 With axis replacement by the PLC, meaning of signal to axis/spindle DB31, ... DBB8:
Bit 0: A Assign NC axis/spindle to channel
Bit 1: B ...
Bit 2: C ...
Bit 3: D Assign NC axis/spindle to channel
Bit 4: Activation, assignment by positive edge
Bit 5: –
Bit 6: –
Bit 7: Request PLC axis/spindle
Signal state 0 or signal
transition 1 –––> 0
Corresponding to... IS DB31, ... DBB68, “Axis/spindle replacement”
MD 20070: AXCONF_ASSIGN_MASTER_USED (machine axis number valid in channel)
MD 30550: AXCONF_ASSIGN_MASTER_CHAN (initial setting of channel for axis replace-
ment)
Special cases, errors, ......

DB31, ...
DBB68 Axis/spindle exchange
Data Block Signal(s) to channel (NCK –––> PLC)
Edge evaluation: yes Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The current axis type and current channel assignment for this axis are displayed.
transition 0 –––> 1 With axis exchange by the PLC, meaning of signal from axis/spindle DB31, ... DBB68:
Bit 0 A NC axis/spindle in channel
Bit 1: B ...
Bit 2: C ...
Bit 3: D NC axis/spindle in channel
Bit 4: New type requested by PLC
Bit 5: Axis can be exchanged
Bit 6: Neutral axis/spindle and command/oscillation axes
Bit 7: PLC axis/spindle
Signal state 0 or signal
transition 1 –––> 0
Related to... IS DB31, ... DBB8, “Axis/spindle replacement”
MD 20070: AXCONF_ASSIGN_MASTER_USED (machine axis number valid in channel)
MD 30550: AXCONF_ASSIGN_MASTER_CHAN (initial setting of channel for axis replace-
ment)
Special cases, errors, ......

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/5-33
Mode Groups, Channels, Axis Replacement (K5) 06.05
5 Signal Descriptions

Notes

Copyright © Siemens AG, 2005.


2/K5/5-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
03.02
06.05 Mode Groups, Channels, Axis Replacement (K5)
7.2 Channel machine data

Example 6
None
J

Data Fields, Lists 7


Reference There is a reference for data which are not described in this Description of
Functions (e.g. /K1/ means that the description can be found in Description of
Functions K1).

7.1 General machine data

Number Names Name Refer-


ence
General ($MN_ ...
10010 ASSIGN_CHAN_TO_MODE_GROUP[n] Channel valid in mode group [channel no.]: K1
0, 1
10722 AXCHANGE_MASK Parameterization of the axis replacement
response with effect from SW 5.3

7.2 Channel machine data

7.2.1 Basic machine data of channel

Number Names Name Refer-


ence
Channelspecific ($MC_ ... )
20000 CHAN_NAME Channel name K1
20050 AXCONF_GEOAX_ASSIGN_TAB[n] Assignment between geometry axis and chan- K2
nel axis
[GEOaxis no.]: 0...2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/7-35
Mode Groups, Channels, Axis Replacement (K5) 08.97
06.05
7.2 Channel machine data

Number Names Name Refer-


ence
Channelspecific ($MC_ ... )
20060 AXCONF_GEOAX_NAME_TAB[n] Geometry axis name in channel K2
[GEOaxis no.]: 0...2
20070 AXCONF_MACHAX_USED[n] Machine axis number valid in channel K2
[channel axis no.]: 0...7
20080 AXCONF_CHANAX_NAME_TAB[n] Channel axis name in channel K2
[channel axis no.]: 0...7
20090 SPIND_DEF_MASTER_SPIND Initial setting of master spindle in channel S1
20100 DIAMETER_AX_DEF Geometry axis with transverse axis function P1
20150 GCODE_RESET_VALUES[n] Initial setting of G groups K1
[G group no.]: 0...59
20160 CUBIC_SPLINE_BLOCKS Number of blocks for C spline K1
20170 COMPRESS_BLOCK_PATH_LIMIT Maximum traversing length of NC block for K1
compression
20200 CHFRND_MAXNUM_DUMMY_BLOCKS Empty blocks with phase/radii K1
20210 CUTCOM_CORNER_LIMIT Max. angle for intersection calculation with tool W1
radius compensation
20220 CUTCOM_MAX_DISC Maximum value with DISC W1
20230 CUTCOM_CURVE_INSERT_LIMIT Maximum angle for intersection calculation W1
with tool radius compensation
20240 CUTCOM_MAXNUM_CHECK_BLOCKS Blocks for predictive contour calculation with W1
tool radius compensation
20250 CUTCOM_MAXNUM_DUMMY_BLOCKS Max. no. of dummy blocks with no traversing W1
movements
20270 CUTTING_EDGE_DEFAULT Basic setting of tool cutting edge without pro- W1
gramming
20400 LOOKAH_USE_VELO_NEXT_BLOCK Look Ahead to programmed following block B1
velocity
20430 LOOKAH_NUM_OVR_POINTS Number of override switch points for Look B1
Ahead
20440 LOOKAH_OVR_POINTS[n] Prepared override velocity characteristics with B1
Look Ahead
[characteristic no.]: 0...1
20500 CONST_VELO_MIN_TIME Minimum time with constant velocity B2
20600 MAX_PATH_JERK Pathrelated maximum jerk B2
20610 ADD_MOVE_ACCEL_RESERVE Acceleration reserve for overlaid movements K1
20650 THREAD_START_IS_HARD Acceleration behavior of axis with thread cut- K1
ting
20700 REFP_NC_START_LOCK NC start disable without reference point R1
20750 ALLOW_GO_IN_G96 G0 logic in G96 V1
20800 SPF_END_TO_VDI Subprogram end to PLC H2
21000 CIRCLE_ERROR_CONST Circle end point monitoring constant K1
21010 CIRCLE_ERROR_FACTOR Circle end point monitoring factor K1
21100 ORIENTATION_IS_EULER Angle definition for orientation programming F2
21110 X_AXIS_IN_OLD_X_Z_PLANE Coordinate system for automatic Frame defini- K2
tion

Copyright © Siemens AG, 2005.


2/K5/7-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
7.2 Channel machine data

Number Names Name Refer-


ence
Channelspecific ($MC_ ... )
21200 LIFTFAST_DIST Traversing path for fast retraction from the K1
contour
21250 START_INDEX_R_PARAM Number of first channelspecific R parameter S7

7.2.2 Auxiliary function settings of channel

Number Names Name Refer-


ence
Channelspecific ($MC_ ... )
22000 AUXFU_ASSIGN_GROUP[n] Auxiliary function group H2
[aux. func. no. in channel]: 0...49
22010 AUXFU_ASSIGN_TYPE[n] Auxiliary function type [aux. func. no. in H2
channel]: 0...49
22020 AUXFU_ASSIGN_EXTENSION[n] Auxiliary function extension H2
[aux. func. no. in channel ]: 0...49
22030 AUXFU_ASSIGN_VALUE[n] Auxiliary function value H2
[aux. func. no. in channel ]: 0...49
22200 AUXFU_M_SYNC_TYPE Output timing for M functions H2
22210 AUXFU_S_SYNC_TYPE Output timing of S functions H2
22220 AUXFU_T_SYNC_TYPE Output timing of T functions H2
22230 AUXFU_H_SYNC_TYPE Output timing for H functions H2
22240 AUXFU_F_SYNC_TYPE Output timing of F functions H2
22250 AUXFU_D_SYNC_TYPE Output timing of D functions H2
22260 AUXFU_E_SYNC_TYPE (available soon) Output time of E functions. –
22300 AUXFU_AT_BLOCK_SEARCH_END Output of auxiliary functions after block search H2
22400 S_VALUES_ACTIVE_AFTER_RESET S function active after RESET S1
22410 F_VALUES_ACTIVE_AFTER_RESET F function active after reset V1
22500 GCODE_OUTPUT_TO_PLC G functions to PLC K1
22550 TOOL_CHANGE_MODE New tool offset for M function W1
22560 TOOL_CHANGE_M_CODE M function for tool change W1

7.2.3 Transformation definitions in channel

Number Names Name Refer-


ence
Channelspecific ($MC_ ... )
24100 TRAFO_TYPE_1 Definition of transformation 1 in channel F2
24110 TRAFO_AXES_IN_1[n] Axis assignment for transformation F2
[axis index]: 0...7

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/7-37
Mode Groups, Channels, Axis Replacement (K5) 06.05
7.2 Channel machine data

Number Names Name Refer-


ence
Channelspecific ($MC_ ... )
24120 TRAFO_GEOAX_ASSIGN_TAB_1[n] Assignment between GEO axis and channel F2
axis for transformation 1 [GEO axis no.]: 0...2
24200 TRAFO_TYPE_2 Definition of transformation 2 in channel F2
24210 TRAFO_AXES_IN_2[n] Axis assignment for transformation 2 F2
[axis index]: 0...7
24220 TRAFO_GEOAX_ASSIGN_TAB_2[n] Assignment between GEO axis and channel F2
axis for transformation 2 [GEO axis no.]: 0...2
24300 TRAFO_TYPE_3 Definition of transformation 3 in channel F2
24310 TRAFO_AXES_IN_3[n] Axis assignment for transformation 3 F2
[axis index]: 0...7
24320 TRAFO_GEOAX_ASSIGN_TAB_3[n] Assignment between GEO axis and channel F2
axis for transformation 3 [GEO axis no.]: 0...2
24400 TRAFO_TYPE_4 Definition of transformation 4 in channel F2
24410 TRAFO_AXES_IN_4[n] Axis assignment for transformation 4 F2
[axis index]: 0...7
24420 TRAFO_GEOAX_ASSIGN_TAB_4[n] Assignment between GEO axis and channel F2
axis for transformation 4 [GEO axis no.]: 0...2
24430 TRAFO_TYPE_5 Definition of transformation 5 in channel F2
24432 TRAFO_AXES_IN_5[n] Axis assignment for transformation 5 F2
[axis index]: 0...7
24434 TRAFO_GEOAX_ASSIGN_TAB_5[n] Assignment between GEO axis and channel F2, M1
axis for transformation 5 [GEO axis no.]: 0...2
24440 TRAFO_TYPE_6 Definition of transformation 6 in channel F2
24442 TRAFO_AXES_IN_6[n] Axis assignment for transformation 6 F2
[axis index]: 0...7
24444 TRAFO_GEOAX_ASSIGN_TAB_6[n] Assignment between GEO axis and channel F2, M1
axis for transformation 6 [GEO axis no.]: 0...2
24450 TRAFO_TYPE_7 Definition of transformation 7 in channel F2
24452 TRAFO_AXES_IN_7[n] Axis assignment for transformation 7 F2
[axis index]: 0...7
24454 TRAFO_GEOAX_ASSIGN_TAB_7[n] Assignment between GEO axis and channel F2, M1
axis for transformation 7 [GEO axis no.]: 0...2
24460 TRAFO_TYPE_8 Definition of transformation 8 in channel F2
24462 TRAFO_AXES_IN_8[n] Axis assignment for transformation 8 F2
[axis index]: 0...7
24464 TRAFO_GEOAX_ASSIGN_TAB_8[n] Assignment between GEO axis and channel F2, M1
axis for transformation 8 [GEO axis no.]: 0...2
24500 TRAFO5_PART_OFFSET_1[n] Offset vector of 5axis transformation 1 [axis F2
no.]: 0...2
24510 TRAFO5_ROT_AX_OFFSET_1[n] Position offset of rotary axes 1/2 for 5axis F2
transformation 1 [axis no.]: 0...1
24520 TRAFO5_ROT_SIGN_IS_PLUS_1[n] Sign of rotary axis 1/2 for 5-axis transforma- F2
tion 1 [axis no.]: 0...1
24530 TRAFO5_NON_POLE_LIMIT_1 Definition of pole limit for 5-axis transforma- F2
tion 1
24540 TRAFO5_POLE_LIMIT_1 Pole end angle tolerance for interpolation for F2
5axis interpolation 1

Copyright © Siemens AG, 2005.


2/K5/7-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
7.2 Channel machine data

Number Names Name Refer-


ence
Channelspecific ($MC_ ... )
24550 TRAFO5_BASE_TOOL_1[n] Vector of base tool with activation of 5-axis F2
transformation 1
[axis no.]: 0...2
24560 TRAFO5_JOINT_OFFSET_1[n] Vector of kinematic offset for 5-axis trans- F2
formation 1
[axis no.]: 0...2
24600 TRAFO5_PART_OFFSET_2[n] Offset vector of 5axis transformation 2 [axis F2
no.]: 0...2
24610 TRAFO5_ROT_AX_OFFSET_2[n] Position offset of rotary axes 1/2 for 5axis F2
transformation 2
[axis no.]: 0...1
24620 TRAFO5_ROT_SIGN_IS_PLUS_2[n] Sign of rotary axis 1/2 for 5-axis transforma- F2
tion 2
[axis no.]: 0...1
24630 TRAFO5_NON_POLE_LIMIT_2 Definition of pole limit for 5-axis transforma- F2
tion 2
24640 TRAFO5_POLE_LIMIT_2 Pole end angle tolerance for interpolation for F2
5axis interpolation 2
24650 TRAFO5_BASE_TOOL_2[n] Vector of base tool with activation of 5-axis F2
transformation 2
[axis no.]: 0...2
24660 TRAFO5_JOINT_OFFSET_2[n] Vector of kinematic offset for 5-axis trans- F2
formation 2
[axis no.]: 0...2

7.2.4 Channelspecific memory settings

Number Identifier Name Refer-


ence
Channelspecific ($MC_ ... )
25000 REORG_LOG_LIMIT Percentage of IPO buffer for log file enable S7
28000 MM_REORG_LOG_FILE_MEM Memory size for REORG (DRAM) S7
28010 MM_NUM_REORG_LUD_MODULES Number of blocks for local user variables for S7
REORG (DRAM)
28020 MM_NUM_LUD_NAMES_TOTAL Number of local user variables (DRAM) S7
28030 MM_NUM_LUD_NAMES_PER_PROG Number of local user variables per program S7
(DRAM)
28040 MM_LUD_VALUES_MEM Memory size for local user variables (DRAM) S7
28050 MM_NUM_R_PARAM Number of channelspecific R parameters S7
(SRAM)
28060 MM_IPO_BUFFER_SIZE Number of NC blocks in IPO buffer (DRAM) S7
28070 MM_NUM_BLOCKS_IN_PREP Number of blocks for block preparation S7
(DRAM)
28080 MM_NUM_USER_FRAMES Number of settable Frames (SRAM) S7

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/7-39
Mode Groups, Channels, Axis Replacement (K5) 06.05
7.4 Channel-specific setting data

Number Identifier Name Refer-


ence
Channelspecific ($MC_ ... )
28090 MM_NUM_CC_BLOCK_ELEMENTS Number of block elements for compile cycles S7
(DRAM)
28100 MM_NUM_CC_BLOCK_USER_MEM Size of block memory for compile cycles S7
(DRAM)
28500 MM_PREP_TASK_STACK_SIZE Stack size of preparation task (DRAM) S7
28510 MM_IPO_TASK_STACK_SIZE Stack size of IPO task (DRAM) S7

7.3 Axis/spindle-specific machine data

Number Identifier Name Refer-


ence
Axis/channelspecific ($MA_ ... )
30460 BASE_FUNCTION_MASK Axis functions
30550 AXCONF_ASSIGN_MASTER_CHAN Reset position of channel for axis change
30552 AUTO_GET_TYPE Definition of automatic GET
30600 FIX_POINT_POS Fixed value positions of axes with G75 K1
33100 COMPRESS_POS_TOL Maximum deviation with compensation K1

7.4 Channel-specific setting data

Number Identifier Name Refer-


ence
Channelspecific ($SC_ ... )
42000 THREAD_START_ANGLE Start angle for thread K1
42100 DRY_RUN_FEED Dry run feedrate V1

Copyright © Siemens AG, 2005.


2/K5/7-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Mode Groups, Channels, Axis Replacement (K5)
7.6 Interrupts

7.5 Interface signals

7.5.1 Mode group signals

Description of The mode group signals from PLC → NCK and from NCK → PLC are stored in
interface signals data block 11 for the first mode group. The signals are displayed and described
in
References: /FB/, K1, “Mode Group, Channels, Program Operation Mode”

7.5.2 Channel signals

Description of The channel signals from PLC → NCK and from NCK → PLC are stored in data
interface signals blocks 21, 22, ... for the first, second ... channel. The signals are displayed and
described in
References: /FB/, K1, “Mode Group, Channels, Program Operation Mode”

7.6 Interrupts
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, Diagnostics Guide
or in the Online help.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/K5/7-41
Mode Groups, Channels, Axis Replacement (K5) 04.00
06.05
7.6 Interrupts

Notes

Copyright © Siemens AG, 2005.


2/K5/7-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Kinematic Tranformations (M1)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/1-5


1.1 TRANSMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/1-5
1.2 TRACYL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/1-6
1.3 TRAANG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/1-7
1.4 Chained transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/1-8
1.5 Activating the transformation MD via parts program/softkey
(SW 5.2 and later) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/1-8
2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-9
2.1 TRANSMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-9
2.1.1 Preconditions for TRANSMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-10
2.1.2 Settings specific to TRANSMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-13
2.1.3 Activation of TRANSMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-16
2.1.4 Deactivation of TRANSMIT function . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-16
2.1.5 Special system reactions with TRANSMIT . . . . . . . . . . . . . . . . . . . . 2/M1/2-16
2.1.6 Machining with TRANSMIT using SW 4.x and higher . . . . . . . . . . . 2/M1/2-21
2.1.7 Working area limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-26
2.1.8 Overlaid movements with TRANSMIT in SW 4 . . . . . . . . . . . . . . . . . 2/M1/2-27
2.1.9 Monitoring of rotary axis rotations over 3605 . . . . . . . . . . . . . . . . . . . 2/M1/2-27
2.1.10 Supplementary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-27
2.2 TRACYL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-29
2.2.1 Preconditions for TRACYL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-31
2.2.2 TRACYL-specific settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-34
2.2.3 Activation of TRACYL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-38
2.2.4 Deactivation of TRACYL function . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-38
2.2.5 Special system reactions with TRACYL . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-39
2.2.6 Jog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-41
2.3 TRAANG (inclined axis) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-42
2.3.1 Preconditions for TRAANG (inclined axis) . . . . . . . . . . . . . . . . . . . . . 2/M1/2-43
2.3.2 TRAANG-specific settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-46
2.3.3 Activation of TRAANG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-48
2.3.4 Deactivation of TRAANG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-49
2.3.5 Special system reactions with TRAANG . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-50
2.3.6 Programming an inclined axis: G05, G07 (from SW 5.3) . . . . . . . . . 2/M1/2-52

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/i
10.04
06.05

2.4 Chained transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-54


2.4.1 Activating chained transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-56
2.4.2 Switching off chained transformations . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-56
2.4.3 Special characteristics of chained transformations . . . . . . . . . . . . . . 2/M1/2-56
2.4.4 Persistent transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-57
2.5 Cartesian PTP travel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-61
2.5.1 Programming of position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-64
2.5.2 Overlap areas of axis angles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-65
2.5.3 Examples of ambiguities of position . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-65
2.5.4 Example of ambiguity in rotary axis position . . . . . . . . . . . . . . . . . . . 2/M1/2-66
2.5.5 PTP/CP switchover in JOG mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-67
2.6 Cartesian manual travel (810D powerline, SW 6.1 and higher) . . . 2/M1/2-68
2.7 Activating the transformation MD via parts program/softkey
(SW 5.2 and later) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-75
2.7.1 Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-75
2.7.2 Supplementary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-76
2.7.3 Control response to power ON, mode change, RESET, block
search, REPOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-77
2.7.4 List of machine data affected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/2-78
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/3-81
3.1 TRANSMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/3-81
3.2 TRACYL (peripheral surface transformation) . . . . . . . . . . . . . . . . . . 2/M1/3-81
3.3 TRAANG (inclined axis) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/3-81
3.4 Chained transformations (SW 5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/3-82
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/4-83
4.1 Channelspecific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/4-83
4.2 Transformation-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/4-84
4.3 Function-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/4-88
4.3.1 TRANSMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/4-88
4.3.2 TRACYL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/4-90
4.3.3 TRAANG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/4-93
4.3.4 MD for chained transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/4-96
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/5-99
5.1 TRANSMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/5-99
5.2 TRACYL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/5-99
5.3 TRAANG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/5-99
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/6-101
6.1 TRANSMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/6-101
6.2 TRAANG (inclined axis) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/6-106

Copyright © Siemens AG, 2005.


2/M1/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05

6.3 Chained transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/6-108


6.4 Activating transformation MD via a parts program
(SW 5.2 and higher) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/6-112
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-113
7.1 TRANSMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-113
7.1.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-113
7.1.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-113
7.1.3 Alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-114
7.2 TRACYL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-115
7.2.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-115
7.2.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-115
7.2.3 Alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-117
7.3 TRAANG (inclined axis) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-118
7.3.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-118
7.3.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-118
7.3.3 Alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-119
7.4 TRACON (chained transformations) . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M1/7-120
7.5 Non transformation-specific machine data . . . . . . . . . . . . . . . . . . . . . 2/M1/7-120


Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/iii
10.04
06.05

Notes

Copyright © Siemens AG, 2005.


2/M1/iv SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
1.1 TRANSMIT

Brief Description 1
1.1 TRANSMIT
The TRANSMIT function enables the following:

 Face-end machining on turned parts in the turning clamp


– Holes
– Contours

 A cartesian coordinate system can be used to program these machining


operations.

 The control maps the programmed traversing movements of the Cartesian


coordinate system onto the traversing movements of the real machine axes
(standard situation):
– Rotary axis (1)
– Infeed axis perpendicular to axis of rotation (2)
– Longitudinal axis in parallel to axis of rotation (3)
Linear axes (2) and (3) are perpendicular to one another.

 A tool center offset relative to the turning center is permitted.


 The velocity control makes allowance for the limits defined for the rotations.
 A path in the cartesian coordinate system must not pass through the turning
center point (this restriction applies to SW 2 and 3).

Additional
advantages from
 The tool center point path can pass through the turning center point of the
SW 4
rotary axis.

 The rotary axis does not need to be a modulo axis.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/1-5
Kinematic Transformations (M1) 11.02
06.05
1.2 TRACYL

1.2 TRACYL
The functional scope of TRACYL (cylinder generated surface curve
transformation) is as follows:
Machine
– Longitudinal grooves on cylindrical objects,
– Transverse grooves on cylindrical objects,
– Arbitrary groove patterns on cylindrical objects.
The grooving path is programmed in relation to the developed, plane cylinder
generated surface.
For machining purposes, the function supports lathes with

 X-C-Z kinematics and


 X-Y-Z-C kinematics
 The control transforms the programmed traversing movements of the
cylinder coordinate system into the traversing movements of the real
machine axes (standard applications X-C-Z kinematics TRAFO_TYPE_n =
512):
– Rotary axis (1)
– Infeed axis perpendicular to axis of rotation (2)
– Longitudinal axis in parallel to axis of rotation (3)

Note
Linear axes (2) and (3) are perpendicular to one another. The infeed axis (2)
intersects the rotary axis. This constellation does not permit groove side offset.

 For groove side offset, X-Y-Z-C kinematics is required with the following
axes (TRAFO_TYPE_n = 513):
– Rotary axis (1)
– Infeed axis perpendicular to axis of rotation (2)
– Longitudinal axis in parallel to axis of rotation (3)

– Longitudinal axis (4) to supplement (2) and (3) to obtain a right-hand


cartesian coordinate system.

Note
Linear axes (2), (3) and (4) are perpendicular to one another. This constellation
permits groove wall corrections.

 The velocity control makes allowance for the limits defined for the rotations.

Copyright © Siemens AG, 2005.


2/M1/1-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05 Kinematic Transformations (M1)
1.3 TRAANG

TRACYL transformation, without groove side compensation, with additional


longitudinal axis (cylinder surface curve transformation without groove side
offset TRAFO_TYPE_n= 514)
 Transformation without groove side offset requires only a rotary axis and a
linear axis positioned perpendicular to the rotary axis.
 If machines can provide redundancy in the form of an additional linear axis
positioned perpendicular to the rotary axis and first linear axis, this can be
utilized to improve the tool offset.

1.3 TRAANG

The “Inclined axis” function is provided for grinding applications.


Its functional scope is as follows:

 Machining with inclined infeed axis.


 A cartesian coordinate system can be used for programming purposes.
 The control maps the programmed traversing movements of the Cartesian
coordinate system onto the traversing movements of the real machine axes
(standard situation): Inclined infeed axis.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/1-7
Kinematic Transformations (M1) 06.05
1.5 Activating the transformation MD via parts program/softkey (SW 5.2 and later)

1.4 Chained transformations

Introduction In SW 5 and higher two transformations can be chained such that the motion
parts for the axes from the first transformation are input data for the chained
second transformation. The motion parts from the second transformation act on
the machine axes.

Chaining options
 In SW 5 the chain may encompass two transformations.
 The second transformation must be “Inclined axis” (TRAANG).
 The first transformation can be:
– Orientation transformations (TRAORI), incl. universal milling head
– TRANSMIT
– TRACYL
– TRAANG
For details about chained transformations, please refer to Section 2.4, and for
further information about other transformations to

References: /FB/, F2, “3 to 5-Axis Transformations”

1.5 Activating the transformation MD via parts


program/softkey (SW 5.2 and later)

As of SW 5.2 Most of the machine data relevant to kinematic transformations were activated
by power ON in earlier versions.
In SW 5.2 and higher, you can also activate transformations MDs via the part
program/softkey and it is not necessary to boot the control.
Please refer to Section 2.7 for a detailed description.


Copyright © Siemens AG, 2005.


2/M1/1-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.1 TRANSMIT

Detailed Description 2
2.1 TRANSMIT

Note
The TRANSMIT transformation described below requires that individual names
are assigned to machine axes, channels and geometry axes when the
transformation is active.
Cf.
MD 10000: AXCONF_MACHAX_NAME_TAB,
MD 20080: AXCONF_CHANAX_NAME_TAB,
MD 20060: AXCONF_GEOAX_NAME_TAB.
This is the only method of ensuring unique assignments.

Task assignment Complete machining, see diagram.

CM Y X XM

ÉÉ
ÉÉ
ASM

ZM
Z

Fig. 2-1 End face machining of turned part

Legend:
CM Rotary axis (main spindle)
ASM Working spindle (milling cutter, drill)
X, Y, Z Cartesian coordinate system for programming
the face-end machining operation (origin in turning center
point of face end)
ZM Machine axis (linear)
XM Machine axis (linear)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-9
Kinematic Transformations (M1) 10.04
06.05
2.1 TRANSMIT

2.1.1 Preconditions for TRANSMIT

Axis configuration Before movements can be programmed in the Cartesian coordinate system
(acc. to Fig. 2-1 X, Y, Z), the control system must be notified of the relationship
between this coordinate system and the real machine axes (CM, XM, ZM,
ASM):

 Assignment of names to geometry axes


 Assignment of geometry axes to channel axes
– General situation (TRANSMIT not active)
– TRANSMIT active

 Assignment of channel axes to machine axis numbers


 Identification of spindles
 Allocation of machine axis names
With the exception of the “– TRANSMIT active” point, the procedure is the same
as for the normal axis configuration. If you already know the general steps, you
need only read step “Assignment of geometry axes to channel axes” from the
list of steps below.
References: /FB/, K2, “Coordinate Systems, Axis Types,
Axis Configurations, Actual-Value System for Workpiece,
External Zero Offset”

Number Up to ten transformation data blocks can be defined for each channel in the
of transformations system. The machine data names of these transformations begin with
$MC_TRAFO .. and end with ... _n, where n stands for a number between 1 and
10. The following sections include descriptions of these data:
$MC_TRAFO_TYPE_n
$MC_TRAFO_GEOAX_ASSIGN_TAB_n
$MC_TRAFO_AXES_IN_n

Number of Two of the 10 permitted data structures for transformations in the channel may
TRANSMIT be assigned to the TRANSMIT function. They are characterized by the fact that
structures the value assigned with $MC_TRAFO_TYPE_n is 256 or 257.
For these 2 TRANSMIT transformations, the following machine data must be set
in a defined way:
$MC_TRANSMIT_ROT_AX_OFFSET_t
$MC_TRANSMIT_ROT_SIGN_IS_PLUS_t
$MC_TRANSMIT_BASE_TOOL_t
$MC_TRANSMIT_POLE_SIDE_FIX_t
In this case, t specifies the number of the declared TRANSMIT transformation
(maximum of 2).

Copyright © Siemens AG, 2005.


2/M1/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05 Kinematic Transformations (M1)
2.1 TRANSMIT

MD 20060: AXCONF_GEOAX_NAME_TAB MD 20050: AXCONF_GEOAX_ASSIGN_TAB

Chan. 2 Chan. 2 Chan. 2


Chan. 1 Chan. 1 Chan. 1
1 1
1st geometry axis [0] X 0 3
2nd geometry axis [1] Y 2 2
3rd geometry axis [2] Z
<byte> <byte>
<STRING> (0 to 10) (0 to 10)

If TRANSMIT is active MD:$MC_TRAFO_GEOAX_ASSIGN_TAB

MD 20080: AXCONF_CHANAX_NAME_TAB MD 20070: AXCONF_MACHAX_USED


Chan. 2 Chan. 2

Chan. 1 Chan. 1
1st channel axis [0] XC
ZC 2
2nd channel axis [1]
CC 3
3rd channel axis [2]
ASC 1
4th channel axis [3]
– 4
5th channel axis [4]
– 0
6th channel axis [5]
– 0
7th channel axis [6]
– 0
8th channel axis [7]
9th channel axis [8] – 0
10th channel axis [9] –
<byte>
<STRING> (0 to 8)

MD 35000: SPIND_ASSIGN_TO_MACHAX MD 10000: AXCONF_MACHAX_NAME_TAB

1st machine axis [AX1] 1 CM


2nd machine axis [AX2] 0 XM
3rd machine axis [AX3] 0 ZM
4th machine axis [AX4] 2 ASM
5th machine axis [AX5] 0
6th machine axis [AX6] 0 –
7th machine axis [AX7] 0 –
8th machine axis [AX8] 0

<byte> <STRING>
(0 to 5)

Fig. 2-2 Axis configuration for the example in Fig. 2-1

The configurations highlighted in Fig. 2-2 apply when TRANSMIT is active.

Assignment of According to the axis configuration overview shown above, the geometry axes
names to geometry to be involved in the TRANSMIT operation must be defined with:
axes $MC_AXCONF_GEOAX_NAME_TAB[0]=“X”
“ _TAB[1]=“Y”
“ _TAB[2]=“Z”
(name selection according to Fig. 2-2, also corresponds to default setting)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-11
Kinematic Transformations (M1) 06.05
2.1 TRANSMIT

Assignment of These assignments are made depending on whether or not TRANSMIT is


geometry axes to active.
channel axes – TRANSMIT not active
A Y axis is not available.

$MC_AXCONF_GEOAX_ASSIGN_TAB[0]=1
” _TAB[1]=0
” _TAB[2]=2
– TRANSMIT active
The Y axis can be addressed with the part program.
$MC_TRAFO_GEOAX_ASSIGN_TAB_1[0]=1
” _TAB_1[1]=3
” _TAB_1[2]=2

The Y axis is the third entry for the channel axes.

Entry of channel Axes which do not belong to the Cartesian coordinate system are entered.
axes
$MC_AXCONF_CHANAX_NAME_TAB[0]=“XC”
” [1]=“ZC”
” [2]=“CC”
” [3]=“ASC”

Assignment of With the cd of the channel axes as a reference, the machine axis number to
channel axes to which the channel axes have been assigned is transferred to the control
machine axes system.
$MC_AXCONF_MACHAX_USED[0]=2
” [1]=3
” [2]=1
” [3]=4
” [4]=0
(entries corresponding to Fig. 2-2)

Identification of The user defines whether each machine axis is a spindle (value > 0: spindle
spindles number) or a path axis (value 0).
$MA_SPIND_ASSIGN_TO_MACHAX[0]=1
” [1]=0
” [2]=0
” [3]=2

Assignment of With the cd of the machine axes as a reference, a machine axis name is
names to transferred to the control system.
machine axes $MN_AXCONF_MACHAX_NAME_TAB[0]=“CM”
” [1]=“XM”
” [2]=“ZM”
” [3]=“ASM”

Copyright © Siemens AG, 2005.


2/M1/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05 Kinematic Transformations (M1)
2.1 TRANSMIT

2.1.2 Settings specific to TRANSMIT

Type of The following paragraph describes how the transformation type is specified.
transformation

TRAFO_TYPE_n The user must specify the transformation type for the transformation data blocks
(maximum n = 10). The value 256 must be set for TRANSMIT or the
VALUE 257 for a rotary axis with supplementary linear axis.
Example of VALUE 256: MD 24100: TRAFO_TYPE_1=256

The setting must be made before TRANSMIT or TRANSMIT(t) is called. “t” is


the number of the declared TRANSMIT transformation.
The TRANSMIT transformation requires only a rotary axis and a linear axis
positioned perpendicular to the rotary axis. A real Y axis is used with
transformation type 257 in order, for example, to compensate a tool offset.

Transformation Polar transformation with a rotary axis TRAFO_TYPE_n = 257


type 257

With If the machine has another linear axis which is perpendicular to both the rotary
supplementary axis and the first linear axis, transformation type 257 can be used to apply tool
linear axis offsets with the real Y axis. It is assumed that the working area of the second
linear axis is small and is not to be used for the retraction of the part program.
The existing settings for $MC_TRAFO_GEOAX_ASSIGN_TAB_n apply.

Axis image The following paragraph describes how the transformation axis image is
specified.

TRAFO_AXES Three channel axis numbers must be specified for the transformation data block
_IN_n n:
$MC_TRAFO_AXES_IN_1[0]= Channel axis number of axis perpendicular
to rotary axis.
$MC_TRAFO_AXES_IN_1[1]= Channel axis number of rotary axis
$MC_TRAFO_AXES_IN_1[2]= Channel axis number of axis parallel to
rotary axis
Example of the configuration in Fig. 2-1:
$MC_TRAFO_AXES_IN_1[0]=1
$MC_TRAFO_AXES_IN_1[1]=3
$MC_TRAFO_AXES_IN_1[2]=2

The setting must be made before TRANSMIT or TRANSMIT(t) is called. The


axis numbers must refer to the channel axis sequences defined with
$MC_TRAFO_GEOAX_ASSIGN_TAB_n.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-13
Kinematic Transformations (M1) 10.04
06.05
2.1 TRANSMIT

For transformation type 257, the following index assignments for


$MC_TRAFO_AXES_IN_n[ ] must be selected.
Meaning of indices in relation to basic coordinate system (BCS):

 [0]: Cartesian axis perpendicular to rotary axis (in the machine zero position, this
axis is parallel to the linear axis which is positioned perpendicular to the rotary axis)

 [1]: Cartesian axis perpendicular to rotary axis


 [2]: Cartesian axis parallel to rotary axis (if configured)
 [3]: Linear axis parallel to index [2] in initial position of machine
Meaning of indices in relation to machine coordinate system (MCS):

 [0]: Linear axis perpendicular to rotary axis


 [1]: Rotary axis
 [2]: Linear axis parallel to rotary axis (if configured)
 [3]: Linear axis perpendicular to the axes of indices [0] and [1]

Rotational position The rotational position of the Cartesian coordinate system is specified by
machine data as described in the following paragraph.

TRANSMIT The rotational position of the x-y plane of the Cartesian coordinate system in
_ROT_AX relation to the defined zero position of the rotary axis is specified with:
_OFFSET_t $MC_TRANSMIT_ROT_AX_OFFSET_t= ... ; degrees

In this case, “t” is substituted by the number of the TRANSMIT transformations


declared in the transformation data blocks.
(t must not be more than 2).

Direction of The direction of rotation of the rotary axis is specified by machine data as
rotation described in the following paragraph.

TRANSMIT If the rotary axis rotates in an anti-clockwise direction on the X-Y plane when
_ROT_SIGN viewed along the Z axis, then the machine axis must be set to 1, but otherwise
_IS_PLUS_t to 0.

1
+
x

$MC_TRANSMIT_ROT_SIGN_IS_PLUS_t=1
In this case, “t” is substituted by the number of the TRANSMIT transformations
declared in the transformation data blocks (t must not be more than 2.)

Copyright © Siemens AG, 2005.


2/M1/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.1 TRANSMIT

Position of tool The position of the tool zero point is specified by machine data as described in
zero point the following paragraph.

TRANSMIT_ Machine data $MC_TRANSMIT_BASE_TOOL_t is used to inform the control of


BASE_TOOL_t the position of the tool zero point in relation to the origin of the coordinate
system declared for TRANSMIT. The machine data has three components for
the three axes of the Cartesian coordinate system.

y
tx
x

Tool zero point


tz

ty z

Fig. 2-3 Position of tool zero in relation to origin of the Cartesian coordinate system
(see Fig. 2-1)

$MC_TRANSMIT_BASE_TOOL_t[0]=tx
” [1]=ty
” [2]=tz

In this case, t in front of the index value [ ] is replaced by the number of the
TRANSMIT transformations declared in the transformation data blocks.
(t must not be more than 2).

Replaceable The PLC is informed when a geometry axis has been replaced using GEOAX( )
geometry axes through the optional output of an M code that can be set in machine data.

 MD 22534: TRAFO_CHANGE_M_CODE
Number of the M code that is output at the VDI interface in the case of
transformation changeover.

Note
If this machine data is set to one of the values 0 to 6, 17, 30, then no M code is
output.

References: /FB/, K2, “Coordinate Systems, Axis Types,


Axis Configurations, Actual-Value System for Workpiece,
External Zero Offset”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-15
Kinematic Transformations (M1) 06.05
2.1 TRANSMIT

2.1.3 Activation of TRANSMIT

TRANSMIT After the settings described above have been made, the TRANSMIT function
can be activated:
TRANSMIT or
TRANSMIT(t)
The first declared TRANSMIT function is activated with TRANSMIT.
TRANSMIT(t) activates the t-th declared TRANSMIT function. t may not be
more than 2.
When TRANSMIT is activated in SW 4 and higher, the special processes for
pole traversal, etc. according to 2.1.6 become available.
Between activation of the function and deactivation as described below, the
traversing movements for the axes of the Cartesian coordinate system can be
programmed.

2.1.4 Deactivation of TRANSMIT function

TRAFOOF Keyword TRAFOOF deactivates an active transformation. When the


transformation is deactivated, the base coordinate system is again identical to
the machine coordinate system.
An active TRANSMIT transformation is likewise deactivated if one of the other
transformations is activated in the relevant channel.
(e.g. TRACYL, TRAANG, TRAORI).
References: /FB/, F2, “3-5-Axis Transformation”

2.1.5 Special system reactions with TRANSMIT

The transformation can be selected and deselected via parts program or MDA.

Copyright © Siemens AG, 2005.


2/M1/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.1 TRANSMIT

Please note
on selection
 An intermediate motion block is not inserted (phases/radii).
 A spline block sequence must be terminated.
 Tool radius compensation must be deselected.
 An activated tool length compensation is incorporated into the
transformation in the geometry axis by the control

 The frame which was active prior to TRANSMIT is deselected by the control.
(corresponds to Reset programmed frame G500).

 An active working area limitation is deselected by the control for the axes
affected by the transformation (corresponds to programmed WALIMOF).

 Continuous path control and rounding are interrupted.


 DRF offsets in transformed axes must have been deleted by the operator.

Please note on
deselection
 An intermediate motion block is not inserted (phases/radii).
 A spline block sequence must be terminated.
 Tool radius compensation must be deselected.
 The frame which was active prior to TRANSMIT is deselected by the control.
(Corresponds to Reset programmed frame G500).

 Continuous path control and rounding are interrupted.


 DRF offsets in transformed axes must have been deleted by the operator.
 Tool length compensation in the virtual axis (the Y axis in Fig. 2-1) is not
implemented.

Restrictions when The restrictions listed below imposed by an activated TRANSMIT function must
TRANSMITis active be noted.

Tool change Tools may only be changed when the tool radius compensation function is
deselected.

Frame All instructions which refer exclusively to the base coordinate system are
permissible (FRAME, tool radius compensation). Unlike the procedure for
inactive transformation, however, a frame change with G91 (incremental
dimension) is not specially treated. The increment to be traversed is evaluated
in the workpiece coordinate system of the new frame - regardless of which
frame was effective in the previous block.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-17
Kinematic Transformations (M1) 06.03
06.05
2.1 TRANSMIT

Rotary axis The rotary axis cannot be programmed because it is occupied by a geometry
axis and cannot thus be programmed directly as a channel axis.
Extensions with SW 6.4 and later
An offset in the rotary axis CM can be entered, for example, by compensating
the inclined position of a workpiece in a frame within the frame chain. The x and
y values are then as illustrated in the following diagram.

CM

Fig. 2-4 Rotary axis offset with TRANSMIT

With SW 6.4 and later, this offset can also be included in the transformation as
an offset in the rotary axis. To ensure that the total axial frame of the transmit
rotary axis, i.e. the translation, fine offset, mirroring and scaling, is included in
the transformation, the following settings must be made:
MD 24905: TRANSMIT_ROT_AX_FRAME_1 = 1
MD 24955: TRANSMIT_ROT_AX_FRAME_2 = 1

Note
Changes in the axis assignments are converted every time the transformation
is selected or deselected. For further information about axial offsets for rotary
axes to the SZS, please see:
References: /FB/, K2, “Coordinate Systems, Frames”

Pole SW up to and including 3.x:


Movements through the pole (origin of Cartesian coordinate system) are
disabled, i.e. a movement which traverses the pole is stopped in the pole
followed by the output of an alarm. In the case of a cutter center offset, the
movement is terminated accordingly at the end of the non-approachable area.
SW 4 and higher:
The options for pole traversal and machining operations close to the pole are
described in the Subsections starting at 2.1.6.

Copyright © Siemens AG, 2005.


2/M1/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.1 TRANSMIT

Exceptions Axes affected by the transformation cannot be used:

 as a preset axis (alarm)


 to approach the fixed point (alarm)
 for referencing (alarm)

Velocity control The velocity monitoring function for TRANSMIT is implemented as standard
during preprocessing. Monitoring and limitation in the main run are activated:

 In AUTOMATIC mode if a positioning or oscillation axis has been


programmed which is included in the transformation via machine data
$MC_TRAFO_AXES_IN_n index 0 or 1.

 On changeover to JOG mode.


The monitoring function is transferred from the main run back to the
preprocessing routine if the axes relevant to the transformation process are
operated as path axes.
The velocity monitoring function in preprocessing utilizes the machine better
than the monitoring in the main run. Furthermore, the main run monitoring
function deactivates the Look Ahead.

Interruption of If parts program processing is interrupted for JOG, then the following must be
parts program noted:

JOG When JOG is selected, the conventional on-line velocity check is activated
instead of the optimized velocity check provided in 2.1.6 SW 4.

From AUTOMATIC If parts program processing is interrupted when the transformation is active
to JOG followed by traversal in JOG mode, then the following must be noted when
AUTOMATIC is selected again:

 The transformation is active in the approach block from the current position
to the point of interruption. No monitoring for collisions takes place.

Warning
! The operator is responsible for ensuring that the tool can be re-positioned
without any difficulties.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-19
Kinematic Transformations (M1) 06.05
2.1 TRANSMIT

In AUTOMATIC The velocity-optimized velocity planning function (SW 4) remains active for as
mode long as the axes relevant to the transformation are traversed in mutual
synchronism as path axes. If an axis involved in the transformation is traversed
as a positioning axis, the online velocity check remains active until the
transformation is deactivated or until all axes involved in the transformation are
operating as path axes again. The return to velocity-optimized operation
according to 2.1.6 automatically initiates a STOPRE and synchronizes acyclic
block preprocessing with the interpolation routine.

From start after If parts program processing is aborted with RESET and restarted with START,
reset then the following must be noted:

 The remaining parts program is traversed reproducibly only if all axes are
traversed to a defined position by means of a linear block (G0 or G1) at the
beginning of the parts program. A tool which was active on RESET may no
longer be taken into account by the control (settable via machine data).

Power On The system response after power ON is determined by the settings stored in
RESET MD 20110: RESET_MODE_MASK and
MD 20140: TRAFO_RESET_VALUE
References: /FB/, K2, “Workpiece-Related Actual-Value System”

Reference point Axes cannot be referenced when a transformation is active. Any active
approach transformation is deselected by the control system during a referencing
operation.

Copyright © Siemens AG, 2005.


2/M1/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.1 TRANSMIT

2.1.6 Machining with TRANSMIT using SW 4.x and higher

Introduction The TRANSMIT transformation has a pole at the zero point of the TRANSMIT
plane (example, see Fig.: 2-1, x = 0, Y = 0). The pole is located on the
intersection between the radial linear axis and the rotary axis (X and CM). In the
vicinity of the pole, small positional changes in the geometry axes generally
result in large changes in position in the machine rotary axis. The only
exceptions are linear motions into or through the pole.
With SW 4 and higher, a tool center point path through the pole does not cause
the parts program to be aborted. There are no restrictions with respect to
programmable traversing commands or active tool radius compensations.
Nevertheless, workpiece machining operations close to the pole are not
recommended since these may require sharp feedrate reductions to prevent
overloading of the rotary axis.

New features Definition:


A pole is said to exist if the line described by the tool center point intersects the
turning center of the rotary axis.

The following cases are examined:

 Under what conditions and by what methods the pole can be traversed
 The response in pole vicinity
 The response with respect to working area limitations
 Monitoring of rotary axis rotations over 360 °.

Pole traversal The pole can be traversed by two methods:

 Traversal along linear axis


 Traversal into pole with rotation of rotary axis in pole

Traversal along
linear axis

Tool

x
ÂÉÉÉ
ÂÂ
ÂÂ Turned part
Contour

Fig. 2-5 Traversal of x axis through pole

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-21
Kinematic Transformations (M1) 06.05
2.1 TRANSMIT

Rotation in pole

a) Movement into pole b) Rotation

x
ÂÂ
ÉÉÉÉ
ÂÂ
Tool
ÉÉÉÉ
ÂÉÉÉÉ
ÂÂ
Contour
ÉÉÉÉ Turned part

c) Movement out of pole

Fig. 2-6 Traversal of x axis into pole (a), rotation (b), exit from pole (c)

Selection of The method must be selected according to the capabilities of the machine and
method the requirements of the part to be machined. The method is selected by
machine data:
MD 24911: TRANSMIT_POLE_SIDE_FIX_1
MD 24951: TRANSMIT_POLE_SIDE_FIX_2
The first MD applies to the first TRANSMIT transformation in the channel and
the second MD correspondingly to the second TRANSMIT transformation.

Table 2-1

VALUE Meaning
0 Pole traversal
The tool center point path (linear axis) must traverse the pole on a con-
tinuous path.
1 Rotation around pole
The tool center point path must be restricted to the positive traversing
range of the linear axis (in front of turning center).
2 Rotation around pole
The tool center point path must be restricted to the negative traversing
range of the linear axis (behind turning center).

Special features The method of pole traversal along the linear axis may be applied in the
relating to pole AUTOMATIC and JOG modes.
traversal System response:

Copyright © Siemens AG, 2005.


2/M1/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.1 TRANSMIT

Table 2-2 Traversal of pole along the linear axis

Operating Status Response


mode
AUTOMATIC All axes involved in the trans- High-speed pole traversal
formation are moved synchro-
nously. TRANSMIT active.
Not all axes involved in the trans- Traversal of pole at creep speed
formation are traversed synchro-
nously (e.g. positioning axis).
TRANSMIT not active.
An applied DRF (external zero off- Abortion of machining operation,
set) does not interfere with the op- alarm
eration. Servo errors may occur
close to the pole during applica-
tion of a DRF.
JOG – Traversal of pole at creep speed

Special features Prerequisite: This method is only effective in the AUTOMATIC mode.
relating to rotation
MD 24911: TRANSMIT_POLE_SIDE_FIX_1 = 1 or 2
in pole MD 24951: TRANSMIT_POLE_SIDE_FIX_2 = 1 or 2
Value: 1 Linear axis remains within positive traversing range
Value: 2 Linear axis remains within negative traversing range
In the case of a contour that would require the pole to be traversed along the
tool center point path, the following three steps are taken to prevent the linear
axis from traversing in ranges beyond the turning center:

Step Action
1 Linear axis traverses into pole
2 Rotary axis turns through 180°, the other axes involved in the
transformation remain stationary.
3 Execution of remaining block. The linear axis now exits from the pole again.

In JOG mode, the motion stops in the pole. In this mode, the axis may exit from
the pole only along the path tangent on which it approached the pole. All other
motion instructions would require a step change in the rotary axis position or a
large machine motion in the cases of minimum motion instructions. They are
rejected with alarm 21619.

Traversal close to If a tool center point traverses past the pole, the control system automatically
pole reduces the feedrate and path acceleration rate such that the settings of the
machine axes (MD 32000: MAX_AX_VELO[AX*] and MD 32300:
MAX_AX_ACCEL[AX*]) are not exceeded. The closer the path is to the pole,
the greater the reduction in the feedrate.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-23
Kinematic Transformations (M1) 06.05
2.1 TRANSMIT

Tool center point A tool center point path which includes a corner in the pole will not only cause a
path with corner in step change in axis velocities, but also a step change in the rotary axis position.
pole These cannot be reduced by decelerating.

ÂÂÂ
ÉÉÉÉ
Corner
ÉÉÉÉ
ÂÂÂ
ÉÉÉÉ
ÂÂÂ ÉÉÉÉ
ÂÂÂ
x –x

ÉÉÉÉ
ÂÂÂ
ÉÉÉÉ ÉÉÉÉ
ÂÂÂ
ÉÉÉÉ

Fig. 2-7 Pole traversal

Requirements:
AUTOMATIC mode, MD 24911: TRANSMIT_POLE_SIDE_FIX_1 = 0 or
MD 24951: TRANSMIT_POLE_SIDE_FIX_2 = 0
The control system inserts a traversing block at the step change point. This
block generates the smallest possible rotation to allow machining of the
contour to continue.

Corner without
pole traversal

ÂÂÂ
Corner ÉÉÉÉÉÉ
ÂÂ
ÉÉÉÉÉÉ
ÉÉÉÉÉ
ÂÂÂ ÂÂ
ÉÉÉÉÉÉ
x x

ÉÉÉÉÉ
ÂÂÂ ÂÂ
ÉÉÉÉÉ
Approach to Exit from pole
pole

Fig. 2-8 Machining on one pole side

Requirements:
AUTOMATIC mode,
MD 24911: TRANSMIT_POLE_SIDE_FIX_1 = 1 or 2 or
MD 24951: TRANSMIT_POLE_SIDE_FIX_2 = 1 or 2

Copyright © Siemens AG, 2005.


2/M1/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.1 TRANSMIT

The control system inserts a traversing block at the step change point. This
block generates the necessary rotation so that machining of the contour can
continue on the same side of the pole.

Transformation If the machining operation must continue from a position on the tool center path
selection in pole which corresponds to the pole of the activated transformation, then an exit from
the pole is specified for the new transformation.
If MD 24911: TRANSMIT_POLE_SIDE_FIX_1 = 0 or
MD 24951: TRANSMIT_POLE_SIDE_FIX_2 = 0 is set (pole traversal), then the
smallest possible rotation is generated at the beginning of the block that
implements exit from the pole. Depending on this rotation, the axis then
traverses either in front of or behind the turning center.
When MD 24911: TRANSMIT_POLE_SIDE_FIX_1 = 1 or
MD 24951: TRANSMIT_POLE_SIDE_FIX_2 = 1 machining continues in
front of the turning center (linear axis in positive control range);
when MD 24911: TRANSMIT_POLE_SIDE_FIX_1 = 2 or
MD 24951: TRANSMIT_POLE_SIDE_FIX_2 = 2 machining is behind the
turning center (linear axis in the negative control range).

Transformation The control system moves the axes involved in the transformation without
selection outside evaluating machine data $MC_TRANSMIT_POLE_SIDE_FIX_t. In this case, t =
pole 1 stands for the first and t = 2 for the second TRANSMIT transformation in the
channel.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-25
Kinematic Transformations (M1) 06.05
2.1 TRANSMIT

2.1.7 Working area limitations

Initial state When TRANSMIT is active, the pole is replaced by a working area limitation if
the tool center point cannot be positioned in the turning center of the rotary axis
involved in the transformation. This is the case when the axis perpendicular to
the rotary axis (allowing for tool offset) is not positioned on the same radial
plane as the rotary axis or if both axes are positioned mutually at an oblique
angle. The distance between the two axes defines a cylindrical space in the
BCS in which the tool cannot be positioned.
The illegal range cannot be protected by the software limit switch monitoring
function since the traversing range of the machine axes is not affected.

x
Distance between
axes
Unmachinable cylinder
Working area limitation

Fig. 2-9 Working area limitation based on offset linear axis

Traversal into Any motion that leads into the working area limitation is rejected with alarm
working area 21619. Any corresponding parts program block is not processed. The control
limitation system stops processing at the end of the preceding block.
If the motion cannot be foreseen promptly enough (JOG modes, positioning
axes), then the control stops at the edge of the working area limitation.

Response close If a tool center point path leads past the illegal range, the control automatically
to working area reduces the feedrate and path acceleration rate to ensure that the settings of
limitation the machine axes (MD 32000: MAX_AX_VELO[AX*] and MD 32300:
MAX_AX_ACCEL[AX*]) are not exceeded. The closer the path is to the working
area limitation, the greater the reduction in the feedrate may be.

Copyright © Siemens AG, 2005.


2/M1/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.1 TRANSMIT

2.1.8 Overlaid movements with TRANSMIT in SW 4

The control system cannot predict overlaid motions. However, these do not
interfere with the function provided that they are very small (e.g. fine tool offset)
in relation to the current distance from the pole (or from working area limitation).
With respect to axes that are relevant for the transformation, the transformation
monitors the overlaid motion and signals any critical quantity by alarm 21618.
This alarm indicates that the block-related velocity planning function no longer
adequately corresponds to the actual conditions on the machine. When the
alarm is output, the conventional, non-optimized online velocity monitor is
therefore activated. The preprocessing routine is re-synchronized with the main
run by a REORG generated internally in the control.
Alarm 21618 should be avoided whenever possible since it indicates a state
that can lead to axis overload and thus abortion of parts program processing.

2.1.9 Monitoring of rotary axis rotations over 360°

Ambiguity of The positions of the rotary axis are ambiguous with respect to the number of
rotary axis rotations. The control breaks down blocks containing several rotations around
positions the pole into sub-blocks.
This subdivision must be noted with respect to parallel actions (e.g. output of
auxiliary functions, block-synchronized positioning axis motions) since the
programmed block end is no longer relevant for synchronization, but the end of
the first sub-block instead. See:

References: /FB/, H2, “Auxiliary Function Output to PLC”


/FB/, S5, “Synchronized Actions”

In single block mode, the control processes individual blocks explicitly. In other
modes, the sub-blocks are traversed with Look Ahead like a single block. A
limitation of the rotary axis setting range is monitored by the software limit switch
monitoring function.

2.1.10 Supplementary conditions

Look Ahead All functions requiring Look Ahead (traversal through pole, Look Ahead) work
satisfactorily only if the relevant axis motions can be calculated exactly in
advance. With TRANSMIT, this applies to the rotary axis and the linear axis
perpendicular to it. If one of these axes is the positioning axis, then the Look
Ahead function is deactivated by alarm 10912 and the conventional online
velocity check activated instead.

Selection of The user is responsible for making the optimum choice of “Traversal through
method pole” or “Rotation around pole”. The active prevention of axis traversal through
the pole implemented in SW 2 and 3 has been eliminated in SW 4.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-27
Kinematic Transformations (M1) 06.05
2.1 TRANSMIT

Several pole A block can traverse the pole any number of times (e.g. programming of a helix
traversals with several turns). The parts program block is subdivided into a corresponding
number of sub-blocks. Analogously, blocks which rotate several times around
the pole are likewise divided into sub-blocks. The relevant restrictions applying
in SW 2 and 3 have been eliminated in SW 4.

Rotary axis as The rotary axis can be a modulo rotary axis. However, this is not a mandatory
modulo axis requirement as was the case in SW 2 and 3. The relevant restrictions applying
in SW 2 and 3 have been eliminated in SW 4.

Rotary axis as If the rotary axis without transformation is used as a spindle, it must be switched
spindle to position-controlled mode with SPOS before the transformation is selected.

TRANSMIT with When TRANSMIT is active, the channel identifier of posBCS[ax[3]] must have a
supplementary different name to the geometry axes in the part program. If posBCS[ax[3]] is
linear axis written only outside the TRANSMIT transformation, this restriction does not
apply if the axis has been assigned to a geometry axis. With active TRANSMIT,
no contour information is processed via ax[3].

REPOS It is possible to reposition on the sub-blocks produced as a result of the


extended TRANSMIT function in SW 4. In this case, the control uses the first
sub-block that is closest to the repositioning point in the BCS.

Block search In the case of block search with calculation, the block end point (of the last
sub-block) is approached in cases where intermediate blocks have been
generated as the result of the extended functionality in SW 4.

Copyright © Siemens AG, 2005.


2/M1/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.2 TRACYL

2.2 TRACYL

Note
The TRACYL transformation described below requires that unique names are
assigned to machine axes, channels and geometry axes when the
transformation is active. Compare
MD 10000: AXCONF_MACHAX_NAME_TAB,
MD 20080: AXCONF_CHANAX_NAME_TAB,
MD 20060: AXCONF_GEOAX_NAME_TAB.
This is the only method of ensuring unique assignments.

Task assignment Groove machining, see diagram.

Axis
configuration 1

CM

ÈÈ
ÈÈ
ASM XM

ZM

Legend:

XM Infeed axis, perpendicular to rotary axis


ZM Axis parallel to rotary axis
CM Rotary axis
ASM Working spindle

Fig. 2-10 Machining grooves on generated cylinder surface with X-C-Z kinematics

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-29
Kinematic Transformations (M1) 06.05
2.2 TRACYL

Axis The generated cylinder surface curve transformation allows a traversing path to
configuration 1 be specified with respect to the generated surface of a cylinder coordinate
system. The machine kinematics must correspond to the cylinder coordinate
system. It must include one or two linear axes and a rotary axis. The two linear
axes must be mutually perpendicular. The rotary axis must be aligned in parallel
to one of the linear axes and intersect the second linear axis. In addition, the
rotary axis must be co-linear to the cylinder coordinate system.
If there is only one linear axis (X), only grooves which are parallel to the
periphery of the cylinder can be generated. In the case of two linear axes (X,Z),
the groove pattern on the cylinder is optional. See Fig. 2-10.

Axis
configuration 2

CM

YM

ÈÈ
ÈÈ
XM

ASM

ZM

Legend:

XM Infeed axis, perpendicular to rotary axis


YM Supplementary axis
ZM Axis parallel to rotary axis
CM Rotary axis
ASM Working spindle

Fig. 2-11 Machining grooves on generated cylinder surface with X-Y-Z-C kinematics

If a third linear axis is available (Fig. 2-11) which can produce a right-handed
Cartesian coordinate system with the other two linear axes (axis
configuration 1), then it is used to offset the tool parallel to the programmed
path by means of tool radius compensation. thereby allowing grooves with
rectangular traversing section to be generated.

Copyright © Siemens AG, 2005.


2/M1/2-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
11.02
06.05 Kinematic Transformations (M1)
2.2 TRACYL

Functionality During transformation (both axis configurations), the full functionality of the
control is available, both for processing from the NC program and in JOG mode
(see 2.2.6).

Groove In the case of axis configuration 1, longitudinal grooves along the rotary axis are
cross-section subject to parallel limits only if the groove width corresponds exactly to the tool
radius.
Grooves in parallel to the periphery (transverse grooves) are not parallel at the
beginning and end.

ÉÉ
ÉÉ
ÉÉ
ÉÉ ËËË ËËË ÉÉÉÉ
ÉÉ
ÉÉ ËËË
ÉÉ ËËË ËËË
ÉÉ
ËËË ÉÉ
Longitudinal slot Transverse groove Longitudinal groove with parallel
without groove wall offset limit, with groove wall compen-
For axis configuration 1 without Y axis sation for axis configuration 2
TRAFO_TYPE_n = 512 with Y axis
TRAFO_TYPE_n = 513

Fig. 2-12 Grooves with and without groove wall offset

2.2.1 Preconditions for TRACYL

Number Up to 10 transformation data blocks can be defined for each channel in the
of transformations system. The machine data names of these transformations begin with
$MC_TRAFO .. and end with ... _n, whereby n stands for a number between 1
and 10. The first machine data has the same meaning as described for
TRANSMIT:
$MC_TRAFO_GEOAX_ASSIGN_TAB_n
$MC_TRAFO_TYPE_n
$MC_TRAFO_AXES_IN_n
The special settings described below apply to $MC_TRAFO_TYPE_n and
$MC_TRAFO_AXES_IN_n with respect to generated cylinder surface
transformation (TRACYL).

Number of Three of the 10 permitted data structures for transformations may be assigned
TRACYL to the TRACYL function. They are characterized by the fact that the value
structures assigned with $MC_TRAFO_TYPE_n is 512 or 513 or 514.
For these 3 TRACYL transformations, the following machine data must be set in
a defined way:
$MC_TRACYL_ROT_AX_OFFSET_t
$MC_TRACYL_ROT_SIGN_IS_PLUS_t
$MC_TRACYL_BASE_TOOL_t

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-31
Kinematic Transformations (M1) 10.04
06.05
2.2 TRACYL

In this case, t specifies the number of the declared TRACYL transformation


(maximum of 3).

Axis configuration The following overview shows the relationship between the axes of the machine
illustrated in Fig. 2-11 and the relevant axis data.

MD 20060: AXCONF_GEOAX_NAME_TAB MD 20050: AXCONF_GEOAX_ASSIGN_TAB

Chan. 2 Chan. 2 Chan. 2


Chan. 1 Chan. 1 Chan. 1
1. geometry axis [0] X 1 1
2. geometry axis [1] Y 2 4
3. geometry axis [2] Z 3 3
<byte> <byte>
<STRING> (0 to 10) (0 to 10)

If TRACYL is active MD:$MC_TRAFO_GEOAX_ASSIGN_TAB

MD 20080: AXCONF_CHANAX_NAME_TAB MD 20070: AXCONF_MACHAX_USED


Chan. 2 Chan. 2
Chan. 1 Chan. 1
1st channel axis [0] XC 2
2nd channel axis [1] YC 3
3rd channel axis [2] ZC 4
CC 1
4th channel axis [3] ASC 5
5th channel axis [4] – 0
6th channel axis [5] – 0
– 0
7th channel axis [6] –
8th channel axis [7] –
9th channel axis [8]
10th channel axis [9] <byte>
<STRING> (0 to 8)

MD 35000: SPIND_ASSIGN_TO_MACHAX MD 10000: AXCONF_MACHAX_NAME_TAB

1st machine axis [AX1] 1 CM


2nd machine axis [AX2] 0 XM
3rd machine axis [AX3] 0 YM
4th machine axis [AX4] 0 ZM
5th machine axis [AX5] 2 ASM
6th machine axis [AX6] 0 –
7th machine axis [AX7] 0 –
8th machine axis [AX8] 0

<byte>
(0 to 5) <STRING>

Fig. 2-13 Axis configuration for the example in Fig. 2-11

The highlighted configuration in Fig. 2-13 applies when TRACYL is active.

Assignment of According to the above axis configuration overview, the geometry axes to be
names to geometry involved in the TRACYL operation must be defined with:
axes $MC_AXCONF_GEOAX_NAME_TAB[0]=“X”
” _TAB[1]=“Y”
” _TAB[2]=“Z”
(name selection according to Fig. 2-13, also corresponds to default setting).

Copyright © Siemens AG, 2005.


2/M1/2-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.2 TRACYL

Assignment of These assignments are made depending on whether or not TRACYL is active.
geometry axes to
– TRACYL not active
channel axes A Y axis is traversed normally.

$MC_AXCONF_GEOAX_ASSIGN_TAB[0]=1
” _TAB[1]=2
” _TAB[2]=3

– TRACYL active
The Y axis becomes the axis in the peripheral surface direction of the
cylinder coordinate system.
$MC_TRAFO_GEOAX_ASSIGN_TAB[0]=1
” _TAB[1]=4
” _TAB[2]=3

Entry of Axes which do not belong to the Cartesian coordinate system are entered.
channel axes
$MC_AXCONF_CHANAX_NAME_TAB[0]=“XC”
” _TAB[1]=“YC”
” _TAB[2]=“ZC”
” _TAB[3]=“CC”
” _TAB[4]=“ASC”

Assignment of With the cd of the channel axes as a reference, the machine axis number to
channel axes to which the channel axes have been assigned is transferred to the control
machine axes system.
$MC_AXCONF_MACHAX_USED[0]=2
” [1]=3
” [2]=4
” [3]=1
” [4]=5
(entries corresponding to Fig. 2-11)

Identification of The user defines whether each machine axis is a spindle (value > 0: spindle
spindles number) or a path axis (value 0).
$MA_SPIND_ASSIGN_TO_MACHAX[0]=1
” [1]=0
” [2]=0
” [3]=0
” [4]=2

Assignment of With the cd of the machine axes as a reference, a machine axis name is
names to transferred to the control.
machine axes $MN_AXCONF_MACHAX_NAME_TAB[0]=“CM”
” [1]=“XM”
” [2]=“YM”
” [3]=“ZM”
” [4]=“ASM”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-33
Kinematic Transformations (M1) 10.04
06.05
2.2 TRACYL

2.2.2 TRACYL–specific settings

Type of The following paragraph describes how the transformation type is specified.
transformation

TRAFO_TYPE_n The user must specify the transformation type for the transformation data blocks
(maximum n = 10). For TRACYL, a VALUE of 512 must be set for axis
configuration 1 and a value of 513 for axis configuration 2 or 514 for no groove
side offset with supplementary linear axis. Transformation type 514 can also be
activated with groove side offset by means of an additional parameter. See also
Subsection 2.2.3 Activation.
Example of VALUE 512: MD 24100: TRAFO_TYPE_1=512

The setting must be made before TRACYL(d,t) is called. “t” is the number of the
declared TRACYL transformation.
The TRACYL transformation requires only a rotary axis and a linear axis
positioned perpendicular to the rotary axis. A real Y axis is used with
transformation type 514 in order, for example, to compensate a tool offset.

Transformation Cylinder surface curve transformation TRAFO_TYPE_n = 514


type 514 without
If the machine has another linear axis which is perpendicular to both the rotary
groove side offset axis and the first linear axis, transformation type 514 can be used to apply tool
offsets with the real Y axis. In this case, it is assumed that the user memory of
the second linear axis is small and will not be used to execute the part program.
The existing settings for $MC_TRAFO_GEOAX_ASSIGN_TAB_n apply.

Grooves with The required inclusion of the tool offset has already been taken into account for
groove side offset the TRACYL transformation with groove side offset.

Axis image The following paragraph describes how the transformation axis image is
specified.

TRAFO_AXES Three (or 4) channel axis numbers must be specified for the transformation data
_IN_n block n:
$MC_TRAFO_AXES_IN_1[0]= Channel axis number of axis radial
to rotary axis
$MC_TRAFO_AXES_IN_1[1]= Channel axis number of rotary axis
$MC_TRAFO_AXES_IN_1[2]= Channel axis number of axis parallel to
rotary axis
$MC_TRAFO_AXES_IN_1[3]= Channel axis number of additional axis,
parallel to generated cylinder surface and
perpendicular to rotary axis
(if axis configuration 2 is used)

Copyright © Siemens AG, 2005.


2/M1/2-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05 Kinematic Transformations (M1)
2.2 TRACYL

Example based on Fig. 2-11:


$MC_TRAFO_AXES_IN_1[0]=1
$MC_TRAFO_AXES_IN_1[1]=4
$MC_TRAFO_AXES_IN_1[2]=3
$MC_TRAFO_AXES_IN_1[3]=2

The setting must be made before TRACYL(d) or TRACYL(d,t) is called. The


axis numbers must refer to the channel axis sequences defined with
$MC_TRAFO_GEOAX_ASSIGN_TAB_n.

Grooves without For the transformation type 514, the following assignment of the indices is
groove side offset valid for $MC_TRAFO_AXES_IN_n[ ].
Meaning of the indices with respect to the base coordinate systems (BCS):

 [0]: Cartesian axis radial to rotary axis (if configured)


 [1]: Axis in generated cylinder surface perpendicular to rotary axis
 [2]: Cartesian axis parallel to rotary axis
 [3]: Linear axis parallel to index 2 in initial position of machine
Meaning of indices in relation to machine coordinate system (MCS):

 [0]: Linear axis radial to rotary axis (if configured)


 [1]: Rotary axis
 [2]: Linear axis parallel to rotary axis
 [3]: Linear axis perpendicular to the axes of indices [0] and [1]

Rotational position The rotational position of the axis on the cylinder peripheral surface
perpendicular to the rotary axis must be defined as follows:

Y
b

a
Angle a-b in degrees

a Rotational position of rotary axis with C=0


b Position of Y= 0

Fig. 2-14 Center of rotation of axis on generated cylinder surface

TRACYL The rotational position of the peripheral surface in relation to the defined zero
_ROT_AX position of the rotary axis is specified with:
_OFFSET_t $MC_TRACYL_ROT_AX_OFFSET_t= ... ; degrees

In this case, “t” is substituted by the number of the TRACYL transformations


declared in the transformation data blocks
(t must not be more than 2).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-35
Kinematic Transformations (M1) 06.05
2.2 TRACYL

Direction of The direction of rotation of the rotary axis is specified by machine data as
rotation described in the following paragraph.

TRACYL If the direction of rotation of the rotary axis on the x-y plane is counter-clockwise
_ROT_SIGN when viewed against the z axis, then the machine data must be set to TRUE,
_IS_PLUS_t otherwise to FALSE.

TRUE
+
x

$MC_TRACYL_ROT_SIGN_IS_PLUS_t=TRUE

In this case, “t” is substituted by the number of the TRACYL transformations


declared in the transformation data blocks
(t must not be more than 2).

Replaceable The PLC is informed when a geometry axis has been replaced using GEOAX( )
geometry axes through the optional output of an M code that can be set in machine data.

 MD 22534: TRAFO_CHANGE_M_CODE
Number of the M code that is output at the VDI interface in the case of
transformation changeover.

Note
If this machine data is set to one of the values 0 to 6, 17, 30, then no M code is
output.

References: /FB/, K2, “Coordinate Systems, Axis Types,


Axis Configurations, Actual-Value System for Workpiece,
External Zero Offset”

Position of The position of the tool zero point in relation to the origin of the Cartesian
tool zero coordinate system is specified by machine data as described in the following
paragraph.

Copyright © Siemens AG, 2005.


2/M1/2-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.2 TRACYL

TRACYL_ Machine data $MC_TRACYL_BASE_TOOL_t is used to inform the control of


BASE_TOOL_t the position of the tool zero point in relation to the origin of the cylinder
coordinate system declared for TRACYL. The machine data has three
components for the axes X, Y, Z of the machine coordinate system.

ty
tx
0 Z

Y
X tz

Tool zero YC
point

Fig. 2-15 Position of tool zero in relation to machine zero


(see Fig. 2-11)

Example:
$MC_TRACYL_BASE_TOOL_t[0]=tx
” [1]=ty
” [2]=tz
In this case, t is replaced by the number of the TRACYL transformations
declared in the transformation data blocks.
(t must not be more than 2).

0
Z

d*π

Groove (example)

Fig. 2-16 Cylinder coordinate system for Fig. 2-15

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-37
Kinematic Transformations (M1) 10.04
06.05
2.2 TRACYL

2.2.3 Activation of TRACYL

TRACYL After the settings described above have been made, the TRACYL function can
be activated:
TRACYL(d)
or
TRACYL(d,t) TRACYL(reference diameter, Tracyl data block)
The first declared TRACYL function is activated with TRACYL(d). TRACYL(t)
activates the t-th declared TRACYL function. t may not be more than 2. The
value d stands for the current diameter of the cylinder to be machined.
Between activation of the function and deactivation as described below, the
traversing movements for the axes of the cylinder coordinate system can be
programmed.

Transformation An additional call parameter is used for transformation type 514; this is the third
type 514 with parameter with which TRACYL transformation with groove side offset can be
groove side offset selected:
TRACYL(reference diameter, Tracyl data block, groove side offset).

 Reference diameter: Obligatory parameter (must always be defined) Value


range: >0

 Tracyl data block: Optional parameter, preset value is 1


Value range: 1,2

 Groove side offset: Optional parameter, preset value corresponds to value


specified in machine data
MD 24808: TRACYL_DEFAULT_MODE_1) or
MD 24858: TRACYL_DEFAULT_MODE_2)
Value range: 0,1

2.2.4 Deactivation of TRACYL function

TRAFOOF Keyword TRAFOOF deactivates an active transformation. When the


transformation is deactivated, the base coordinate system is again identical to
the machine coordinate system.
An active TRACYL transformation is likewise deactivated if one of the other
transformations is activated in the relevant channel.
(e.g. TRANSMIT, TRAANG, TRAORI).
References: /FB/, F2, “5-Axis Transformation”.

Copyright © Siemens AG, 2005.


2/M1/2-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05 Kinematic Transformations (M1)
2.2 TRACYL

2.2.5 Special system reactions with TRACYL

The transformation can be selected and deselected via parts program or MDA.

Please note
on selection
 An intermediate motion block is not inserted (phases/radii).
 A spline block sequence must be terminated.
 Tool radius compensation must be deselected.
 The frame which was active prior to TRACYL is deselected by the control
(corresponds to “Reset programmed frame” G500).

 An active working area limitation is deselected by the control for the axes
affected by the transformation
(corresponds to programmed WALIMOF).

 Continuous path control and rounding are interrupted.


 DRF offsets must have been deleted by the operator.
 In the case of cylinder generated surface curve transformation with groove
wall compensation (axis configuration 2, TRAFO_TYPE_n=513), the axis
used for the correction (TRAFO_AXES_IN_n[3]) must be set to zero (y=0)
so that the groove is machined in the center of the programmed groove
center line.

Please note on The same points apply for deselection as for selection.
deselection

Restrictions when The restrictions listed below must be noted when the
TRACYL is active TRACYL function is active:

Tool change Tools may only be changed when the tool radius compensation function is
deselected.

Supplementary With active TRANSMIT, the channel identifier of posBCS[ax[3]] must have
conditions for another name in the part program, like the geometry axes. If posBCS[ax[3]] is
TRACYL without written only outside the TRACYL transformation, this restriction does not apply if
groove side offset the axis has been assigned to a geometry axis. With active TRACYL, no
contour information is processed via ax[3].

Frame All instructions which refer exclusively to the base coordinate system are
permissible (FRAME, tool radius compensation). Unlike the procedure for
inactive transformation, however, a frame change with G91 (incremental
dimension) is not specially treated. The increment to be traversed is evaluated
in the workpiece coordinate system of the new frame – regardless of which
frame was effective in the previous block.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-39
Kinematic Transformations (M1) 06.03
06.05
2.2 TRACYL

Rotary axis The rotary axis cannot be programmed because it is occupied by a geometry
axis and cannot thus be programmed directly as a channel axis.
Extensions with SW 6.4 and later
An offset in the rotary axis CM can be entered, for example, by compensating
the inclined position of a workpiece in a frame within the frame chain. The x and
y values are then as illustrated in the following diagram.

CM

x
Diameter d

Fig. 2-17 Rotary axis offset with TRACYL

With SW 6.4 and later, this offset can also be included in the transformation as
an offset in the rotary axis or as a y offset. To ensure that the total axial frame of
the Tracyl rotary axis, i.e. the translation, fine offset, mirroring and scaling, is
included in the transformation, the following settings must be made:
MD 24805: TRACYL_ROT_AX_FRAME_1 = 1
MD 24855: TRACYL_ROT_AX_FRAME_2 = 1

Note
Changes in the axis assignments are converted every time the transformation
is selected or deselected. For further information about axial offsets for rotary
axes to the SZS as an offset on the peripheral surface, please see:
References: /FB/, K2, “Coordinate Systems, Frames

Axis utilization The axes:


– in the generated cylinder surface perpendicular to the rotary axis (Y) and
– additional axis (YC)
may not be used as a positioning or oscillation axis.

Copyright © Siemens AG, 2005.


2/M1/2-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.2 TRACYL

Exceptions Axes affected by the transformation cannot be used:

 as a preset axis (alarm)


 to approach the fixed point (alarm)
 for referencing (alarm)

Interruption of The following points must be noted with respect to interrupting parts program
parts program processing in connection with TRACYL:

AUTOMATIC after If parts program processing is interrupted when the transformation is active
JOG followed by traversal in JOG mode, then the following must be noted when
AUTOMATIC is selected again:

 The transformation is active in the approach block from the current position
to the point of interruption. No monitoring for collisions takes place.

Warning
! The operator is responsible for ensuring that the tool can be re-positioned
without any difficulties.

START after If parts program processing is aborted with RESET and restarted with START,
RESET then the following must be noted:

 The remaining parts program is traversed reproducibly only if all axes are
traversed to a defined position by means of a linear block (G0 or G1) at the
beginning of the parts program. A tool which was active on RESET may no
longer be taken into account by the control (settable via machine data).

2.2.6 Jog

Special features When generated cylinder surface transformation with groove wall compensation
relating to JOG ($MC_TRAFO_TYPE = 513) is active in JOG mode, it must be noted that the
axes are traversed depending on the preceding status in AUTOMATIC. When
groove wall compensation is active, the axes movement therefore differs from
the situation when the correction function is deselected. The parts program can
therefore be continued (REPOS) after a parts program interruption.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-41
Kinematic Transformations (M1) 06.05
2.3 TRAANG (inclined axis)

2.3 TRAANG (inclined axis)

Note
The TRAANG transformation described below requires that unique names are
assigned to machine axes, channels and geometry axes when the
transformation is active. Compare
MD 10000: AXCONF_MACHAX_NAME_TAB,
MD 20080: AXCONF_CHANAX_NAME_TAB,
MD 20060: AXCONF_GEOAX_NAME_TAB.
This is the only method of ensuring unique assignments.

Task assignment Grinding operations

MU
α

AS

Grinding disc

Workpiece

Z MZ

Fig. 2-18 Machine with inclined infeed axis

Legend:
X, Z Cartesian coordinate system for programming
C Rotary axis
AS Working spindle
MZ Machine axis (linear)
MU Inclined axis

Copyright © Siemens AG, 2005.


2/M1/2-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.3 TRAANG (inclined axis)

The following range of machining operations is available:


1. Longitudinal grinding
2. Face grinding
3. Grinding of a specific contour
4. Oblique plunge-cut grinding

1 ÉÉÉÉÉÉ
ÉÉÉÉÉÉ
ÉÉÉÉÉÉ
2

ÉÉÉÉÉÉ
ÉÉÉÉÉÉ
ÉÉÉÉÉÉ
ÉÉÉÉÉÉ
4

Fig. 2-19 Possible grinding operations

2.3.1 Preconditions for TRAANG (inclined axis)

Axis configuration To be able to program in the Cartesian coordinate system (see Fig. 2-18: X, Y,
Z), it is necessary to inform the control of the correlation between this coordinate
system and the actually existing machine axes (MU, MZ):

 Assignment of names to geometry axes


 Assignment of geometry axes to channel axes
– general situation (inclined axis not active)
– inclined axis active

 Assignment of channel axes to machine axis numbers


 Identification of spindles
 Allocation of machine axis names

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-43
Kinematic Transformations (M1) 10.04
06.05
2.3 TRAANG (inclined axis)

With the exception of the “– Inclined axis active” point, the procedure is the
same as for the normal axis configuration.
References: /FB/, K2, “Coordinate Systems, Axis Types,
Axis Configurations, Actual-Value System for Workpiece,
External Zero Offset”

Number Up to 10 transformation data blocks can be defined for each channel in the
of transformations system. The machine data names of these transformations begin with
$MC_TRAFO .. and end with ... _n, where n stands for a number between 1 and
10. The following sections include descriptions of these data:
$MC_TRAFO_GEOAX_ASSIGN_TAB_n
$MC_TRAFO_TYPE_n
$MC_TRAFO_AXES_IN_n

Number of inclined Two of the 10 permitted data structures for transformations may be assigned to
axes the inclined axis function. They are characterized by the fact that the value
assigned with $MC_TRAFO_TYPE_n is 1024.

Axis configuration The axes of the grinding machine illustrated in Fig. 2-18 must be entered as
follows in the machine data:

Copyright © Siemens AG, 2005.


2/M1/2-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05 Kinematic Transformations (M1)
2.3 TRAANG (inclined axis)

MD 20060: AXCONF_GEOAX_NAME MD 20050: AXCONF_GEOAX_ASSIGN


_TAB _TAB
Chan. 2 Chan. 2 Chan. 2
Chan. 1 Chan. 1 Chan. 1
1. geometry axis [0] 0 4
X
0 0
2. geometry axis [1] Y
1 1
3. geometry axis [2] Z <byte> <byte>
<STRING> (0 to 10) (0 to 10)

If inclined axis is active MD:$MC_TRAFO_GEOAX_ASSIGN_TAB

MD 20080: AXCONF_CHANAX_NAME_TAB MD 20070: AXCONF_MACHAX_USED


Chan. 2 Chan. 2

Chan. 1 Chan. 1
1st channel axis [0] Z 3
2nd channel axis [1] C
3rd channel axis [2] 1
AS1 4
4th channel axis [3] MU 2
5th channel axis [4] –
6th channel axis [5] 0
– 0
7th channel axis [6] –
8th channel axis [7] 0
– 0
9th channel axis [8] –
10th channel axis [9] – <byte>
<STRING> (0 to 8)

If inclined axis is active


MD 35000: SPIND_ASSIGN_TO MD 10000: AXCONF_MACHAX_NAME_TAB
_MACHAX
1.st machine axis [AX1] 1 C1
2nd machine axis [AX2] 0 MU
3rd machine axis [AX3] 0 MZ
4th machine axis [AX4] 2 AS1
5th machine axis [AX5] 0 –
6th machine axis [AX6] 0 –
7th machine axis [AX7] 0 –
8th machine axis [AX8] 0

<byte>
(0 to 5) <STRING>

Fig. 2-20 Axis configuration for the example in Fig. 2-18

The highlighted configuration in Fig. 2-20 applies when TRAANG is active.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-45
Kinematic Transformations (M1) 10.04
06.05
2.3 TRAANG (inclined axis)

2.3.2 TRAANG-specific settings

Type of
transformation

TRAFO_TYPE_n The user must specify the transformation type in machine data
$MC_TRAFO_TYPE_n for the transformation data blocks (maximum n = 10).
The value for an inclined axis is 1024:
MD 24100: TRAFO_TYPE_1=1024

Axis image

TRAFO_AXES Two channel axis numbers must be specified for the transformation data block
_IN_n n:
MD 24110: TRAFO_AXES_IN_1[0] = 4 ; channel axis number of inclined axis
MD 24110: TRAFO_AXES_IN_1[1] = 1 ; channel axis number of parallel axis

for Z
MD 24110: TRAFO_AXES_IN_1[2] = 0 ; channel axis number not active

X
TRAFO_AXES_IN_n[1]
MU
TRAFO_AXES_IN_n[0] = 4

TRAANG_ANGLE_m

Z
TRAFO_AXES_IN_n[1]=1

Fig. 2-21 Parameter TRAANG_ANGLE_m

Assignment of Example:
geometry axes to
MD 24430: TRAFO_TYPE_5 = 8192 Chaining
channel axes
MD 24110: TRAFO_AXIS_IN_1[0..x]

MD 24434: TRAFO_GEOAX_ASSIGN_TAB_5[0] = 1 Definition geo axis


assignment of transf. 1
MD 24434: TRAFO_GEOAX_ASSIGN_TAB_5[1] = 6 Definition geo axis
assignment of transf. 1
MD 24434: TRAFO_GEOAX_ASSIGN_TAB_5[2] = 3 Definition geo axis
assignment of transf. 1

MD 24996: TRACON_CHAIN_2[0] = 2 Input variables in TRACON


MD 24996: TRACON_CHAIN_2[1] = 3 Input variables in TRACON
MD 24996: TRACON_CHAIN_2[2] = 0 Input variables in TRACON
MD 24996: TRACON_CHAIN_2[3] = 0 Input variables in TRACON

Copyright © Siemens AG, 2005.


2/M1/2-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.3 TRAANG (inclined axis)

Angle of
inclined axis

TRAANG_ Machine data $MC_TRAANG_ANGLE_m is used to inform the control of the


ANGLEm angle which exists between a machine axis and the inclined axis in degrees.
$MC_TRAANG_ANGLE_m = Angle between a
Cartesian axis and the associated inclined machine axis in
degrees. The angle is counted positively in the clockwise
direction (see Fig. 2-18, angle α).
In this case, “m” is substituted by the number of the TRAANG transformation
declared in the transformation data blocks.
m must not be more than 2.

Permissible The permissible angular range is:


angular range –90 < TRAANG_ANGLE_m < 0
0 < TRAANG_ANGLE_m < 90
No transformation is required for 0.
With +/ – 90 the inclined axis is positioned parallel to the second linear axis.

Position of tool
zero point

TRAANG_ Machine data $MC_TRAANG_BASE_TOOL_m is used to inform the control of


BASE_TOOL_m the position of the tool zero point in relation to the origin of the coordinate
system declared for the inclined axis function. The machine data has three
components for the three axes of the Cartesian coordinate system.
Zero is entered as default.
The corrections are not converted when the angle is changed.

Optimization of
velocity control

The following machine data are used to optimize the velocity control in jog
mode and in positioning and oscillation modes:

TRAANG_ Machine data $MC_TRAANG_PARALLEL_VELO_RES_m is used to set the


PARALLEL_VELO_ velocity reserve which is held ready on the parallel axis (see
RES_m $MC_TRAFO_AXES_IN_n[1]) for the compensatory motion.
Value range: 0 ... 1
0 When value 0 is set, the control automatically determines the
reserve: the axes are limited with equal priority.
(= default setting)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-47
Kinematic Transformations (M1) 06.05
2.3 TRAANG (inclined axis)

>0 With values of >0, the reserve is fixed at

$MC_TRAANG_PARALLEL Permissible machine axis velocity


_VELO_RES_m * value of parallel axis

The velocity characteristics of the vertical axis are determined by the


control on the basis of the reserve.

TRAANG_PARALL Machine data $MC_TRAANG_PARALLEL_ACCEL_RES_m is used to set the


EL_ACCEL_RES_ axis acceleration reserve which is held ready on the parallel axis (see
m $MC_TRAFO_AXES_IN_n[1]) for the compensatory motion.
Value range: 0 ... 1
0 When value 0 is set, the control automatically determines the reserve:
the axes are accelerated with equal priority.
(= default setting)
>0 With values of >0, the acceleration rate is fixed at

$MC_TRAANG_PARALLEL Permissible machine axis velocity


_ACCEL_RES_m value of the parallel axis
*

The velocity characteristics of the vertical axis are determined by the


control on the basis of the reserve.

Replaceable The PLC is informed when a geometry axis has been replaced using GEOAX( )
geometry axes through the optional output of an M code that can be set in machine data.

 MD 22534: TRAFO_CHANGE_M_CODE
Number of the M code that is output at the VDI interface in the case of
transformation changeover.

Note
No M code is output if the machine data is set to one of the values 0 to 6, 17 or
30.

References: /FB/, K2, “Coordinate Systems, Axis Types,


Axis Configurations, Actual-Value System for Workpiece,
External Zero Offset”

Copyright © Siemens AG, 2005.


2/M1/2-48 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.3 TRAANG (inclined axis)

2.3.3 Activation of TRAANG

TRAANG(a) After the settings described above have been made, the TRAANG function can
be activated:
TRAANG(a) or
TRAANG(a,n)
The first declared “inclined axis” transformation is activated with TRAANG(a).
The angle of the inclined axis can be specified with “a”.
Software versions < 6.4
If angle “a” is omitted or zero is entered, the transformation is activated with the
parameterization of the previous selection.
The default selection according to the machine data applies for the initial
selection.
SW 6.4 and higher
If a (angle) is omitted (e.g. TRAANG(), TRAANG(,n) ), the transformation is
activated with the parameter settings of the previous selection. On the first
selection, the presettings according to the machine data apply. An angle a = 0
(e.g. TRAANG(0), TRAANG(0,n)) is a valid parameter setting and is no longer
equivalent to the omission of the parameter, as in the case of older versions.
The permissible value range for a is: –90 degrees < a < + 90 degrees.
TRAANG(a,n) activates the nth declared inclined axis transformation.
This form is required only if several transformations are activated in the channel.
n must not be more than 2.

Programming TRAANG(a,1) == TRAANG(a,0) == TRAANG(a,) == TRAANG(a)


variants

Between activation of the function and deactivation as described below, the


traversing movements for the axes of the Cartesian coordinate system must be
programmed.

2.3.4 Deactivation of TRAANG

TRAFOOF Keyword TRAFOOF deactivates an active transformation. When the


transformation is deactivated, the base coordinate system is again identical to
the machine coordinate system.
An active TRAANG transformation is likewise deactivated if one of the other
transformations (e.g. TRACYL, TRANSMIT, TRAORI) is activated in the
appropriate channel
(e.g. TRACYL, TRANSMIT, TRAORI).
References: /FB/, F2, “5-Axis Transformation”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-49
Kinematic Transformations (M1) 06.03
06.05
2.3 TRAANG (inclined axis)

2.3.5 Special system reactions with TRAANG

The transformation can be selected and deselected via parts program or MDA.

Selection and
deselection
 An intermediate motion block is not inserted (phases/radii).
 A spline block sequence must be terminated.
 Tool radius compensation must be deselected.
 The current frame is deselected by the control system
(corresponds to programmed G500).

 An active working area limitation is deselected by the control for the axes
affected by the transformation (corresponds to programmed WALIMOF).

 An activated tool length compensation is included in the transformation by


the control.

 Continuous path control and rounding are interrupted.


 DRF offsets must have been deleted by the operator.
 All axes specified in machine data $MC_TRAFO_AXES_IN_n must be
synchronized on a block-related basis (e.g. no traversing instruction with
POSA...).

Restrictions

Tool change Tools may only be changed when the tool radius compensation function is
deselected.

Frame All instructions which refer exclusively to the base coordinate system are
permissible (FRAME, tool radius compensation). Unlike the procedure for
inactive transformation, however, a frame change with G91 (incremental
dimension) is not specially treated. The increment to be traversed is evaluated
in the workpiece coordinate system of the new frame – regardless of which
frame was effective in the previous block.
Extensions with SW 6.4 and later
When TRAANG is selected and deselected, the assignment between geometry
axes and channel axes can change. With SW 6.4 and later, the user can apply
these geometric contour sections to the axial frame as a translation, rotation,
scaling and mirroring in relation to the x and z plane with respect to the inclined
infeed axis.
For further information about these frame offsets with transformations, see:
References: /FB/, K2, “Axes, Coordinate Systems, Frames”

Copyright © Siemens AG, 2005.


2/M1/2-50 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.3 TRAANG (inclined axis)

Exceptions Axes affected by the transformation cannot be used:

 as a preset axis (alarm)


 to approach the fixed point (alarm)
 for referencing (alarm)

Velocity control

The velocity monitoring function for TRAANG is implemented as standard


during preprocessing.
Monitoring and limitation in the main run are activated:

 In AUTOMATIC mode if a positioning or oscillation axis has been


programmed that is involved in the transformation

 On changeover to JOG mode


The monitoring function is transferred again from the main run to block
preprocessing if the preprocessing is re-synchronized with the main run
(currently, for example, on changeover from JOG to AUTOMATIC).
The velocity monitoring function in preprocessing utilizes the dynamic limitations
of the machine better than the monitoring function in the main run.
This also applies to machines on which, with oblique machining operations,

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-51
Kinematic Transformations (M1) 10.00
06.05
2.3 TRAANG (inclined axis)

2.3.6 Programming an inclined axis: G05, G07 (from SW 5.3)

Function The following functions are available:

 Position programming and display in the Cartesian coordinate system


 Cartesian calculation of tool offset and zero offset
 Programming of angles for the inclined axis in the NC program
 Approach starting position for inclined plunge cutting (G07)
 Inclined plunge cutting (G05)
 The grinding wheel can be moved in JOG mode either according to
Cartesian coordinates or in the direction of the inclined axis (display remains
Cartesian).
The selection is made via DB21-28 DBX29.4 “PTP travel”. If PTP travel is
activated, only the real U axis moves, the Z axis display is updated.

Programming

V
X
α

N50
N60
Grinding disc
Workpiece

Fig. 2-22 Machine with inclined infeed axis

Example:
N... ; Program angle for the inclined axis
N50 G07 X70 Z40 F4000 ; Approach starting position
N60 G05 X70 F100 ; Inclined plunge cutting
N...

Copyright © Siemens AG, 2005.


2/M1/2-52 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Kinematic Transformations (M1)
2.3 TRAANG (inclined axis)

Supplementary
conditions
 It is only meaningful to select the function “Cartesian PTP travel” in JOG
mode (motion according to G05) if transformation is active (TRAANG). Note
the value set in MD 20140 TRAFO_RESET_VALUE.

 REPOS offsets must be traversed back in JOG mode in the Cartesian


coordinates while “PTP travel” is not active.

 The Cartesian working area limitation is monitored for overtravel in jog mode
if “PTP travel” is active and the axis will brake before overtraveling. If “PTP
travel” is not active, the axis can be traversed right up to the working area
limitation.
For further information, see Section “Cartesian PTP travel”.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-53
Kinematic Transformations (M1) 06.05
2.4 Chained transformations

2.4 Chained transformations

Introduction SW 5 and higher supports chaining of the kinematic transformations described


here:

 TRANSMIT
 TRACYL
 TRAANG (inclined axis)
as well as those described in

References: /FB/, F2, “3 to 5-axis transformations”

 Orientation transformations
 Universal milling head
with another transformation of the “Inclined axis” type.

Applications The following is a selection from the range of possible chained transformations:
– Grinding contours that are programmed as a side line of a cylinder
(TRACYL) using an inclined grinding wheel e.g. tool grinding.
– Finish cutting of a contour that is not round and was generated with
TRANSMIT using inclined grinding wheel.

Note
The transformations described below require that individual names are
assigned to machine axes, channels and geometry axes when the
transformation is active. Compare MD:
MD 10000: AXCONF_MACHAX_NAME_TAB,
MD 20080: AXCONF_CHANAX_NAME_TAB,
MD 20060: AXCONF_GEOAX_NAME_TAB.
This is the only method of ensuring unique assignments.

Copyright © Siemens AG, 2005.


2/M1/2-54 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05 Kinematic Transformations (M1)
2.4 Chained transformations

Axis configuration The following configuration measures are necessary for a chained
transformation:

 Assignment of names to geometry axes


 Assignment of names to channel axes
 Assignment of geometry axes to the channel axes
– General case (no transformation active)

 Assignment of channel axes to machine axis numbers


 Identification of spindle, rotation, modulo for axes
 Allocation of machine axis names.
 Transformation-specific settings (for each single transformation and for each
chained transformation)
– Transformation type
– Axes included in the transformation
– Assignment of geometry axes to the channel axes with active
transformation
– According to transformation, also
rotational position of the coordinate system,
direction of rotation,
tool zero or original coordinate system
angle of inclined axis, etc.

Number Up to ten transformation data blocks can be defined for each channel in the
of transformations system. The machine data names of these transformations begin with
$MC_TRAFO .. and end with ... _n, whereby n stands for a number between 1
and 10.

Number of chained Of the maximum of 10 transformations for a channel, up to two chained


transformations transformations can be defined.

Transformation When configuring the machine data, the data concerning the single
sequence transformations (that may also become part of chained transformations) must
be specified before the data concerning the chained transformations.

Chaining With chained transformations the second transformation must be “inclined axis”
sequence (TRAANG).

Chaining direction The BCS is the input for the first of the transformations to be chained; the MCS
is the output for the second one.

Supplementary The supplementary conditions and special cases indicated in the individual
conditions transformation descriptions are also applicable for use in chained
transformations.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-55
Kinematic Transformations (M1) 06.05
2.4 Chained transformations

2.4.1 Activating chained transformations

TRACON A chained transformation is activated via:

TRACON(trf, par)

where:
trf Number of the chained transformation:
0 or 1 for first/single chained transformation.
If nothing is programmed here, then this has the
same meaning as specifying value 0 or 1,
i.e. the first/single transformation is activated.
2 for the second chained transformation.
(Values not equal to 0 – 2 generate an error alarm).
par One or more parameters separated by a comma for the
transformations in the chain expecting parameters.
For example, the angle of the inclined axis. If parameters are
not set, the defaults or the parameters last used take effect.
Commas must be used to
ensure that the specified parameters are evaluated in the
sequence in which they are expected,
if defaults are to act for previous
parameters. In particular, a comma is required before at least
one parameter, even though
it is not necessary to specify trf. For example:
TRACON( , 3.7).
If another transformation was previously activated, it is implicitly disabled by
means of TRACON().

2.4.2 Switching off chained transformations

TRAFOOF A chained transformation is switched off with TRAFOOF just like any other
transformation.

2.4.3 Special characteristics of chained transformations

Tool data A tool is always assigned to the first transformation in a chain. The subsequent
transformation then behaves as if the active tool length were zero. Only the
basic tool lengths set in the machine data (_BASE_TOOL_) are valid for the
first transformation in the chain.

Example Section 6.3 contains configuration examples for single transformations and the
transformation chains created from them.

Copyright © Siemens AG, 2005.


2/M1/2-56 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05 Kinematic Transformations (M1)
2.4 Chained transformations

2.4.4 Persistent transformation

Function A persistent transformation is always active and has a relative effect to the other
explicitly selected transformations. Other selected transformation are computed
as the first chained transformation in relation to the persistent transformation.
Transformations such as TRANSMIT that must be selected in relation to the
persistent transformation must be parameterized in a chain with the persistent
transformation by means of TRACON. It is the first chained transformation
rather than the TRACON transformation which is programmed in the part
program.
For further information about programming, see
References: /PGA/, Transformations, “Chained transformation”

Selection and The persistent transformation is selected via the following machine data:
deselection
MD 20144:TRAFO_MODE_MASK,
Bit 0 = 1 MD 20144 TRAFO_RESET_VALUE
defines persistent transformation.
MD 20140:TRAFO_RESET_VALUE= Number of the transformation data
block of the persistent transformation
The following must also be set: i.e. taken into account is:
MD 20110:RESET_MODE_MASK
Bit 0 = 1, ; Bit 7 is evaluated
Bit 7 = 0. ; MD 20140:TRAFO_RESET_VALUE
; determines the transformation
data block
MD 20112:START_MODE_MASK
MD 20118:GEOAX_CHANGE_RESET= TRUE i.e. geometry axes
are reset.
Alarm 14404 is generated if these additional data are not parameterized
correctly.
TRAFOOF deselects the active TRACON and automatically selects the
persistent transformation.

Effects on HMI As a transformation is always active with the persistent transformation, the HMI
operation user interface is adapted accordingly for the selection and deselection of
transformations:
TRACON on HMI
The HMI operator interface does not now display TRACON, but the 1st
transformation chained with TRACON, e.g. TRANSMIT. Accordingly, the
transformation type of the 1st chained transformation is returned by the
corresponding system variable, i.e. $P_TRAFO and $AC_TRAFO. Cycles
written in TRANSMIT can then be used directly.
TRAFOOF on HMI
In accordance with the TRAFOOF programming instruction, no transformation
is displayed in the G code list on the HMI user interface. System variables
$P_TRAFO and $AC_TRAFO therefore return a value of 0, the persistent
transformation is operative and the BCS and MCS coordinate systems do not
coincide. The displayed MCS position always refers to the actual machine axes.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-57
Kinematic Transformations (M1) 10.04
06.05
2.4 Chained transformations

System variable New system variable returns the transformation types of the active chained
transformations.

Description NCK variables

No transformation active: 0 $P_TRAFO_CHAIN[0]


One transformation active: Type of 1st chained
transformation with TRACON, or type of active
transformation if not TRACON

No transformation active: 0 $P_TRAFO_CHAIN[1]


One transformation active: Type of 2nd chained $AC_TRAFO_CHAIN[1]
transformation with TRACON

Are not used unless more than 2 transformations are $P_TRAFO_CHAIN[2]


chained. $AC_TRAFO_CHAIN[2] and
These variables always return 0 in the current $P_TRAFO_CHAIN[3]
version $AC_TRAFO_CHAIN[3]

Display persistent transformation:


$P_TRAFO_CHAIN[0], $AC_TRAFO_CHAI[0]
These settings allow an active transformation to be displayed reliably in the part
program or in cycles.
Difference between a TRACON and the other transformations:
$P_TRAFO, $AC_TRAFO if no transformation is active, or
$P_TRAFO_CHAIN[1], $AC_TRAFO_CHAI[1] is interrogated for a value other
than zero.

Frames Frame adjustments for selection and deselection of the TRACON are carried
out as if there was only the first chained transformation. Transformations on the
virtual axis cease to be effective when TRAANG is selected.

JOG The persistent transformation remains in effect when traversing with JOG.

Supplementary The persistent transformation does not change the principle operating
conditions sequences in the NCK. All restrictions applying to an active transformation also
apply to the persistent transformation.
A RESET command still deselects any active transformation completely; the
persistent transformation is selected again. The persistent transformation is not
reselected under error conditions. A corresponding alarm is generated to
indicate the error constellation.
Alarm 14401 or 14404 can be activated when TRAANG is the persistent
transformation. When the persistent transformation is active, other
transformation alarms may generated in response to errors depending on the
transformation type selected.
The transformation is deselected implicitly during referencing. A RESET or
START command must be issued after referencing in order to reselect the
persistent transformation.

Copyright © Siemens AG, 2005.


2/M1/2-58 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05 Kinematic Transformations (M1)
2.4 Chained transformations

Example For a lathe with an inclined additional Y axis, the transformation of the inclined
axis should be part of the machine configuration and therefore does not have to
be considered by the programmer. TRACYL or TRANSMIT is used to select
transformations which must then include TRAANG. When the programmed
transformations are deactivated, TRAANG is automatically activated again,
TRACYL or TRANSMIT is displayed accordingly on the HMI operator interface.
Machine data for a turning machine with Y1 axis, inclined in relation to X1 but
perpendicular to Z1.
CANDATA (1)
; Kinematic without transformations
MD 20080: AXCONF_CHANAX_NAME_TAB[1] = “Y2”
MD 20050: AXCONF_GEOAX_ASSIGN_TAB[0] = 1
MD 20050: AXCONF_GEOAX_ASSIGN_TAB[1] = 0
MD 20050: AXCONF_GEOAX_ASSIGN_TAB[2] = 3
; Data for TRAANG
MD 24100: TRAFO_TYP_1 = 1024 ; TRAANG Y1 axis inclined in relation to X1,
; perpendicular to Z1
MD 24110: TRAFO_AXES_IN_1[0] = 2
MD 24110: TRAFO_AXES_IN_1[1] = 1
MD 24110: TRAFO_AXES_IN_1[2] = 3
MD 24110: TRAFO_AXES_IN_1[3] = 0
MD 24110: TRAFO_AXES_IN_1[4] = 0
MD 24120: TRAFO_GEOAX_ASSIGN_TAB_1[0] = 1
MD 24120: TRAFO_GEOAX_ASSIGN_TAB_1[1] = 2
MD 24120: TRAFO_GEOAX_ASSIGN_TAB_1[2] = 3
MD 24700: TRAANG_ANGLE_1 = 60
MD 24720: TRAANG_PARALLEL_VELO_RES_1 = 0.2
MD 24721: TRAANG_PARALLEL_ACCEL_RES_1 = 0.2
; Definition of persistent transformation
MD 20144:TRAFO_MODE_MASK = 1
MD 20140:TRAFO_RESET_VALVUE= 1
MD 20110:RESET_MODE_MASK = ’H01’
MD 20112:START_MODE_MASK = ’H80’
MD 20140:TRAFO_RESET_VALUE
MD 20118:GEOAX_CHANGE_RESET= TRUE
; Data for TRANSMIT, TRACYL
MD 24911: TRANSMIT_POLE_SIDE_FIX_1 = 1 ; also 2, causes alarm 21617
MD 24200: TRAFO_TYP_2 = 257
MD 24210: TRAFO_AXES_IN_2[0] = 1
MD 24210: TRAFO_AXES_IN_2[1] = 4
MD 24210: TRAFO_AXES_IN_2[2] = 3
MD 24210: TRAFO_AXES_IN_2[3] = 0
MD 24210: TRAFO_AXES_IN_2[4] = 0
MD 24220: TRAFO_GEOAX_ASSIGN_TAB_2[0] =1
MD 24220: TRAFO_GEOAX_ASSIGN_TAB_2[1] =4
MD 24220: TRAFO_GEOAX_ASSIGN_TAB_2[2] =3

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-59
Kinematic Transformations (M1) 10.04
06.05
2.4 Chained transformations

MD 24300: TRAFO_TYP_3 = 514


MD 24310: TRAFO_AXES_IN_3[0] = 1
MD 24310: TRAFO_AXES_IN_3[1] = 4
MD 24310: TRAFO_AXES_IN_3[2] = 3
MD 24310: TRAFO_AXES_IN_3[3] = 0
MD 24310: TRAFO_AXES_IN_3[4] = 0
MD 24320: TRAFO_GEOAX_ASSIGN_TAB_3[0] =1
MD 24320: TRAFO_GEOAX_ASSIGN_TAB_3[1] =4
MD 24320: TRAFO_GEOAX_ASSIGN_TAB_3[2] =3
; Data for TRACON
;TRACON chaining TRANSMIT 514 / TRAANG(Y1 axis to X1)
MD 24400: TRAFO_TYP_4 = 8192
MD 24995: TRACON_CHAIN_1[0] = 3
MD 24995: TRACON_CHAIN_1[1] = 1
MD 24995: TRACON_CHAIN_1[2] = 0
MD 24420: TRAFO_GEOAX_ASSIGN_TAB_4[0] =1
MD 24420: TRAFO_GEOAX_ASSIGN_TAB_4[1] =4
MD 24420: TRAFO_GEOAX_ASSIGN_TAB_4[2] =3
; TRACON chaining TRANSMIT 257 /
; TRAANG(Y1 axis inclined in relation to X1)
MD 24430: TRAFO_TYP_5 = 8192
MD 24996: TRACON_CHAIN_2[0] = 2
MD 24996: TRACON_CHAIN_2[1] = 1
MD 24996: TRACON_CHAIN_2[2] = 0
MD 24434: TRAFO_GEOAX_ASSIGN_TAB_5[0] =1
MD 24434: TRAFO_GEOAX_ASSIGN_TAB_5[1] =4
MD 24434: TRAFO_GEOAX_ASSIGN_TAB_5[2] =3
M17
; Appropriate matching part program:
$TC_DP1[1,1]=120 ; tool type
$TC_DP2[1,1]=0
$TC_DP3[1,1]=3 ; length compensation vector
$TC_DP4[1,1]=25
$TC_DP5[1,1]=5
$TC_DP6[1,1]=2 ; radius; tool radius
;transformation change:
N1000 G0 X0 Y=0 Z0 A80 G603 SOFT G64
N1010 ; TRAANG(,1) not required as selected automatically
N1020 X10 Y20 Z30
N1110 TRANSMIT(1) ; TRACON(2) not required as implemented automatically
N1120 X10 Y20 Z30
N1130 Y2=0
N1210 TRAFOOF ; TRAANG(,1) not required as implemented automatically
N1220 X10 Y20 Z30
M30

Copyright © Siemens AG, 2005.


2/M1/2-60 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.5 Cartesian PTP travel

2.5 Cartesian PTP travel

Function This function can be used to approach a Cartesian position with a synchronized
axis movement.
It is particularly useful in cases where, for example, the position of the joint is
changed, causing the axis to move through a singularity.
When an axis passes through a singularity, the feed velocity would normally be
reduced or the axis itself overloaded.

Note
The “handling transformation package” is required to implement cartesian PTP
travel. Machine data 24100: TRAFO_TYPE_1 must be set to the
transformation type described in TE4.
The function can only be used meaningfully in conjunction with an active
transformation. Furthermore, the “Cartesian PTP travel” function may only be
used in conjunction with the G0 and G1 commands. Alarm 14144 “PTP travel
not possible” is otherwise output.
When PTP travel is active, axes in the transformation
which are being traversed, e.g. by the POS command, cannot be configured
simultaneously as positioning axes. Alarm 17610 is activated to prevent this
error.

Activation The function is activated when the PTP command is programmed.


The function can be deactivated again with the CP command. Both these
commands are contained in G group 49.
– PTP command:
The programmed Cartesian position is approached with a synchronized
axis motion (PTP=point-to-point)
– CP command:
The programmed Cartesian point is approached with a path movement
(default setting), (CP=continuous path)
– PTPG0 command:
The programmed Cartesian PTP motion is performed automatically with
each G0 block. The CP command is then set again.

Power On After POWER ON, traversing mode CP is automatically set for axis traversal
with transformation. Via the MD 20152: GCODE_RESET_VALUES[48] can be
used to switch the default setting to cartesian PTP travel.

Reset MD 20152: GCODE_RESET_MODE[48] (group 49) defines which setting is


active after RESET/end of part program.
– MD=0: The setting depends on machine data
MD 20150:GCODE_RESET_VALUES[48]
– MD=1: Active setting remains valid

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-61
Kinematic Transformations (M1) 06.05
2.5 Cartesian PTP travel

Selection With MD 20152: GCODE_RESET_MODE[48] set to 0,


the following can be activated with MD 20150: GCODE_RESET_VALUES[48]
– MD=2:
Cartesian PTP travel as previously or
– MD=3:
PTPG0, traverse only G0 blocks with PTP automatically and then switch
over to CP again

Supplementary The following should be noted with respect to tool movement and collision:
conditions
 As the PTP command can produce significantly different tool movements to
the CP command, any pre-existing subroutines which have been written
independently of the active transformation must be adapted to take account
of the risks of collision when TRANSMIT is active. This applies particularly in
the case of command PTPG0.

 Machine axes always traverse the shortest possible path in response to


TRANSMIT and PTP. Minor displacements in the block end point can cause
the rotary axis to rotate by –179.99 instead of + 179.99, even though the
block end point has hardly changed.
The following combinations with other NC functions are not legal:
 No tool radius compensation (TRC) may be active in combination with PTP.
G0 and G41 are not basically mutually exclusive. However, an active PTP
generates different contours to those computed for the TRC, resulting in the
activation of a TRC alarm.
 When PTPG0 and a tool radius compensation are active, the CP command
is applied.
Since G0 and G41 are not mutually exclusive, the CP command is
automatically selected when a tool radius compensation is active. The
radius compensation therefore works on the basis of clearly defined
contours.
 Smooth approach and retraction (SAR) cannot be combined with PTP.
SAR requires a contour to be able to construct the approach and retract
motions. This information is not available with PTP.
 When smooth approach and retraction (SAR) and PTPG0 are active, the CP
travel command is applied.
SAR requires a contour to be able to construct the approach and retract
motions, and to position and lift off tangentially. The blocks required for this
purpose are therefore traversed with the CP command. The G0 blocks up to
the actual approach contour are executed with PTP and therefore quickly.
The same applies to the retract blocks.
 Stock removal cycles such as CONTPRON, CONTDCON cannot be
combined with PTP.
Stock removal cycles require a contour to be able to construct the cut
segmentation. This information is not available with PTP. Alarm 10931 “Error
in cut compensation” is generated in response.
 When PTPG0 is selected, the CP command is applied in stock removal
cycles such as CONTPRON, CONTDCON. Stock removal cycles require a
contour to construct the cut segmentation. The blocks required for this
purpose are traversed with the CP command.
 Chamfer and rounding are ignored.
 An axis override in the interpolation must not change during the PTP contour
section. This applies, for example, to LIFTFAST, fine tool offset, coupled
motion TRAILON and tangential follow-up TANGON.

Copyright © Siemens AG, 2005.


2/M1/2-62 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.5 Cartesian PTP travel

In PTP blocks:

 Compressor is automatically deselected because it is not compatible with


PTP.

 G643 is automatically switched over to G642.


 Transformation axes must not be configured simultaneously as positioning
axes.

Special points to Please take account of the following basic rules with respect to the basic
be noted coordinate system:

 Smoothing G642 is always interpreted in the machine coordinate system


and not (as usual) in the cartesian basic coordinate system.

 G641 determines the smoothing action as a function of the fictitious path


calculated from the machine axis coordinates.

 An F value input with G1 refers to the fictitious path calculated from the
machine axis coordinates.

Block search TRANSMIT during block search can result in different machine axis positions for
the same Cartesian position, if a program section is executed with block search.

Interrupts An illegal action, which may result in a conflict, is rejected with the following
alarms:
Alarm 14144: If a TRC is selected or activated in PTP.
Also when PTP is combined with smooth approach and
retraction (SAR) or PTP without the necessary G0 and G1
blocks.
Alarm 10753: When PTPG0 and TRC are active, CP is selected internally
to ensure that the tool radius compensation is executed
correctly.
Alarm 10754: Possible if conflict does occur.
Alarm 10778: Possible if conflict does occur.
Alarm 10744: When PTPG0 and SAR are active, CP command is used
so that smooth approach and retraction is correctly executed.
Alarm 10746: Possible if conflict does occur.
Alarm 17610: Transformation axes must not be configured simultaneously
as positioning axes traversed by means of POS.

Note
For further information about programming plus programming examples, please
see:
References: /PGA/, Programming Guide Advanced,
Section Transformations, “Cartesian PTP Travel”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-63
Kinematic Transformations (M1) 06.05
2.5 Cartesian PTP travel

2.5.1 Programming of position

Generally speaking, a machine position is not uniquely defined solely by a


position input with Cartesian coordinates and the orientation of the tool.
Depending on the kinematics of the relevant machine, the joint may assume up
to 8 different positions. These joint positions are specific to individual
transformations.

STAT address A Cartesian position must be convertible into a unique axis angle. For this
reason, the position of the joints must be entered in the STAT address.
The STAT address contains a bit for every possible setting as a binary value.
The meaning of these bits is determined by the relevant transformation.
As regards the transformations contained in the publication entitled “Handling
Transformation Package (TE4)”, the bits are assigned to different joint positions,
as shown in Fig. 2-23. See also Subsection 2.5.3.

Bit number: 31 .... 4 3 2 1 0

....

Position of axis 5
Position of axis 2/3
Overhead position

Fig. 2-23 Position bits for handling transformation package

Note
It is only meaningful to program the STAT address for “Cartesian PTP travel”,
since changes in position are not normally possible while an axis is traversing
with active transformation. The starting point position is applied as the
destination point for traversal with the CP command.

Copyright © Siemens AG, 2005.


2/M1/2-64 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.5 Cartesian PTP travel

2.5.2 Overlap areas of axis angles

TU address In order to approach axis angles in excess of "180 degrees without ambiguity,
the information must be programmed in the TU (turn) address. The TU address
thus represents the sign of the axis angles. An axis angle of |θ| < 360 degrees
can therefore be approached without ambiguity.
Variable TU contains a bit, which indicates the traversing direction for every axis
involved in the transformation.
– TU bit=0: 0 degrees ≤ θ < 360 degrees
– TU bit=1: –360 degrees < θ < 0 degrees
The TU bit is set to 0 for linear axes.
In the case of axes with a traversing range >"360 degrees, the axis always
moves across the shortest path, because the axis position cannot be specified
uniquely by the TU information.
If no TU is programmed for a position, the axis always traverses via the shortest
possible route.

2.5.3 Examples of ambiguities of position

The kinematics for a 6axis joint have been used to illustrate the ambiguities
caused by different joint positions.

Z1 A1 Position 1:
X1=0
Y1=45
Y1 Z1=45
STAT=’B00’

Position 2:
X1=–180
X1
Y1=–45
Z1=–45
STAT=’B01’

Fig. 2-24 Ambiguity in overhead area

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-65
Kinematic Transformations (M1) 06.05
2.5 Cartesian PTP travel

Position 1:
A1 Y1=–30
Z1=60
Z1
Y1 A1=–30
STAT=’B00’

Position 2:
X1 Y1=30
Z1=–60
A1=30
STAT=’B10’

Fig. 2-25 Ambiguity of top or bottom elbow

Position 1:
C1
A1=0
B1 B1=40
C1=0
STAT=’B00’

A1
Position 2:
A1=180
B1=–40
C1=180
STAT=’B100’

Fig. 2-26 Ambiguity of axis B1

2.5.4 Example of ambiguity in rotary axis position

The rotary axis position shown in Fig. 2-27 can be approached in negative or
positive direction. The direction is programmed under address A1.

Starting position

Negative direction:
A1=–135 TU bit=1
Positive direction:
A1=225 TU bit=0 Target position

Fig. 2-27 Ambiguity in rotary axis position

Copyright © Siemens AG, 2005.


2/M1/2-66 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
2.5 Cartesian PTP travel

2.5.5 PTP/CP switchover in JOG mode

In JOG mode, the transformation can be switched on and off via a PLC control
signal. This control signal is active only in JOG mode and when a
transformation has been activated via the program.
If the mode is switched back to AUTO, the state which was last active before
switchover is made active again.
The “point-to-point traversal active” signal DBX317.6 shows which traversal
type is active. By means of the “Activate point-to-point traversal” signal DBX29.4
the traversal type can be modified.

Mode change The “Cartesian PTP travel” function can be used meaningfully only in the AUTO
and MDA modes. The CP setting is automatically activated if the operating
mode is switched to JOG. If the mode is then switched back to AUTO or MDA,
the mode that was last active in either mode is made active again.

REPOS The setting for “Cartesian PTP travel” is not altered during re-positioning. If PTP
was set in the interruption block, then repositioning takes place in PTP. For a
sloping axis “TRAANG”, only CP travel is active in REPOS mode.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-67
Kinematic Transformations (M1) 08.01
06.05
2.6 Cartesian manual travel (810D powerline, SW 6.1 and higher)

2.6 Cartesian manual travel (810D powerline, SW 6.1 and


higher)

Functionality The Cartesian manual travel function allows you to set axes independently in
the Cartesian coordinate systems in order to provide a reference system for
JOG mode.

 Basic coordinate system BCS MD 21106: Bit0 = 1

 Workpiece coordinate system WCS MD 21106: Bit1 = 1

 Tool coordinate system TCS MD 21106: Bit2 = 1

Machine data MD 21106: CART_JOG_SYSTEM, which is also used to activate


the Cartesian manual travel function, is used for this purpose.

Note
The Cartesian manual travel function is implemented in SINUMERIK 810D
powerline with CCU3 SW 6.1 and higher. SINUMERIK 840D requires the
“handling transformation package” option SW6.3 or higher.
The workpiece coordinate system has been shifted and rotated compared to
the basic coordinate system via frames.
References: /FB1/, Description of Functions, Basic Machine, K2 Axes,
Coordinate Systems, Frames, Reset Behavior

Representation of the reference system in the coordinate system:

WCS = Workpiece zero TCS = Tool reference point

Selecting For JOG motion, you can specify one of three reference systems separately
reference systems both for
Translation (coarse shift) of the geometry axes and for
Orientation for orientation axes using
SD 42650: CART_JOG_MODE.
If more than one bit is set for the translation or for the orientation reference
system, or if an attempt is made to set a reference system that has not been
activated via MD 21106: CART_JOG_SYSTEM, alarm 14148 “Reference
system not permissible for Cartesian manual travel” is issued.

Translation A translation movement can be used to move the tool tip (TCP) in parallel and
3-dimensional to the axes of the reference system. The traversing movement is
made via the VDI signals of the geometry axes.
The machine data MD 24120: TRAFO_GEOAX_ASSIGN_TAB_x[n] is used to
assign the geometry axes. Simultaneous traversing in more than one direction
permits the execution of movements that lie parallel to the directions of the
reference system.

Copyright © Siemens AG, 2005.


2/M1/2-68 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
08.01
06.05 Kinematic Transformations (M1)
2.6 Cartesian manual travel (810D powerline, SW 6.1 and higher)

Translation in the The basic coordinate system (BCS) describes the Cartesian zero of the
BCS machine.

Z End position

Z
Y
Z Z
Start positionY +X +Y X
Y
Y –Z
X X

X
X
BCS

Fig. 2-28 Cartesian manual travel in the basic coordinate system (translation)

Translation in the The workpiece coordinate system (WCS) lies in the workpiece zero. The
WCS workpiece coordinate system can be shifted and rotated relative to the
reference system via frames. As long as the frame rotation is active, the
traversing movements correspond to the translation of the movements in the
basic coordinate system.

Z End position

Z
Y
Z Z
Start positionY +X +Y X
Y
Y –Z
X X

Y
Workpiece
X
Work (WCS)
X

Fig. 2-29 Cartesian manual travel in the workpiece coordinate system (translation)

Translation in the The tool coordinate system (TCS) lies in the tool tip. Its direction depends on
TCS the current setting of the machine, since the tool coordinate system moves
during the motion.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-69
Kinematic Transformations (M1) 08.01
06.05
2.6 Cartesian manual travel (810D powerline, SW 6.1 and higher)

End position

Z Y
X
Start position Y +Y
X Z
Z
Y
+X Z
Z Y X
Y Y Frame
X Workpiece
BCS X Work (WCS)
X

Fig. 2-30 Cartesian manual travel in the tool coordinate system (translation)

Translation and If translation and orientation motions are executed at the same time, the
orientation in the translation is always traversed corresponding to the current orientation of the
TCS tool. This permits infeed movements that are made directly in the tool direction
simultaneously or movements that run perpendicular to tool direction.

Orientation The tool can be aligned to the component surface via an orientation movement.
The orientation movement is given control from the PLC via the VDI signals of
the orientation axes (DB21, ... DBB321).
Several orientation axes can be traversed simultaneously. The virtual
orientation axes execute rotations around the fixed axes of the relevant
reference system.
The rotations are identified according to the RPY angles.

 A angle: Rotation through the Z axis


 B angle: Rotation through the Y axis
 C angle: Rotation through the X axis
Programming rotations:
The user can define how rotations are to be executed using the current G codes
of group 50 for orientation definition
ORIEULER, ORIRPY, ORIVIRT1 and ORIVIRT2.
With ORIVIRT1, rotations are executed according to MD 21120:
ORIAX_TURN_TAB_1. The orientation axes are assigned to the channel axes
via MD 24585: TRAFO5_ORIAX_ASSIGN_TAB_1.
The direction of rotation is determined according to the “right hand rule”. The
thumb points in the direction of the rotary axis. The finger stipulates the positive
direction of rotation.

Orientation in The rotations are made around the defined directions of the workpiece
WCS coordinate system. If frame rotation is active, the movements correspond to the
rotations in the basic coordinate system.

Copyright © Siemens AG, 2005.


2/M1/2-70 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
08.01
06.05 Kinematic Transformations (M1)
2.6 Cartesian manual travel (810D powerline, SW 6.1 and higher)

Orientation in BCS The rotations are made around the defined directions of the Basic Coordinate
System.

Z
End orientation Start orientation
A

XTCS +A

X
BCS

Fig. 2-31 Cartesian manual travel in the basic coordinate system orientation angle A

Z
Start orientation End orientation
+B
B

XTCS

X
BCS

Fig. 2-32 Cartesian manual travel in the basic coordinate system orientation angle B

Z
End orientation

XTCS

+C

C Start orientation
X
BCS

Fig. 2-33 Cartesian manual travel in the basic coordinate system orientation angle C

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-71
Kinematic Transformations (M1) 08.01
06.05
2.6 Cartesian manual travel (810D powerline, SW 6.1 and higher)

Orientation in TCS The rotations are around the moving directions in the Tool Coordinate System.
The current homing directions of the tool are always used as rotary axes.

Z
+A

Y
X

Fig. 2-34 Cart. manual travel in the tool coordinate system, orientation angle A

+B

Y
X
Z

Fig. 2-35 Cart. manual travel in the tool coordinate system, orientation angle B

Y
+C

Fig. 2-36 Cart. manual travel in the tool coordinate system, orientation angle C

Copyright © Siemens AG, 2005.


2/M1/2-72 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
08.01
06.05 Kinematic Transformations (M1)
2.6 Cartesian manual travel (810D powerline, SW 6.1 and higher)

Supplementary If only IS “Transformation active” (DB31, ... DBX33.6) is set to 1, it is possible to


conditions execute the Cartesian manual travel function. The following supplementary
conditions apply:

 SINUMERIK 840D requires the “handling transformation package” option


with 5-axis or 6-axis transformation SW6.3 and higher.

 Virtual orientation axes must be defined via machine data


MD 24585: TRAFO5_ORIAX_ASSIGN_TAB_1[n].

 The IS “Activate PTP/CP travel” (DB31, ... DBX29.4) must be 0.


 Machine data MD 21106: CART_JOG_SYSTEM must be > 0.

Table 2-3 Conditions for Cartesian manual travel

Transformation in pro- G codes PTP/CP IS “Activate PTP/CP IS “Transformation


gram active (TRAORI..) traversing” active”
FALSE Not functional! Not functional! DB31, ... DBX33.6 = 0
TRUE CP DB31, ... DBX29.4 = 0 DB31, ... DBX33.6 = 1
TRUE CP DB31, ... DBX29.4 = 1 DB31, ... DBX33.6 = 0
TRUE PTP DB31, ... DBX29.4 = 0 DB31, ... DBX33.6 = 1
TRUE PTP DB31, ... DBX29.4 = 1 DB31, ... DBX33.6 = 0

The G code PTP/CP currently active in the program does not affect Cartesian
manual travel. The VDI interface signals are interpreted in the channel DB for
geometry and orientation axes.

Activation The reference system for Cartesian manual travel is set as follows:

 The Cartesian manual travel function is activated with machine data


MD 21106: CART_JOG_SYSTEM > 0.
The BCS, WCS or TCS reference systems are enabled by setting the bits in
MD 21106: CART_JOG_SYSTEM.

 The JOG traversing motion via SD 42650: CART_JOG_MODE


Standard response as before: Bits 0 to 2 = 0, Bits 8 to 10 = 0
Reference system for translation via Bits 0–2 and the
reference system for orientation via Bits 8–10
If not all of the bits are set to 0, the process uses the new function. The
reference systems for translation and orientation may be set independently.
The meaning of the bits is explained in the table below 2-4.

Table 2-4 Bit assignment for SD 42650: CART_JOG_MODE (only one bit may be set)

Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0


Reserved Translation Translation Translation
in the TCS in the WCS in the BCS
Bit15 Bit14 Bit13 Bit12 Bit11 Bit10 Bit9 Bit8
Reserved Orientation Orientation Orientation
in TCS in WCS in BCS

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-73
Kinematic Transformations (M1) 08.01
06.05
2.6 Cartesian manual travel (810D powerline, SW 6.1 and higher)

Combining The table below shows all the combination options for reference systems.
reference systems
Table 2-5 Combination options for reference systems

SD 42650: CART_JOG_MODE Reference system for


Bit 10 Bit 9 Bit 8 Bit 2 Bit 1 Bit 0 Orientation Translation
0 0 0 don’t care don’t care don’t care Standard Standard
Standard Standard Standard 0 0 0 Standard Standard
0 0 1 0 0 1 BCS BCS
0 0 1 0 1 0 BCS WCS
0 0 1 1 0 0 BCS TCS
0 1 0 0 0 1 WCS BCS
0 1 0 0 1 0 WCS WCS
0 1 0 1 0 0 WCS TCS
1 0 0 0 0 1 TCS BCS
1 0 0 0 1 0 TCS WCS
1 0 0 1 0 0 TCS TCS

Copyright © Siemens AG, 2005.


2/M1/2-74 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
08.01
06.05 Kinematic Transformations (M1)
2.7 Activating the transformation MD via parts program/softkey (SW 5.2 and later)

2.7 Activating the transformation MD via parts


program/softkey (SW 5.2 and later)

2.7.1 Functionality

SW 5.1 and lower Up to eight different transformations can be set in the control in SW 5.1 and
lower. The transformation type is set in machine data $MC_TRAFO_TYPE_1 to
$MC_TRAFO_TYPE_8.
For each transformation group (TRANSMIT, see Section 2.1), TRACYL
(see Section 2.2), TRAANG (see Section 2.3) and chained transformations (see
Section 2.4) there are two transformation data sets, i.e. no more than two
transformations can be set from one group, even when the eight available
transformations have not yet all been programmed.

As of SW 5.2 Transformation MD can now be activated by means of a program command


softkey (NEWCONFIG-capable), i.e. these can, for example, be written from the
parts program, thus altering the transformation configuration completely. The
specified restrictions regarding the number of available transformations thus no
longer apply.

Note
However, the number of transformation machine data sets is limited as in
previous versions.

As of SW 7.2 Up to ten different transformations can be set in the control in SW 7.2 and
higher. The transformation type is set in machine data $MC_TRAFO_TYPE_1
to $MC_TRAFO_TYPE_10.

Features The machine data listed in Section 4.3 were activated by power ON in SW 5.1
and lower. They are NEWCONFIG-capable in SW 5.2 and higher.
The protection level is now 7 / 7 (KEYSWITCH_0) which means that data can
be modified from the NC program without any particular authorization.
Provided that no transformation is selected (activated) when a NEWCONFIG
command is issued (regardless whether via the NEWCONF NC program
command, the MMC or implicitly following Reset or end of program), the
machine data listed above can be altered without restriction and then activated.
Of particular relevance is that new transformations can be configured or existing
transformations replaced by one of a different type or deleted, since the
modification options are not restricted to re-parameterization of existing
transformations.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-75
Kinematic Transformations (M1) 08.01
06.05
2.7 Activating the transformation MD via parts program/softkey (SW 5.2 and later)

2.7.2 Supplementary conditions

Change machine The machine data which affect an active transformation may not be altered; any
data attempt to do so will generate an alarm.
These are generally all machine data assigned to a transformation via the
associated transformation data group. Machine data that are included in the
group of an active transformation, but not in use, can be altered (although this
would hardly be meaningful). It would be permissible, for example, with an
active transformation parameterized in MD 24100: TRAFO_TYPE = 16 (5-axis
transformation with rotatable tool and two mutually perpendicular rotary axes A
and B) to change machine data $MC_TRAFO5_NUTATOR_AX_ANGLE_n
since this particular machine data is not involved in the transformation.
Please also note that machine data MD 21110: X_AXIS_IN_OLD_X_Z_PLANE
must not be changed when an orientation transformation is active.

Note
In the case of a program interruption (Repos, deletion of distance to go,
ASUBs, etc.), the control system requires a number of different blocks that
have already been executed for the repositioning operation. The rule forbidding
the machine data of an active transformation to be altered also refers to these
blocks.

Example:
Two orientation transformations are set via machine data, e.g. MD 24100:
TRAFO_TYPE_1 = 16, MD 24200: TRAFO_TYPE_2 = 18.
Assume that the second transformation is active when the NEWCONFIG
command is executed. In this case, all machine data that relate only to the first
transformation may be changed, e.g. MD 24500: TRAFO5_PART_OFFSET_1,
but not e.g. MD 24650: TRAFO5_BASE_TOOL_2 or
MD 21110: X_AXIS_IN_OLD_X_Z_PLANE
Furthermore, MD 24300: TRAFO_TYPE_3 = 256, for example, can be used to
set another transformation (Transmit) which is parameterized by other machine
data.

Defining geometry Geometry axes must be defined before the control system powers up
axes in $MC_TRAFO_GEOAX_ASSIGN_TAB_X[n] or
MD 20050: AXCONF_GEOAX_ASSIGN_TAB[n].

Changing the The assignment between a transformation data set and a transformation is
assignment determined by the sequence of entries in $MC_TRAFO_TYPE_X. The first
transformation data set is assigned to the first entry in the table, the second
data set to the second entry. This assignment may (and can) not be altered for
an active transformation.
Example:
Three transformations are set, two orientation transformations and one Transmit
transformation, e.g.
MD 24100: TRAFO_TYPE_1 = 16 ; Orientation transformation,
; 1st orientation transformer data block
MD 24200: TRAFO_TYPE_2 = 256 ; Transmit transformation

Copyright © Siemens AG, 2005.


2/M1/2-76 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
08.01
06.05 Kinematic Transformations (M1)
2.7 Activating the transformation MD via parts program/softkey (SW 5.2 and later)

MD 24300:TRAFO_TYPE_3 = 18 ; Orientation transformation,


; 2nd orientation transformer data block
The first data set for orientation transformations is assigned to the first
transformation (equalling the first orientation transformation) and the second
transformation data set to the third transformation (equalling the second
orientation transformation).
If the third transformation is active when the NEWCONFIG command is
executed, it is not permissible to change the first transformation into a
transformation of another group (e.g. TRACYL) since, in this case, the third
transformation would then not become the second orientation transformation,
but the first.
In this example, however, it is legal to set another orientation transformation as
the first transformation (e.g. using MD 24100: TRAFO_TYPE_1 = 32) or to set a
transformation from another group as the first transformation (e.g. using
MD 24100: TRAFO_TYPE_1 = 1024, TRAANG) if the second transformation is
changed to an orientation transformation at the same time, e.g. using
MD 24200: TRAFO_TYPE_2 = 48.

2.7.3 Control response to power ON, mode change, RESET, block


search, REPOS

Machine data MD 20110: RESET_MODE_MASK,


MD 20112: START_MODE_MASK and MD 20140: TRAFO_RESET_VALUE
can be programmed to select a transformation automatically in response to
RESET (i.e. at end of program as well) and / or on program start.
This may result in the generation of an alarm, for example, at the end or start of
a program, if the machine data of an active transformation has been altered.
To avoid this problem when re-configuring transformations via an NC program,
we therefore recommend that NC programs are structured as follows:
N10 TRAFOOF() ; Deselect any active
; transformation
N20 $MC_TRAFO5_BASE_TOOL_1[0]=0 ; Write machine data
N30 $MC_TRAFO5_BASE_TOOL_1[0]=3 ;
N40 $MC_TRAFO5_BASE_TOOL_1[0]=200;



N130 NEWCONF ; Accept newly modified
; machine data
N140 M30

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-77
Kinematic Transformations (M1) 08.01
10.04
06.05
2.7 Activating the transformation MD via parts program/softkey (SW 5.2 and later)

2.7.4 List of machine data affected

The machine data which can be made NEWCONFIG-capable are listed below.

All Machine data which are relevant for all transformations:


transformations
 $MC_TRAFO_TYPE_1 to $MC_TRAFO_TYPE_10
 $MC_TRAFO_AXES_IN_1 to $MC_TRAFO_AXES_IN_10
 $MC_TRAFO_GEOAX_ASSIGN_TAB_1 to
$MC_TRAFO_GEOAX_ASSIGN_TAB_10

Orientation Machine data which are relevant for orientation transformations:


transformations
 MD 24550: TRAFO5_BASE_TOOL_1 and
MD 24650: TRAFO5_BASE_TOOL_2
 MD 24558: TRAFO5_JOINT_OFFSET_1 and
MD 24658: TRAFO5_JOINT_OFFSET_2
 MD 24500: TRAFO5_PART_OFFSET_1 and
MD 24600: TRAFO5_PART_OFFSET_2
 MD 24510: TRAFO5_ROT_AX_OFFSET_1 and
MD 24610: TRAFO5_ROT_AX_OFFSET_2
 MD 24520: TRAFO5_ROT_SIGN_IS_PLUS_1 and
MD 24620: TRAFO5_ROT_SIGN_IS_PLUS_2
 MD 24530: TRAFO5_NON_POLE_LIMIT_1 and
MD 24630: TRAFO5_NON_POLE_LIMIT_2
 MD 24540: TRAFO5_POLE_LIMIT_1 and
MD 24640: TRAFO5_POLE_LIMIT_2
 MD 24570: TRAFO5_AXIS1_1 and MD 24670: TRAFO5_AXIS1_2
 MD 24572: TRAFO5_AXIS2_1 and MD 24672: TRAFO5_AXIS2_2
 MD 24574: TRAFO5_BASE_ORIENT_1 and
MD 24674: TRAFO5_BASE_ORIENT_2
 MD 24562: TRAFO5_TOOL_ROT_AX_OFFSET_1 and
MD 24662: TRAFO5_TOOL_ROT_AX_OFFSET_2
 MD 24564: TRAFO5_NUTATOR_AX_ANGLE_1 and
MD 24 664: TRAFO5_NUTATOR_AX_ANGLE_2
 MD 24566: TRAFO5_NUTATOR_VIRT_ORIAX_1 and
MD 24666: TRAFO5_NUTATOR_VIRT_ORIAX_2

Transmit Machine data which are relevant for Transmit transformations:


transformations
 MD 24920: TRANSMIT_BASE_TOOL_1 and
MD 24970: TRANSMIT_BASE_TOOL_2
 MD 24900: TRANSMIT_ROT_AX_OFFSET_1 and
MD 24950: TRANSMIT_ROT_AX_OFFSET_2
 MD 24910: TRANSMIT_ROT_SIGN_IS_PLUS_1 and
MD 24960: TRANSMIT_ROT_SIGN_IS_PLUS_2
 MD 24911: TRANSMIT_POLE_SIDE_FIX_1 and
MD 24961: TRANSMIT_POLE_SIDE_FIX_2

Copyright © Siemens AG, 2005.


2/M1/2-78 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
08.01
10.04
06.05 Kinematic Transformations (M1)
2.7 Activating the transformation MD via parts program/softkey (SW 5.2 and later)

Tracyl Machine data which are relevant for Tracyl transformations:


transformations
 MD 24820: TRACYL_BASE_TOOL_1 and
MD 24870: TRACYL_BASE_TOOL_2
 MD 24800: TRACYL_ROT_AX_OFFSET_1 and
MD 24850: TRACYL_ROT_AX_OFFSET_2
 MD 24810: TRACYL_ROT_SIGN_IS_PLUS_1 and
MD 24870: TRACYL_ROT_SIGN_IS_PLUS_2
 MD 24808: TRACYL_DEFAULT_MODE_1 and
MD 24858: TRACYL_DEFAULT_MODE_2

Inclined axis Machine data which are relevant for inclined axes:
transformations
 MD 24710: TRAANG_BASE_TOOL_1 and
MD 24760: TRAANG_BASE_TOOL_2
 MD 24700: TRAANG_ANGLE_1 and MD 24750: TRAANG_ANGLE_2
 MD 24720: TRAANG_PARALLEL_VELO_RES_1 and
MD 24770: TRAANG_PARALLEL_VELO_RES_2
 MD 24721: TRAANG_PARALLEL_ACCEL_RES_1 and
MD 24771: TRAANG_PARALLEL_ACCEL_RES_2

Chained Machine data which are relevant for chained transformations:


transformations
 MD 24995: TRACON_CHAIN_1 and MD 24996: TRACON_CHAIN_2
 MD 24997: TRACON_CHAIN_3 and MD 24998: TRACON_CHAIN_4

Persistent Machine data which are relevant for persistent transformations:


transformation
 MD 20144: TRAFO_MODE_MASK
 MD 20140: TRAFO_RESET_VALUE
 MD 20110: RESET_MODE_MASK and MD 20112: START_MODE_MASK

Not transformation Machine data that are not transformation-specific, i.e. they are not uniquely
specific assigned to a particular transformation data set or they are relevant even when
a transformation is not active:

 MD 21110: X_AXIS_IN_OLD_X_Z_PLANE
 MD 21090: MAX_LEAD_ANGLE
 MD 21092: MAX_TILT_ANGLE
 MD 21100: ORIENTATION_IS_EULER

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/2-79
Kinematic Transformations (M1) 08.01
06.05
2.7 Activating the transformation MD via parts program/softkey (SW 5.2 and later)

Notes

Copyright © Siemens AG, 2005.


2/M1/2-80 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
3.3 TRAANG (inclined axis)

Supplementary Conditions 3
3.1 TRANSMIT

Availability The “TRANSMIT” function is an option with order number:


6FC5 251-0AB01-0AA0.

It is available from product version 2 onwards for:

 SINUMERIK 840D with NCU 571-573


 SINUMERIK 810D
Pole traversal and optimized control response in pole vicinity are available with
SW 4.1 and higher.

3.2 TRACYL (peripheral surface transformation)

Availability The “TRACYL” function is an option with order number:


6FC5 251-0AB01-0AA0.

It is available from software version 2 onwards for:

 SINUMERIK 840D with NCU 571-573


 SINUMERIK 810D

3.3 TRAANG (inclined axis)

Availability The “TRAANG” function (inclined axis) is an option with order number:
6FC5 251-0AB06-0AA0.

It is available from software version 2 onwards for:

 SINUMERIK 840D with NCU 572-573.2.


 SINUMERIK 810D

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/3-81
Kinematic Transformations (M1) 06.05
3.4 Chained transformations (SW 5)

3.4 Chained transformations (SW 5)

SW 5 and higher Two transformations can be chained.


However, not just any transformation can be chained to another one.
The following restrictions apply in SW version 5:
 The first transformation in the chain must be:
– an orientation transformation
(3, 4, 5-axis transformation, universal milling head)
– Transmit or
– peripheral transformation or
– inclined axis
 The second transformation must be an inclined axis transformation.
 Only two transformations may be chained.
It is permissible (e.g. for test purposes) to enter only one transformation in the
chain list.


Copyright © Siemens AG, 2005.


2/M1/3-82 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
4.1 Channelspecific machine data

Data Descriptions (MD, SD) 4


4.1 Channelspecific machine data

21110 X_AXIS_IN_OLD_X_Z_PLANE
MD number Coordinate system with automatic FRAME definition
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (up to SW 5.1) 2 / 7 (up to SW 5.1)
Data type: BOOLEAN Applies from SW: 2
Meaning: 1 = With automatic definition of a frame (TOFRAME) whose Z direction is the same as the
actual tool orientation, the new coordinate system is rotated additionally around the new Z
axis with the result that the new X axis lies in the old Z/X plane.
0 = With automatic definition of a frame (TOFRAME) whose Z direction is the same as the
actual tool orientation, the new coordinate system is left as it is represented by the machine
kinematics, i.e. the coordinate system rotates with the tool (orientation).
MD irrelevant for ...... No orientation programming.
Related to .... MD 21100
References Programming Guide

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/4-83
Kinematic Transformations (M1) 06.05
4.2 Transformation-specific machine data

4.2 Transformation-specific machine data

20144 TRAFO_MODE_MASK
MD number Selection of the kinematic transformation function
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after RESET Protection level: 2 / 7 Unit: –
Data type: Byte Applies from SW: 7.2
Meaning: Selects a particular scope of kinematic transformation functions by setting the following
bits:
Bit Hex. Meaning
0:(LB) 0x01 The transformation selected in MD 20140: TRAFO_RESET_VALUE is
persistent, i.e. it is selected with TRAFOOF and is not shown in the display.

Meaning of individual bits:


Bit 1=0: Default behavior as in previous version

Bit 1=1: The transformation specified in MD 20140: TRAFO_RESET_VALUE is


persistent, i.e. it is selected with TRAFOOF and is not shown in the display.
Precondition for this option is that the transformation selected in MD 20140:
TROFO_RESET_VALUE is automatically
selected via MD 20110: RESET_MODE_MASK and
MD 20112: START_MODE_MASK on RESET and START,
i.e.:
MD 20110: RESET_MODE_MASK Bit 0=1 and Bit 7=0,
MD 20112: START_MODE_MASK Bit 7=1
MD 20118: GEOAX_CHANGE_REST=TRUE

22534 TRAFO_CHANGE_M_CODE
MD number M code for transformation changeover
Default setting: 0 Minimum input limit: 0 Maximum input limit: 99999999
Change applies from: Protection level: 2 / 7 Unit: –
Data type: DWORD Applies as of SW 4.1
Meaning: Number of M code that is output at the VDI interface in the case of a transformation
changeover on the geometry axes.
No M code is output if this MD is set to one of the values 0 to 6, 17 or 30.
It is not monitored whether an M code created in this way will conflict with other functions.

Copyright © Siemens AG, 2005.


2/M1/4-84 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
4.2 Transformation-specific machine data

24100 TRAFO_TYPE_1
MD number Type of 1st transformation
Default setting: 0 Minimum input limit: 0 Maximum input limit: –
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
Power ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DWORD Applies as of SW 2.0
Meaning: This MD specifies for each channel which transformation is available as the first
in the channel.
Identifier for specifying axis sequence in the case of 5-axis transformation and
transformation type for each of the permissible transformations
4 3 0
Transformation type Axis sequence
Transformation type:
0 No transformation
16 5-axis transformation with rotatable tool
32 5-axis transformation with rotatable workpiece
48 5-axis transformation with rotatable tool and workpiece
Axis sequence for transformation types 16 – 48
0 Axis sequence AB
1 Axis sequence AC
2 Axis sequence BA
3 Axis sequence BC
4 Axis sequence CA
5 Axis sequence CB
8 Generic 5-axis transformation
256 TRANSMIT transformation
257 TRANSMIT transformation with additional linear axis
512 TRACYL transformation (generated cylinder surface transformation)
513 TRACYL transformation with X-Y-Z-C kinematics
514 TRACYL transformat. without groove side offset, with addit. linear axis
1024 TRAANG transformation (inclined axis)
2048 Centerless transformation
8192 Chained transformation
When values are assigned to transformation types 16–48, the associated axis
sequences are added. Axis sequences for transformation types 256 – 2048 are
meaningless (no error message).
MD irrelevant for ...... No transformations
Application example(s) $MC_TRAFO_TYP_1=20 ; (16+4)
Related to .... TRAFO_TYPE_2, TRAFO_TYPE_3, ... TRAFO_TYPE_10
Additional references /FB/, F2, “5-axis transformation”

24110 TRAFO_AXES_IN_1[i]
MD number Axis assignment for transformation 1 [axis index]: 0 ... [max. number of channel axes]
Default setting: 1,2,3,4,5,0,0,0 Minimum input limit: 0 Maximum input limit: 10
[max. number of channel axes]
Changes effective after Protection level: Unit:
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
Power ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: Byte Applies as of SW 2.0
Meaning: Axis assignment at input of 1st transformation
Index i assumes the values 0, 1 and 2 with TRANSMIT.
The assignment for TRANSMIT is:
$MC_TRAFO_AXES_IN_1[0]= Channel axis number of axis perpendicular to rotary axis
$MC_TRAFO_AXES_IN_1[1]= Channel axis number of rotary axis
$MC_TRAFO_AXES_IN_1[2]= Channel axis number of axis parallel to rotary axis
The index entered at the nth position specifies which axis is mapped internally by the trans-
formation on axis n.
MD irrelevant for ...... No transformation
Application example(s) $MC_TRAFO_AXES_IN_1[0] = 1
Related to .... TRAFO_AXES_IN_2, TRAFO_AXES_IN_3, ... TRAFO_AXES_IN_10
Additional references /FB/, F2, “5-axis transformation”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/4-85
Kinematic Transformations (M1) 06.05
4.2 Transformation-specific machine data

24120 TRAFO_GEOAX_ASSIGN_TAB_1[i]
MD number Assignment of geometry axes to channel axes with transformation 1 [geometry axis num-
ber]: 0 ... 2.
Default setting: 0,0,0 Minimum input limit: 0 Maximum input limit: [max. no. of
channel axes]
Changes effective after Protection level: Unit:
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
Power ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: Byte Applies as of SW 2.0
Meaning: This MD specifies the channel axes on which the axes of the Cartesian coordinate system
are mapped when transformation 1 is active.
Index i assumes the values 0, 1, 2 with TRANSMIT. It refers to the first, second and third
geometry axis.
MD irrelevant for ...... No transformation
Application example(s) $MC_TRAFO_GEOAX_ASSIGN_TAB_1[0]= channel axis number
Related to .... $MC_AXCONF_GEOAX_ASSIGN_TAB, if no transformation is active.
Additional references /FB/, K2, “Coordinate Systems, Axis Types, Axis Configurations, Workpiece-Related Actu-
al-Value System, External Zero Offset”

24130 TRAFO_INCLUDES_TOOL_1[i]
MD number Tool handling with active transformation 1 [geometry axis number]: 0 ... 2.
Default setting: TRUE Minimum input limit: 0 Maximum input limit: [max. no. of
channel axes]
Changes effective afterNEWCONFIG Protection level: 7/7 Unit: –
Data type: BOOLEAN Applies as of SW 5.2
Meaning: MD specifies which tool is to be handled when transformation 1 is active.
Condition for a possible evaluation is that the orientation of the tool with respect to the base
coordinate system cannot be changed by the transformation. With standard transforma-
tions, the condition is only fulfilled for the “inclined axis transformation”.
If this machine data is not set, the base coordinate system (BCS) is in relation to the tool
reference point, even with an active transformation, otherwise it is in relation to the tool tip
(Tool Center Point TCP).
Correspondingly, the protection zones and working area limitations function differently.

Copyright © Siemens AG, 2005.


2/M1/4-86 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
4.2 Transformation-specific machine data

24200/24300/ TRAFO_TYPE_2 / _3 / _4 / _5/ _6/ _7/ _8/ _9/ _10 expanded to 10 with SW 7.2 and later
24400/24430/24440/
24450/24460/
24470/24480
MD number Type of transformation
Default setting: 0 Minimum input limit: 0 Maximum input limit: –
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
Power ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DWORD Applies as of SW 2.0
Meaning: As for TRAFO_TYPE_1, but applies to transformation that is available as the second ...
tenth transformation in the channel.

24210/24310/ TRAFO_AXES_IN_2[i] / _3[i] / _4[i]/ _5[i] / _6[i] / _7[i] / _8[i] / _9[i] / _10[i] extended to
24410/24432/24442/ 10 with SW 7.2 and later
24452/24462/
24472/24482
MD number Axis assignment for transfo. 2/3/4/5/6/7/8/9/10 [axis index]: 0 ... [max. no. of channel axes]
Default setting: 1,2,3,4,5,0,0,0 Minimum input limit: 0 Maximum input limit: [max. no. of
channel axes]
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
Power ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: Byte Applies as of SW 2.0
Meaning: Axis assignment at input of 2nd to 10th transformation.
Same meaning as for TRAFO_AXES_IN_1.

24220/24320/ TRAFO_GEOAX_ASSIGN_TAB_2[i] / _3[i] / _4[i]/_5[i] / _6[i] / _7[i]/ _8[i] / _9[i] / _10[i]


24420/24434/24444/ extended to 10 with SW 7.2 and later
24454/24464/
24474/24484
MD number Assignment of geometry axes to channel axes with transformation 2/3/4/5/6/7/8/9/10 [ge-
ometry axis number]: 0 ... 2.
Default setting: 0,0,0 Minimum input limit: 0 Maximum input limit: [max. no. of
channel axes]
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
Power ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: Byte Applies as of SW 2.0
Meaning: The channel axes on which the axes of the Cartesian coordinate system are mapped
when transformation 2 to 10 is active are set in this MD.
The meaning otherwise corresponds to TRAFO_GEOAX_ASSIGN_TAB_1.

24230/24330/ TRAFO_INCLUDES_TOOL_2[i] / _3[i] / _4[i]/_5[i] / _6[i] / _7[i]/ _8[i] / _9[i] / _10[i] ex-
24426/24436/24446/ tended to 10 with SW 7.2 and later
24456/24466/
24476/24486
MD number Tool handling with active transformation 2/3/4/5/6/7/8/9/10 [geometry axis number]: 0 ... 2.
Default setting: TRUE Minimum input limit: 0 Maximum input limit: [max. no. of
channel axes]
Changes effective after NEWCONFIG Protection level: 7 / 7 Unit: –
Data type: BOOLEAN Applies as of SW 5.2
Meaning: MD specifies which tool is to be handled when transformation 2 to 10
is active. Its meaning otherwise corresponds to TRAFO_INCLUDES_TOOL_1.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/4-87
Kinematic Transformations (M1) 06.05
4.3 Function-specific machine data

4.3 Function-specific machine data


4.3.1 TRANSMIT

24900 TRANSMIT_ROT_AX_OFFSET_1
MD number Position offset of rotary axis
Default setting: 0 Minimum input limit: 0 Maximum input limit: 360
Changes effective after Protection level: 2/4 Unit: degrees
NEWCONFIG (SW 5.2 and higher)
POWER ON (SW 5.1 and lower)
Data type: DOUBLE Applies as of SW 2.0
Meaning: Specifies the offset of the rotary axis in degrees in relation to the zero position while
TRANSMIT is active for the first declared TRANSMIT transformation for each channel.
MD irrelevant for ...... No TRANSMIT active
Application example(s) $MC_TRANSMIT_ROT_AX_OFFSET_1=15.0
Related to .... TRANSMIT_ROT_AX_OFFSET_2

24910 TRANSMIT_ROT_SIGN_IS_PLUS_1
MD number Sign of rotary axis 1/2
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after Protection level: 2/4 Unit: –
NEWCONFIG (SW 5.2 and higher)
POWER ON (SW 5.1 and lower)
Data type: BOOLEAN Applies as of SW 2.0
Meaning: Specifies the sign which is applied to the rotary axis during the TRANSMIT transformation
for the first declared TRANSMIT transformation for each channel.
MD irrelevant for ...... No TRANSMIT active
Application example(s) $MC_TRANSMIT_ROT_SIGN_IS_PLUS_1=TRUE
Related to .... TRANSMIT_ROT_SIGN_IS_PLUS_2

24911 TRANSMIT_POLE_SIDE_FIX_1
MD number Restriction of working range in front of/behind pole, 1st transformation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 2
Changes effective after Protection level: 2/4 Unit:
NEWCONFIG (SW 5.2 and higher)
POWER ON (SW 5.1 and lower)
Data type: BYTE Applies as of SW 4.1
Meaning: Restriction of working range in front of/behind pole or no restrictions, i.e. traversal through
pole.
The assigned values have the following meanings:
1: Working range of linear axis for positions >=0,
(if tool length compensation parallel to linear axis equals 0)
2: Working range of linear axis for positions <=0,
(if tool length compensation parallel to linear axis equals 0)
0: No restriction of working range. Traversal through pole.

Copyright © Siemens AG, 2005.


2/M1/4-88 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
4.3 Function-specific machine data

24920 TRANSMIT_BASE_TOOL_1[i]
MD number Vector of base tool on activation of transformation
Changes effective after Protection level: Unit: mm
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: MD specifies the distance of the tool zero point referred to the appropriate geometry axes
valid with TRANSMIT active and without tool length offset selected for the 1st TRANSMIT
transformation for each channel.
Programmed length compensations are added to the base tool.
Index i assumes values 0, 1, 2 for the 1st to 3rd geometry axes.
MD irrelevant for ... ... No TRANSMIT active
Application example(s) $MC_TRANSMIT_BASE_TOOL_1[0]=20.0
Related to .... $MC_TRANSMIT_BASE_TOOL_2

24950 TRANSMIT_ROT_AX_OFFSET_2
MD number Position offset of rotary axis
Default setting: 0 Minimum input limit: 0 Maximum input limit: 360
Changes effective after Protection level: Unit: degrees
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: Specifies the offset of the rotary axis in degrees in relation to the zero position while
TRANSMIT is active for the second declared TRANSMIT transformation for each channel.
MD irrelevant for ... ... No TRANSMIT active
Related to .... TRANSMIT_ROT_AX_OFFSET_1

24960 TRANSMIT_ROT_SIGN_IS_PLUS_2
MD number Sign of rotary axis 1/2
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: BOOLEAN Applies as of SW 2.0
Meaning: Specifies the sign which is applied to the rotary axis during the TRANSMIT transformation
for the second declared TRANSMIT transformation for each channel.
MD irrelevant for ... ... No TRANSMIT active
Application example(s) $MC_TRANSMIT_ROT_SIGN_IS_PLUS_1=TRUE
Related to .... TRANSMIT_ROT_SIGN_IS_PLUS_1

24961 TRANSMIT_POLE_SIDE_FIX_2
MD number Restriction of working range in front of/behind pole, 2nd transformation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 2
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: BYTE Applies as of SW 4.1
Meaning: Restriction of working range in front of/behind pole or no restrictions, i.e. traversal through
pole.
The assigned values have the following meanings:
1: Working range of linear axis for positions >=0,
(if tool length compensation parallel to linear axis equals 0)
2: Working range of linear axis for positions <=0,
(if tool length compensation parallel to linear axis equals 0)
0: No restriction of working range. Traversal through pole.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/4-89
Kinematic Transformations (M1) 06.05
4.3 Function-specific machine data

24970 TRANSMIT_BASE_TOOL_2[i]
MD number Vector of base tool on activation of transformation
Default setting: 0 Minimum input limit: 0 Maximum input limit:
Changes effective after Protection level: Unit: mm
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: MD specifies the distance of the tool zero point referred to the appropriate geometry axes
valid with TRANSMIT active and without tool length offset selected for the 1st TRANSMIT
transformation for each channel.
Programmed length compensations are added to the base tool.
Index i assumes values 0, 1, 2 for the 1st to 3rd geometry axes.
MD irrelevant for ... ... No TRANSMIT active
Application example(s) $MC_TRANSMIT_BASE_TOOL_2[0]=tx
Related to .... $MC_TRANSMIT_BASE_TOOL_1

4.3.2 TRACYL

24800 TRACYL_ROT_AX_OFFSET_1
MD number Offset of rotary axis for the 1st TRACYL transformation
Default setting: 0 Minimum input limit: [no limit] Maximum input limit: [no limit]
Changes effective after Protection level: Unit: degrees
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: Specifies the offset of the rotary axis in degrees in relation to the zero position while TRA-
CYL is active for the first declared TRACYL transformation for each channel.
MD irrelevant for ... ... No TRACYL active
Application example(s) $MC_TRACYL_ROT_AX_OFFSET_1=15.0
Related to .... TRACYL_ROT_AX_OFFSET_2

24808 TRACYL_DEFAULT_MODE_1
MD number Selection of TRACYL mode
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective afterNEWCONFIG Protection level: 7 / 7 Unit: –
Data type: BYTE Applies as of SW 7.2
Meaning: Selection of groove side handling method with TRACYL type 514:
0: Without groove side offset (for TRACYL variant 514 – corresponds to 512)
1: With groove side offset (for TRACYL variant 514 – corresponds to 513)

When $MC_TRAFO_TYPE_.. = 514, the selection parameter can determine whether the
function is computed with or without groove side offset. The parameter defines which vari-
ant will be used if none is selected in the call parameters.

When $MC_TRAFO_DEFAULT_MODE_1 = 1, it is sufficient to specify TRACYL(30) rather


than TRACYL(30,1,1) in the part program.
MD irrelevant for ... ... No TRACYL active
Related to .... TRACYL_DEFAULT_MODE_2

Copyright © Siemens AG, 2005.


2/M1/4-90 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
4.3 Function-specific machine data

24810 TRACYL_ROT_SIGN_IS_PLUS_1
MD number Sign of rotary axis for the 1st TRACYL transformation
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: BOOLEAN Applies as of SW 2.0
Meaning: Specifies the sign which is applied to the rotary axis during the TRACYL transformation for
the first declared TRACYL transformation for each channel.
MD irrelevant for ... ... No TRACYL active
Application example(s) $MC_TRACYL_ROT_SIGN_IS_PLUS_1=TRUE
Related to .... TRACYL_ROT_SIGN_IS_PLUS_2

24820 TRACYL_BASE_TOOL_1[i]
MD number Vector of basic tool for 1st TRACYL transformation
Default setting: 0 Minimum input limit: 0 Maximum input limit:
Changes effective after Protection level: Unit: mm
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW
Meaning: MD specifies the distance of the tool zero point referred to the appropriate geometry axes
valid when TRACYL is active and without tool length offset selected for the 1st TRACYL
transformation for each channel.
Programmed length compensations are added to the base tool.
Index i assumes values 0, 1, 2 for the 1st to 3rd geometry axes.
MD irrelevant for ... ... No TRACYL active
Application example(s) $MC_TRACYL_BASE_TOOL_1[0]=tx
Related to .... $MC_TRACYL_BASE_TOOL_2

24850 TRACYL_ROT_AX_OFFSET_2
MD number Offset of rotary axis for 2nd TRACYL transformation
Default setting: 0 Minimum input limit: [no limit] Maximum input limit: [no limit]
Changes effective after Protection level: Unit: degrees
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: Specifies the distance of the tool zero point offset of the rotary axis in degrees in relation to
the zero position while TRACYL is active for the second declared TRACYL transformation
for each channel.
MD irrelevant for ... ... No TRACYL active
Application example(s) $MC_TRACYL_ROT_AX_OFFSET_2=15.0
Related to .... TRACYL_ROT_AX_OFFSET_1

24858 TRACYL_DEFAULT_MODE_2
MD number Selection of TRACYL mode
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after NEWCONFIG Protection level: 7 / 7 Unit: –
Data type: BYTE Applies as of SW 7.2
Meaning: Selection of groove side handling method with TRACYL type 514 for the 2nd TRACYL.
For description, see: $MC_TRAFO_DEFAULT_MODE_1

MD irrelevant for ... ... No TRACYL active


Related to .... TRACYL_DEFAULT_MODE_1

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/4-91
Kinematic Transformations (M1) 06.05
4.3 Function-specific machine data

24860 TRACYL_ROT_SIGN_IS_PLUS_2
MD number Sign of rotary axis for the 2nd TRACYL transformation
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: BOOLEAN Applies as of SW 2.0
Meaning: Specifies the sign which is applied to the rotary axis during the TRACYL transformation for
the second declared TRACYL transformation for each channel.
MD irrelevant for ... ... No TRACYL active
Application example(s) $MC_TRACYL_ROT_SIGN_IS_PLUS_2=TRUE
Related to .... TRACYL_ROT_SIGN_IS_PLUS_1

24870 TRACYL_BASE_TOOL_2[i]
MD number Vector of basic tool for 2nd TRACYL transformation
Default setting: 0 Minimum input limit: 0 Maximum input limit:
Changes effective after Protection level: Unit: mm
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: MD specifies the distance of the tool zero point referred to the appropriate geometry axes
valid when TRACYL is active and without tool length offset selected for the 2nd TRACYL
transformation for each channel.
Programmed length compensations are added to the base tool.
Index i assumes values 0, 1, 2 for the 1st to 3rd geometry axes.
MD irrelevant for ... ... No TRACYL active
Application example(s) $MC_TRACYL_BASE_TOOL_2[0]=tx
Related to .... $MC_TRACYL_BASE_TOOL_1

Copyright © Siemens AG, 2005.


2/M1/4-92 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
4.3 Function-specific machine data

4.3.3 TRAANG

24700 TRAANG_ANGLE_1
MD number Angle between Cartesian axis and real (inclined) axis for the first TRAANG transformation
Default setting: 0 Minimum input limit: –90 Maximum input limit: 90
Changes effective after Protection level: Unit: degrees
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: Specifies the angle of the inclined axis in degrees between the 1st machine axis and the
1st basic axis when TRAANG is active for the first declared TRAANG transformation of the
channel. The angle is counted positively in clockwise direction.
MD irrelevant for ... ... No TRAANG active
Application example(s) $MC_TRAANG_ANGLE_1=15.0
Related to .... TRAANG_ANGLE_2

24710 TRAANG_BASE_TOOL_1[i]
MD number Vector of base tool for first TRAANG transformation [axis no.]: 0 ... 2
Default setting: 0 Minimum input limit: 0 Maximum input limit: 2
Changes effective after Protection level: Unit: mm
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: MD specifies the distance of the tool zero point referred to the appropriate geometry axes
valid with TRAANG active and without tool length offset selected for the 1st TRAANG
transformation for each channel.
Programmed length compensations are added to the base tool.
Index i assumes values 0, 1, 2 for the 1st to 3rd geometry axes.
MD irrelevant for ... ...
Application example(s) $MC_TRAANG_BASE_TOOL_1[0]=tx
Related to .... $MC_TRAANG_BASE_TOOL_2

24720 TRAANG_PARALLEL_VELO_RES_1
MD number
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: Specifies the velocity reserve for jog, positioning and oscillation movements which is held
ready on the parallel axis (see $MC_TRAFO_AXES_IN_n[1]) for the compensatory move-
ment; MD setting applies to the first TRAANG transformation for each channel.
MD irrelevant for ... ... No TRAANG active
Application example(s) $MC_TRAANG_PARALLEL_VELO_RES_1=0
Related to .... TRAANG_PARALLEL_VELO_RES_2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/4-93
Kinematic Transformations (M1) 06.05
4.3 Function-specific machine data

24721 TRAANG_PARALLEL_VELO_RES_2
MD number
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: Specifies the velocity reserve for jog, positioning and oscillation movements which is held
ready on the parallel axis (see $MC_TRAFO_AXES_IN_n[1]) for the compensatory move-
ment; MD setting applies to the second TRAANG transformation for each channel.
Application example(s) $MC_TRAANG_PARALLEL_VELO_RES_2=0
Related to .... $MC_TRAANG_PARALLEL_VELO_RES_1

24750 TRAANG_ANGLE_2
MD number Angle between Cartesian axis and real (inclined) axis for second TRAANG transformation
Default setting: 0 Minimum input limit: –90 Maximum input limit: 90
Changes effective after Protection level: Unit: degrees
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: Specifies the angle of the inclined axis in degrees between the 1st machine axis and the
1st basic axis when TRAANG is active for the second declared TRAANG transformation of
the channel. The angle is counted positively in clockwise direction.
MD irrelevant for ... ... No TRAANG active
Application example(s) $MC_TRAANG_ANGLE_1=15.0
Related to .... TRAANG_ANGLE_1

24760 TRAANG_BASE_TOOL_2[i]
MD number Vector of base tool for second TRAANG transformation [axis no.]: 0 ... 2
Default setting: 0 Minimum input limit: 0 Maximum input limit: 2
Changes effective after Protection level: Unit: mm
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: MD specifies the distance of the tool zero point referred to the appropriate geometry axes
valid with TRAANG active and without tool length offset selected for the 2nd TRAANG
transformation for each channel.
Programmed length compensations are added to the base tool.
Index i assumes values 0, 1, 2 for the 1st to 3rd geometry axes.
MD irrelevant for ... ... No TRAANG active
Application example(s) $MC_TRAANG_BASE_TOOL_2[0]=tx
Related to .... $MC_TRAANG_BASE_TOOL_1

Copyright © Siemens AG, 2005.


2/M1/4-94 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
4.3 Function-specific machine data

24770 TRAANG_PARALLEL_ACCEL_RES_1
MD number
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: Specifies the axis acceleration reserve for jog, positioning and oscillation movements which
is held ready on the parallel axis (see $MC_TRAFO_AXES_IN_n[1]) for the compensatory
movement; MD setting applies to the first TRAANG transformation for each channel.
MD irrelevant for ... ... No TRAANG active
Application example(s) $MC_TRAANG_PARALLEL_ACCEL_RES_1=0
Related to .... TRAANG_PARALLEL_ACCEL_RES_2

24771 TRAANG_PARALLEL_ACCEL_RES_2
MD number
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DOUBLE Applies as of SW 2.0
Meaning: Specifies the axis acceleration reserve for jog, positioning and oscillation movements which
is held ready on the parallel axis (see $MC_TRAFO_AXES_IN_n[1]) for the compensatory
movement; MD setting applies to the second TRAANG transformation for each channel.
MD irrelevant for ... ... No TRAANG active
Application example(s) $MC_TRAANG_PARALLEL_RES_2=0
Related to .... $MC_TRAANG_PARALLEL_RES_1

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/4-95
Kinematic Transformations (M1) 10.04
06.05
4.3 Function-specific machine data

4.3.4 MD for chained transformations

24995 TRACON_CHAIN_1[n]
MD number Transformation chain of the first chained transformation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 8
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DWORD Applies as of SW 5
Meaning: The MD is saved internally as a table. In the table the numbers of the transformations to be
chained are specified in the same sequence as the transformations are to be implemented
from the BCS to the MCS. n stands for the index of entries in the MD.

Example:
Optionally, a machine can be operated as a 5-axis machine or as a Transmit machine. A
linear axis is not perpendicular to the other linear axes (inclined axis).
5 transformations must be set via machine data, e.g.

TRAFO_TYPE_1 = 16 (5-axis trafo), first transformation


TRAFO_TYPE_2 = 256 (Transmit), second transformation
TRAFO_TYPE_3 = 1024 (Inclined axis), third transformation
TRAFO_TYPE_4 = 8192 First chained transformation, fourth transformation
TRAFO_TYPE_5 = 8192 Second chained transformation, fifth transformation

If the 4th transformation is to be the chaining: 5-axis transformation / inclined axis and the
5th transformation is to be the chaining: Transmit / inclined axis,
then TRACON_CHAIN_1 (1, , 0, 0) is entered in the first table and
TRACON_CHAIN_2 (2, 3, 0, 0) in the second table. Detailed notation shown in the exam-
ple in Chapter 6.
Entry 0 means no transformation (a 3rd and 4th transformation cannot be chained in SW 5).
The transformations can be assigned (TRAFO_TYPE_1 to TRAFO_TYPE_10) in any se-
quence. The chained transformations do not have to be the last ones. However, they must
be behind all transformations that occur in a transformation chain. In the preceding exam-
ple, this would mean that, for example, the position of the third and fourth transformation
must not be swapped. It would be possible though to define a sixth transformation if it is not
to be included in a chained transformation.

However, not just any transformation can be chained to another one.


The following restrictions apply in SW version 5:
 The first transformation in the chain must be:
– an orientation transformation
(3, 4, 5-axis transformation, universal milling head),
– Transmit or
– peripheral transformation or
– inclined axis
 The second transformation must be an inclined axis transformation.
 Only two transformations may be chained.
It is permissible (e.g. for test purposes) to enter only one transformation in the
list.
MD irrelevant for ... ... TRAFOOF
Application example(s) Chapter 6
Special cases, errors, ... More than 2 transformations in the chain, 2nd transformation not TRAANG
...
Related to .... MD 24100: TRAFO_TYPE
Additional references /FB/, F2, “3 to 5 Axis Transformation”

Copyright © Siemens AG, 2005.


2/M1/4-96 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
4.3 Function-specific machine data

24996 TRACON_CHAIN_2[n]
MD number Transformation chain of the second chained transformation
Default setting: Minimum input limit: 0 Maximum input limit: 8 extended to 10
Changes effective after Protection level: Unit: –
NEWCONFIG (SW 5.2 and higher) 7 / 7 (SW 5.2 and higher)
POWER ON (SW 5.1 and lower) 2 / 7 (up to SW 5.1)
Data type: DWORD Applies as of SW 5
Meaning: Analogous to TRACON_CHAIN_1, but for the second chained transformation in the chan-
nel
MD irrelevant for ... ... TRAFOOF
Application example(s) Chapter 6
Special cases, errors, ... More than 2 transformations in the chain, 2nd transformation not TRAANG
...
Related to .... MD 24100: TRAFO_TYPE
Additional references /FB/, F2, “3 to 5 Axis Transformation”

24997 TRACON_CHAIN_3[n]
MD number Transformation chain of the third chained transformation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 10
Changes effective afterNEWCONFIG Protection level: 7 / 7 Unit: –
Data type: DWORD Applies as of SW 7.2
Meaning: Analogous to TRACON_CHAIN_1, but for the third chained transformation in the channel
MD irrelevant for ... ... TRAFOOF
Application example(s) Chapter 6
Special cases, errors, ... More than 2 transformations in the chain, 2nd transformation not TRAANG
...
Related to .... MD 24100: TRAFO_TYPE
Additional references /FB/, F2, “3 to 5 Axis Transformation”

24998 TRACON_CHAIN_4[n]
MD number Transformation chain of the fourth chained transformation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 10
Changes effective afterNEWCONFIG Protection level: 7 / 7 Unit: –
Data type: DWORD Applies as of SW 7.2
Meaning: Analogous to TRACON_CHAIN_1, but for the fourth chained transformation in the channel
MD irrelevant for ... ... TRAFOOF
Application example(s) Chapter 6
Special cases, errors, ... More than 2 transformations in the chain, 2nd transformation not TRAANG
...
Related to .... MD 24100: TRAFO_TYPE
Additional references /FB/, F2, “3 to 5 Axis Transformation”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/4-97
Kinematic Transformations (M1) 06.05
4.3 Function-specific machine data

Notes

Copyright © Siemens AG, 2005.


2/M1/4-98 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
5.3 TRAANG

Signal Descriptions 5
5.1 TRANSMIT

DB 21, ... Transformation active


DBX 33.6
Data Block Signal(s) from NCK channel (NCK–>PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.2
Signal state 1 or signal The NC command TRANSMIT, TRACYL, TRAANG or TRAORI is programmed in the part
transition 0 –––> 1 program. The corresponding block has been processed by the NC and a transformation is
now active.
Signal state 0 or signal No transformation is active.
transition 1 –––> 0
References /PA1/, “Programming Guide”
/FB/, F2, “5-Axis Transformation”

5.2 TRACYL
See 5.1.

5.3 TRAANG
See 5.1.


Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/5-99
Kinematic Transformations (M1) 06.05
5.3 TRAANG

Notes

Copyright © Siemens AG, 2005.


2/M1/5-100 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
6.1 TRANSMIT

Example 6
6.1 TRANSMIT
The following programming example relates to the configuration illustrated in
Fig. 6-1 and shows the sequence of main steps required to configure the axes
and activate TRANSMIT.
;General axis configuration for turning

$MC_AXCONF_GEOAX_NAME_TAB[0] = “X” ; Geometry axis


$MC_AXCONF_GEOAX_NAME_TAB[1] = “Y” ; Geometry axis
$MC_AXCONF_GEOAX_NAME_TAB[2] = “Z” ; Geometry axis
$MC_AXCONF_GEOAX_ASSIGN_TAB[0] =1 ; X as channel axis 1
$MC_AXCONF_GEOAX_ASSIGN_TAB[1] = 0 ; Y is not a channel axis
$MC_AXCONF_GEOAX_ASSIGN_TAB[2] = 2 ; Z as channel axis 2
$MC_AXCONF_CHANAX_NAME_TAB[0] = “XC”;
$MC_AXCONF_CHANAX_NAME_TAB[1] = “ZC”;
$MC_AXCONF_CHANAX_NAME_TAB[2] = “CC”;
$MC_AXCONF_CHANAX_NAME_TAB[3] = “ASC”;
$MC_AXCONF_CHANAX_NAME_TAB[4] = “”;
$MC_AXCONF_MACHAX_USED[0] = 2 ;XC as machine axis 2
$MC_AXCONF_MACHAX_USED[1] = 3 ;ZC as machine axis 3
$MC_AXCONF_MACHAX_USED[2] = 1 ;CC as machine axis 1
$MC_AXCONF_MACHAX_USED[3] = 4 ;ASC as machine axis 4
$MC_AXCONF_MACHAX_USED[3] = 0 ;Empty
$MA_SPIND_ASSIGN_TO_MACHAX[AX1]= 1 ; C is spindle 1
$MA_SPIND_ASSIGN_TO_MACHAX[AX2]= 0 ; X is not a spindle
$MA_SPIND_ASSIGN_TO_MACHAX[AX3]= 0 ; Z is not a spindle
$MA_SPIND_ASSIGN_TO_MACHAX[AX4]= 2 ; AS is spindle 2
$MN_AXCONF_MACHAX_NAME_TAB[0]= “CM” ; 1st machine axis
$MN_AXCONF_MACHAX_NAME_TAB[1]= “XM” ; 2nd machine axis
$MN_AXCONF_MACHAX_NAME_TAB[2]= “ZM” ; 3rd machine axis
$MN_AXCONF_MACHAX_NAME_TAB[3]= “ASM” ; 4th machine axis

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/6-101
Kinematic Transformations (M1) 11.02
06.05
6.1 TRANSMIT

;Prepare for TRANSMIT (as first and only transformation)

$MA_ROT_IS_MODULO[3] = TRUE ; c as modulo axis


$MC_TRAFO_TYPE_1 = 256 ; TRANSMIT transformation
$MC_TRAFO_AXES_IN_1[0] = 1 ; Channel axis perpendicular to rotary axis
$MC_TRAFO_AXES_IN_1[1] = 3 ; Channel axis rotary axis
$MC_TRAFO_AXES_IN_1[2] = 2 ; Channel axis parallel to rotary axis
$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [0] = 1 ; 1st cha. axis bec. GEOAX X
$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [1] = 3 ; 2nd cha. axis bec. GEOAX Y
$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [2] = 2 ; 3rd cha. axis bec. GEOAX Z
$MC_TRANSMIT_ROT_AX_OFFSET_1 = 0. ; Rotational position X-Y plane
in rel. to zero
of rotary axis
$MC_TRANSMIT_ROT_SIGN_IS_PLUS_1 = FALSE ; Rotary axis turns –
$MC_TRANSMIT_BASE_TOOL_1 [0] = 0.0 ; Tool distance in X
$MC_TRANSMIT_BASE_TOOL_1 [1] = 0.0 ; Tool distance in Y
$MC_TRANSMIT_BASE_TOOL_1 [2] = 0.0 ; Tool distance in Z

; Activation of
TRANSMIT

; Programming in X,Y, Z

; Return to rotational operation


TRAFOOF

TRACYL
The following programming example relates to the configuration illustrated in
Fig. 6-1 and shows the sequence of main steps required to configure the axes
and activate TRACYL.
; General axis configuration for turning

$MC_AXCONF_GEOAX_NAME_TAB[0] = “X” ; Geometry axis


$MC_AXCONF_GEOAX_NAME_TAB[1] = “Y” ; Geometry axis
$MC_AXCONF_GEOAX_NAME_TAB[2] = “Z” ; Geometry axis
$MC_AXCONF_GEOAX_ASSIGN_TAB[0] = 1 ; X as channel axis 1
$MC_AXCONF_GEOAX_ASSIGN_TAB[1] = 2 ; Y is not a channel axis
$MC_AXCONF_GEOAX_ASSIGN_TAB[2] = 3 ; Z as channel axis 2
$MC_AXCONF_CHANAX_NAME_TAB[0] = “XC”;
$MC_AXCONF_CHANAX_NAME_TAB[1] = “YC”;
$MC_AXCONF_CHANAX_NAME_TAB[2] = “ZC”;
$MC_AXCONF_CHANAX_NAME_TAB[3] = “CC”;
$MC_AXCONF_CHANAX_NAME_TAB[4] = “ASC”;
$MC_AXCONF_MACHAX_USED[0] = 2 ;X as machine axis 2
$MC_AXCONF_MACHAX_USED[1] = 3 ;Y as machine axis 3
$MC_AXCONF_MACHAX_USED[2] = 4 ;Z as machine axis 4
$MC_AXCONF_MACHAX_USED[3] = 1 ;C as machine axis 1
$MC_AXCONF_MACHAX_USED[4] = 5 ;AS as machine axis 5
$MA_SPIND_ASSIGN_TO_MACHAX[AX1]= 1 ; C is spindle 1
$MA_SPIND_ASSIGN_TO_MACHAX[AX2]= 0 ; X is not a spindle
$MA_SPIND_ASSIGN_TO_MACHAX[AX3]= 0 ; Y is not a spindle
$MA_SPIND_ASSIGN_TO_MACHAX[AX4]= 0 ; Z is not a spindle
$MA_SPIND_ASSIGN_TO_MACHAX[AX5]= 2 ; AS is spindle 2
$MN_AXCONF_MACHAX_NAME_TAB[0]= “CM” ; 1st machine axis
$MN_AXCONF_MACHAX_NAME_TAB[1]= “XM” ; 2nd machine axis
$MN_AXCONF_MACHAX_NAME_TAB[2]= “YM” ; 3rd machine axis

Copyright © Siemens AG, 2005.


2/M1/6-102 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
11.02
06.05 Kinematic Transformations (M1)
6.1 TRANSMIT

$MN_AXCONF_MACHAX_NAME_TAB[3]= “ZM” ; 4th machine axis


$MN_AXCONF_MACHAX_NAME_TAB[4]= “ASM” ; 5th machine axis

;Prepare for TRACYL (first and only transformation)

$MC_TRAFO_TYPE_1 = 513 ; TRACYL transformation with groove wall


compensation
$MC_TRAFO_AXES_IN_1[0] = 1 ; Channel axis radial to rotary axis
$MC_TRAFO_AXES_IN_1[1] = 4 ; Channel axis in cylinder generated
surface perpendicular to rotary axis
$MC_TRAFO_AXES_IN_1[2] = 3 ; Channel axis parallel to rotary axis
$MC_TRAFO_AXES_IN_1[3] = 2 ; Channel axis is add. axis for index [0]

$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [0] = 1 ; 1st channel axis becomes


GEOAX X
$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [1] = 4 ; 2nd channel axis becomes
GEOAX Y
$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [2] = 3 ; 3rd channel axis becomes
GEOAX Z

$MC_TRACYL_ROT_AX_OFFSET_1 = 0. ; Rotational position X-Y plane in rel.


to zero pos. of rotary axis
$MC_TRACYL_ROT_SIGN_IS_PLUS_1 = FALSE ; Rotary axis turns –
$MC_TRACYL_BASE_TOOL_1 [0] = 0.0 ; Tool distance in X
$MC_TRACYL_BASE_TOOL_1 [1] = 0.0 ; Tool distance in Y
$MC_TRACYL_BASE_TOOL_1 [2] = 0.0 ; Tool distance in Z

; Activation of
TRACYL(40.0)

; See below for programming in Y and Z

; Return to rotational operation


TRAFOOF

Programming with (TRAFO_TYPE_n=513)


groove wall
compensation

Contour It is possible to produce a groove which is wider than the tool by using address
OFFN to program the compensation direction (G41, G42) in relation to the
programmed reference contour and the distance of the groove side wall from
the reference contour (see Fig. 6-1).

Tool radius The tool radius is automatically taken into account with respect to the groove
side wall (see Fig. 6-1). The full functionality of the plane tool radius
compensation is available (steady transition at outer and inner corners as well
as solution of bottleneck problems).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/6-103
Kinematic Transformations (M1) 06.05
6.1 TRANSMIT

0 Z
N90

N80

OFFN N70
N100
N60
Path I

Programmed
path
Path II
N110
N120

Fig. 6-1 Groove with wall compensation, cylinder coordinates (simplified sketch)

; Example program which leads the tool along path I across path II back to the
; initial position after transformation selection (machine data see Chapter 4,
; example X-Y-Z-C kinematics):

N1 SPOS=0; Transfer of spindle to rotary axis mode


N5 G0 X25 Y0 Z105 CC=200 F5000 G64;
Positioning of machine above groove center
N10 TRACYL(40.) ; Transformation selection with
; reference diameter 40 mm
N20 G19 G90; Machining plane is generated cylinder surface
N30 T1 D1; Tool selection, can also be positioned before
TRACY (..)
N40 G1 X20; Infeed tool to groove base
N50 OFFN=12. ; Define groove wall distance, must not be
; in a separate line

; Approach groove wall


N60 G1 Z100 G42; TRC selection to approach groove wall

; Machining of groove section path I


N70 G1 Z50; Groove section parallel to cylinder plane
N80 G1 Y10; Groove section parallel to periphery

Copyright © Siemens AG, 2005.


2/M1/6-104 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
6.1 TRANSMIT

; Approach groove wall for path II


N90 OFFN=4 G42; Define groove wall distance and
; TRC selection to approach groove wall

; Machine groove section path II


N100 G1 Y70; Corresponds to CC=200 degrees
N110 G1 Z100; Back to initial value

; Retract from groove wall


N120 G1 Z105 G40; TRC deselection to retract from groove wall
N130 G0 X25; Retract from groove

N140 TRAFOOF;
N150 G0 X25 Y0 Z105 CC=200 D0;
Return to initial point and
; deselect tool compensation
N160 M30

Programming TRACYL without groove side offset with additional linear axis
without groove
(TRAFO_TYPE_n=513)
side offset
; The following part program requires the machine data settings shown below:

$MC_AXCONF_MACHAX_USED[0] = 1 ;X as machine axis 1


$MC_AXCONF_MACHAX_USED[1] = 2 ;Y as machine axis 2
$MC_AXCONF_MACHAX_USED[2] = 3 ;Z as machine axis 3
$MC_AXCONF_MACHAX_USED[3] = 4 ;C as machine axis 4
$MC_AXCONF_CHANAX_NAME_TAB[1] = “Y2”

$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [0] = 1 ; X as channel axis 1


$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [1] = 2 ; Y not a channel axis
$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [2] = 3 ; Z as channel axis 2
$MC_TRAFO_TYPE_1 = 514 ; TRACYL without groove side offset, with
extended tool length compensation

$MC_TRAFO_AXES_IN_1[0] = 1 ; channel axis radial to rotary axis


$MC_TRAFO_AXES_IN_1[1] = 4 ; channel axis in cylinder generated surface,
perpendicular to rotary axis
$MC_TRAFO_AXES_IN_1[2] = 3 ; channel axis parallel to rotary axis
$MC_TRAFO_AXES_IN_1[3] = 2 ; channel axis additional axis to index [0]

$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [0] = 1; 1st cha. axis will be GEOAX X


$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [1] = 4; 2nd cha. axis will be GEOAX Y
$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [2] = 3; 3rd cha. axis will be GEOAX Z
$MC_TRACYL DEFAULT MODE_1 =0 ; or not set at all

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/6-105
Kinematic Transformations (M1) 06.05
6.2 TRAANG (inclined axis)

Tool data:
$TC_DP1[1,1]=120 ; tool type end mill
$TC_DP2[1,1]=0
$TC_DP3[1,1]= ; length compensation vector
$TC_DP4[1,1]=25
$TC_DP5[1,1]=5
$TC_DP6[1,1]=4 ; radius, tool radius
Part program:
N1001 T1 D1 G54 G19 G90 F5000 G64
N1005 G0 X25 Y0 Z105 A=200
; Selection of 1st TRACYL without groove side offset
N1010 TRACYL(40.) ; ; Transformation selection

N1040 G1 X20;
N1060 G1 Z100;
N1070 G1 Z50;
N1080 G1 Y10;

N1140 TROFOOF
N1150 G0 X25 Y0 Z105 A=200
; Selection of 1st TRACYL with groove side offset
N2010 G0 TRACYL(40.,1,1) ; TRCYL(40., ,1) could also be selected
N2040 G1 X20;
N2060 G1 Z100;
N2070 G1 Z50;
N2080 G1 Y10;

N2140 TROFOOF

6.2 TRAANG (inclined axis)

The following programming example relates to the configuration illustrated in


Fig. 6-1 and shows the sequence of main steps required to configure the axes
and activate TRAANG.
;General axis configuration for grinding

$MC_AXCONF_GEOAX_NAME_TAB[0] = “X” ; Geometry axis


$MC_AXCONF_GEOAX_NAME_TAB[1] = “” ; Geometry axis
$MC_AXCONF_GEOAX_NAME_TAB[2] = “Z” ; Geometry axis
$MC_AXCONF_GEOAX_ASSIGN_TAB[0] =0 ; X is not a channel axis
$MC_AXCONF_GEOAX_ASSIGN_TAB[1] = 0 ; Y is not a channel axis
$MC_AXCONF_GEOAX_ASSIGN_TAB[2] = 1 ; Z as channel axis 1
$MC_AXCONF_CHANAX_NAME_TAB[0] = “Z”;
$MC_AXCONF_CHANAX_NAME_TAB[1] = “C”;
$MC_AXCONF_CHANAX_NAME_TAB[2] = “AS1”;
$MC_AXCONF_CHANAX_NAME_TAB[3] = “MU”
$MC_AXCONF_MACHAX_USED[0] = 3 ; Z as machine axis 3
$MC_AXCONF_MACHAX_USED[1] = 1 ; C as machine axis 1

Copyright © Siemens AG, 2005.


2/M1/6-106 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
6.2 TRAANG (inclined axis)

$MC_AXCONF_MACHAX_USED[2] = 4 ;AS as machine axis 4


$MC_AXCONF_MACHAX_USED[3] = 2 ;MU as machine axis 2
$MC_AXCONF_MACHAX_USED[3] = 0 ;Empty
$MC_AXCONF_MACHAX_USED[3] = 0 ;Empty
$MA_SPIND_ASSIGN_TO_MACHAX[AX1]= 1 ; C is spindle 1
$MA_SPIND_ASSIGN_TO_MACHAX[AX2]= 0 ; X is not a spindle
$MA_SPIND_ASSIGN_TO_MACHAX[AX3]= 0 ; Z is not a spindle
$MA_SPIND_ASSIGN_TO_MACHAX[AX4]= 2 ; AS is spindle 2
$MN_AXCONF_MACHAX_NAME_TAB[0]= “C1” ; 1st machine axis
$MN_AXCONF_MACHAX_NAME_TAB[1]= “MU” ; 2nd machine axis
$MN_AXCONF_MACHAX_NAME_TAB[2]= “MZ” ; 3rd machine axis
$MN_AXCONF_MACHAX_NAME_TAB[3]= “AS1” ; 4th machine axis

;Prepare for TRAANG (first and only transformation)

$MC_TRAFO_TYPE_1 = 1024 ; TRAANG transformation


$MC_TRAFO_AXES_IN_1[0] = 4 ; Channel axis “inclined axis”
$MC_TRAFO_AXES_IN_1[1] = 1 ; Channel axis parallel to axis Z
$MC_TRAFO_AXES_IN_1[2] = 0 ; Channel axis not active
$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [0] = 4 ; X 1st channel axis
$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [1] = 0 ; Y 2nd channel axis
$MC_TRAFO_GEOAX_ASSIGN_TAB_1 [2] = 1 ; Z 3rd channel axis
$MC_TRAANG_ANGLE_1 = 30. ; Angle of inclined axis
$MC_TRAANG_BASE_TOOL_1 [0] = 0 ; Tool distance in X
$MC_TRAANG_BASE_TOOL_1 [1] = 0 ; Tool distance in Y
$MC_TRAANG_BASE_TOOL_1 [2] = 0 ; Tool distance in Z

TRAANG ; Activation

; Programming in X,Y, Z

TRAFOOF ; Return to turning mode

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/6-107
Kinematic Transformations (M1) 06.05
6.3 Chained transformations

6.3 Chained transformations

Examples The following elements are determined in the next chapter:

 The general channel configuration


 Single transformations
 Chained transformations consisting of previously defined single
transformations

 Activation of single transformations


 Activation of chained transformations
The examples include the following transformations:
1. 5-axis transformation with rotatable tool and axis sequence AB (trafo
type 16)
2. Transmit (trafo type 256)
3. Inclined axis (trafo type 1024)
4. Chaining of the 1st and 3rd transformation (trafo type 8192)
5. Chaining of the 2nd and 3rd transformation (trafo type 8192)

General channel CHANDATA (1) ; Channel data in channel 1


configuration $MC_AXCONF_MACHAX_USED[0] = 1
$MC_AXCONF_MACHAX_USED[1] = 2
$MC_AXCONF_MACHAX_USED[2] = 3
$MC_AXCONF_MACHAX_USED[3] = 4
$MC_AXCONF_MACHAX_USED[4] = 5
$MC_AXCONF_MACHAX_USED[5] = 6
$MC_AXCONF_MACHAX_USED[6] = 7
$MC_AXCONF_MACHAX_USED[7] = 0

$MC_AXCONF_CHANAX_NAME_TAB[3]=“A”
$MC_AXCONF_CHANAX_NAME_TAB[4]=“B”
$MC_AXCONF_CHANAX_NAME_TAB[5]=“C”

$MA_IS_ROT_AX[ AX4 ] = TRUE


$MA_IS_ROT_AX[ AX5 ] = TRUE
$MA_IS_ROT_AX[ AX6 ] = TRUE
$MA_IS_ROT_AX[ AX7 ] = TRUE

$MA_SPIND_ASSIGN_TO_MACHAX[ AX5 ] = 0
$MA_SPIND_ASSIGN_TO_MACHAX[AX7] = 1
$MA_ROT_IS_MODULO[AX7] = TRUE

Copyright © Siemens AG, 2005.


2/M1/6-108 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
6.3 Chained transformations

Single ; 1st TRAORI


transformations $MC_TRAFO_TYPE_1= 16 ; TRAORI: A-B kinematics
$MC_TRAFO_AXES_IN_1[0]=1
$MC_TRAFO_AXES_IN_1[1]=2
$MC_TRAFO_AXES_IN_1[2]=3
$MC_TRAFO_AXES_IN_1[3]=4
$MC_TRAFO_AXES_IN_1[4]=5
$MC_TRAFO_AXES_IN_1[5]=0
$MC_TRAFO_GEOAX_ASSIGN_TAB_1[0]=1
$MC_TRAFO_GEOAX_ASSIGN_TAB_1[1]=2
$MC_TRAFO_GEOAX_ASSIGN_TAB_1[2]=3
$MC_TRAFO5_BASE_TOOL_1[0]=0
$MC_TRAFO5_BASE_TOOL_1[1]=0
$MC_TRAFO5_BASE_TOOL_1[2]=0

; 2. TRANSMIT
$MC_TRAFO_TYPE_2 = 256 ;TRANSMIT
$MC_TRAFO_AXES_IN_2[0]=1
$MC_TRAFO_AXES_IN_2[1]=6
$MC_TRAFO_AXES_IN_2[2]=3
$MC_TRAFO_AXES_IN_2[3]=0
$MC_TRAFO_AXES_IN_2[4]=0
$MC_TRAFO_AXES_IN_2[5]=0
$MC_TRAFO_AXES_IN_2[6]=0
$MC_TRAFO_GEOAX_ASSIGN_TAB_2[0]=1
$MC_TRAFO_GEOAX_ASSIGN_TAB_2[1]=6
$MC_TRAFO_GEOAX_ASSIGN_TAB_2[2]=3

; 3. TRAANG
$MC_TRAFO_TYPE_3 = 1024 ;TRAANG
$MC_TRAFO_AXES_IN_3[0] = 1
$MC_TRAFO_AXES_IN_3[1] = 3
$MC_TRAFO_AXES_IN_3[2] = 2
$MC_TRAFO_AXES_IN_3[3] = 0
$MC_TRAFO_AXES_IN_3[4] = 0
$MC_TRAFO_GEOAX_ASSIGN_TAB_3[0] = 1
$MC_TRAFO_GEOAX_ASSIGN_TAB_3[1] = 3
$MC_TRAFO_GEOAX_ASSIGN_TAB_3[2] = 2
$MC_TRAANG_ANGLE_1 = 45.
$MC_TRAANG_PARALLEL_VELO_RES_1 = 0.2
$MC_TRAANG_PARALLEL_ACCEL_RES_1 = 0.2
$MC_TRAANG_BASE_TOOL_1[0] = 0.0
$MC_TRAANG_BASE_TOOL_1[1] = 0.0
$MC_TRAANG_BASE_TOOL_1[2] = 0.0

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/6-109
Kinematic Transformations (M1) 06.05
6.3 Chained transformations

Chained ; 4th TRACON (chaining of TRAORI / TRAANG)


transformations $MC_TRAFO_TYPE_4 = 8192

$MC_TRAFO_GEOAX_ASSIGN_TAB_4[0] = 2
$MC_TRAFO_GEOAX_ASSIGN_TAB_4[1] = 1
$MC_TRAFO_GEOAX_ASSIGN_TAB_4[2] = 3

$MC_TRACON_CHAIN_1[0] = 1
$MC_TRACON_CHAIN_1[1] = 3
$MC_TRACON_CHAIN_1[2] = 0

; 5. TRACON (chaining of TRANSMIT / TRAANG)

$MC_TRAFO_TYPE_5 = 8192

$MC_TRAFO_GEOAX_ASSIGN_TAB_5[0] = 1
$MC_TRAFO_GEOAX_ASSIGN_TAB_5[1] = 6
$MC_TRAFO_GEOAX_ASSIGN_TAB_5[2] = 3

$MC_TRACON_CHAIN_2[0] = 2
$MC_TRACON_CHAIN_2[1] = 3
$MC_TRACON_CHAIN_2[2] = 0

Parts program Example of an NC program which uses the set transformations:


(extracts)
; Call single transformations

; Tool definition
$TC_DP1[1,1]=120 ; Tool type
$TC_DP3[1,1]= 10 ; Tool length

n2 x0 y0 z0 a0 b0 f20000 t1 d1
n4 x20

n30 TRANSMIT ; Activate Transmit


n40 x0 y20
n50 x-20 y0
n60 x0 y-20
n70 x20 y0
n80 TRAFOOF ; Deactivate Transmit

n130 TRAANG(45.) ; Activate inclined axis transformation, parameter: Angle 45°


n140 x0 y0 z20
n150 x-20 z0
n160 x0 z-20
n170 x20 z0

Note
The above examples assume that the angle of the “inclined axis” can be set on
the machine and is set to 0 degrees when the single transformation is
activated.

Copyright © Siemens AG, 2005.


2/M1/6-110 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
6.3 Chained transformations

; 1. Call chained transformation


; TRAORI + TRAANG

n230 TRACON(1, 45.) ; Activate 1st of 2 chained transformations


; The previously active transformation TRAANG is automatically deselected
; The parameter for the inclined axis is 45°
n240 x10 y0 z0 a3=–1 C3 =1 oriwks
n250 x10 y20 b3 = 1 c3 = 1
...

; 2. Call 2nd chained transformation


; TRANSMIT + TRAANG

n230 TRACON(2, 40.) ; Activate 2nd chained transformation


; The parameter for the inclined axis is 40°
n335 x20 y0 z0
n340 x0 y20 z10
n350 x-20 y0 z0
n360 x0 y-20 z0
n370 x20 y0 z0
n380 TRAFOOF ; Deactivate 2nd chained transformation
...

n1000 M30

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/6-111
Kinematic Transformations (M1) 06.05
6.4 Activating transformation MD via a parts program (SW 5.2 and higher)

6.4 Activating transformation MD via a parts program


(SW 5.2 and higher)
It would be permissible in the following example to reconfigure (write) a machine
data affecting the second transformation (e.g.
$MC_TRAFO5_BASE_TOOL_2[2]) in block N90, since writing a machine data
alone does not activate it. However, if the program remained otherwise
unchanged, an alarm would occur in block N130, because an attempt would
then be made to modify an active transformation.
Example program:



N40 TRAORI(2) ; Select 2nd orientation
; transformation
N50 X0 Y0 Z0 F20000 T1 T1
N60 A50 B50
N70 A0 B0
N80 X10
N90 $MC_TRAFO5_BASE_TOOL_1[2] = 50 ; Overwrite an MD
; of the 1st orientation
; transformation
N100 A20
N110 X20
N120 X0
N130 NEWCONF ; Accept newly modified
; machine data
N140 TRAORI(1) ; Select 1st orientation
; transformation,
; MD becomes operative
N150 G19 X0 Y0 Z0
N160 A50 B50
N170 A0 B0
N180 TRAFOOF
N190 M30


Copyright © Siemens AG, 2005.


2/M1/6-112 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
7.1 TRANSMIT

Data Fields, Lists 7


7.1 TRANSMIT

7.1.1 Interface signals

DB number Bit, byte Name Refe-


rence
Channel-specific
21, ... 33.6 Transformation active F2

7.1.2 Machine data

Number Names Name Refe-


rence
Channel-specific ($MC_...)
20110 RESET_MODE_MASK Definition of control basic setting after K2
run-up and RESET/part program end
20140 TRAFO_RESET_VALUE Basic transformation position K2
22534 TRAFO_CHANGE_M_CODE M code for transformation changeover
24100 TRAFO_TYPE_1 Definition of the 1st transformation in F2
channel
24110 TRAFO_AXES_IN_1 Axis assig. for the 1st transformation F2
24120 TRAFO_GEOAX_ASSIGN_TAB_1 Geo-axis assign. for 1st transformation F2
24200 TRAFO_TYPE_2 Definition of the 2nd transf. in channel F2
24210 TRAFO_AXES_IN_2 Axis assig. for the 2nd transformation F2
24220 TRAFO_GEOAX_ASSIGN_TAB_2 Geo-axis assig. for 2nd transformation F2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/7-113
Kinematic Transformations (M1) 06.05
7.1 TRANSMIT

Number Names Name Refe-


rence
24300 TRAFO_TYPE_3 Definition of the 3rd transfor. in channel F2
24310 TRAFO_AXES_IN_3 Axis assign.t for the 3rd transformation F2
24320 TRAFO_GEOAX_ASSIGN_TAB_3 Geo-axis assign. for 3rd transformation F2
24400 TRAFO_TYPE_4 Definition of the 4th transfor. in channel F2
24410 TRAFO_AXES_IN_4 Axis assign. for the 4th transformation F2
24420 TRAFO_GEOAX_ASSIGN_TAB_4 Geo-axis assign. for 4th transformation F2
24430 TRAFO_TYPE_5 Definition of the 5th transfor. in channel F2
24432 TRAFO_AXES_IN_5 Axis assign. for the 5th transformation F2
24434 TRAFO_GEOAX_ASSIGN_TAB_5 Geo-axis assign. for 5th transformation F2
24440 TRAFO_TYPE_6 Definition of the 6th transfor. in channel F2
24442 TRAFO_AXES_IN_6 Axis assign. for the 6th transformation F2
24444 TRAFO_GEOAX_ASSIGN_TAB_6 Geo-axis assign. for 6th transformation F2
24450 TRAFO_TYPE_7 Definition of the 7th transfor. in channel F2
24452 TRAFO_AXES_IN_7 Axis assign. for the 7th transformation F2
24454 TRAFO_GEOAX_ASSIGN_TAB_7 Geo-axis assign. for 7th transformation F2
24460 TRAFO_TYPE_8 Definition of the 8th transfo. in channel F2
24462 TRAFO_AXES_IN_8 Axis assign. for the 8th transformation F2
24464 TRAFO_GEOAX_ASSIGN_TAB_8 Geo-axis assign. for 8th transformation F2
24900 TRANSMIT_ROT_AX_OFFSET_1 Deviation of rotary axis from zero posi-
tion in degrees (1st TRANSMIT)
24910 TRANSMIT_ROT_SIGN_IS_PLUS_1 Sign of rotary axis for TRANSMIT (1st
TRANSMIT)
24911 TRANSMIT_POLE_SIDE_FIX_1 Limitation of working range in front of/be-
hind pole, 1st transformation
24920 TRANSMIT_BASE_TOOL_1 Distance of tool zero point from origin of
geo-axes (1st TRANSMIT)
24950 TRANSMIT_ROT_AX_OFFSET_2 Deviation of rotary axis from zero posi-
tion in degrees (2nd TRANSMIT)
24960 TRANSMIT_ROT_SIGN_IS_PLUS_2 Sign of rotary axis for TRANSMIT (2nd
TRANSMIT)
24961 TRANSMIT_POLE_SIDE_FIX_2 Limitation of working range in front of/be-
hind pole, 2nd transformation
24970 TRANSMIT_BASE_TOOL_2 Distance of tool zero point from origin of
geo-axes (2nd TRANSMIT)

7.1.3 Alarms
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, Diagnostics Guide
or in the Online help.

Copyright © Siemens AG, 2005.


2/M1/7-114 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
7.2 TRACYL

7.2 TRACYL

7.2.1 Interface signals

DB number Bit, byte Name Refe-


rence
Channel-specific
21, ... 33.6 Transformation active F2

7.2.2 Machine data

Number Names Name Refe-


rence
Channel-specific ($MC_...)
20110 RESET_MODE_MASK Definition of control basic setting after K2
run-up and RESET/part program end
20140 TRAFO_RESET_VALUE Basic transformation position K2
20144 TRAFO_MODE_MASK Selection of the kinematic trans. function
24100 TRAFO_TYPE_1 Definition of the 1st transformation in F2
channel
24110 TRAFO_AXES_IN_1 Axis assignment for the 1st transformat. F2
24120 TRAFO_GEOAX_ASSIGN_TAB_1 Geo-axis assignment for 1st transformat. F2
24130 TRAFO_INCLUDES_TOOL_1 Tool handling with active transfor. 1. F2
24200 TRAFO_TYPE_2 Definition of the 2nd transfor. in channel F2
24210 TRAFO_AXES_IN_2 Axis assignment for the 2nd transformat. F2
24220 TRAFO_GEOAX_ASSIGN_TAB_2 Geo-axis assignment for 2nd transform. F2
24230 TRAFO_INCLUDES_TOOL_2 Tool handling with active transformat. 2. F2
24300 TRAFO_TYPE_3 Definition of the 3rd transfor. in channel F2
24310 TRAFO_AXES_IN_3 Axis assignment for the 3rd transformat. F2
24320 TRAFO_GEOAX_ASSIGN_TAB_3 Geo-axis assignment for 3rd transforma. F2
24330 TRAFO_INCLUDES_TOOL_3 Tool handling with active transformat. 3. F2
24400 TRAFO_TYPE_4 Definition of the 4th transforl in channel F2
24410 TRAFO_AXES_IN_4 Axis assignment for the 4th transforma. F2
24420 TRAFO_GEOAX_ASSIGN_TAB_4 Geo-axis assignment for 4th transforma. F2
24426 TRAFO_INCLUDES_TOOL_4 Tool handling with active transforma. 4. F2
24430 TRAFO_TYPE_5 Definition of the 5th transfor. in channel F2
24432 TRAFO_AXES_IN_5 Axis assignment for the 5th transformat. F2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/7-115
Kinematic Transformations (M1) 06.05
7.2 TRACYL

Number Names Name Refe-


rence
24434 TRAFO_GEOAX_ASSIGN_TAB_5 Geo-axis assignment for 5th transform. F2
24436 TRAFO_INCLUDES_TOOL_5 Tool handling with active F2
transformation 5
24440 TRAFO_TYPE_6 Definition of the 6th transformation in F2
channel
24442 TRAFO_AXES_IN_6 Axis assignment for the 6th transformat. F2
24444 TRAFO_GEOAX_ASSIGN_TAB_6 Geo-axis assignment for 6th transformat. F2
24446 TRAFO_INCLUDES_TOOL_6 Tool handling with active F2
transformation 6
24450 TRAFO_TYPE_7 Definition of the 7th transformation in F2
channel
24452 TRAFO_AXES_IN_7 Axis assignment for the 7th transformat. F2
24454 TRAFO_GEOAX_ASSIGN_TAB_7 Geo-axis assignment for 7th transformat. F2
24456 TRAFO_INCLUDES_TOOL_7 Tool handling with active transformat. 7 F2
24460 TRAFO_TYPE_8 Definition of the 8th transformation in F2
channel
24462 TRAFO_AXES_IN_8 Axis assignment for the 8th transformati. F2
24464 TRAFO_GEOAX_ASSIGN_TAB_8 Geo-axis assignment for 8th transformat. F2
24466 TRAFO_INCLUDES_TOOL_8 Tool handling with active transformat. 8 F2
24470 TRAFO_TYPE_9 Definition of the 9th transformation in F2
channel
24472 TRAFO_AXES_IN_9 Axis assignment for the 9th transformat. F2
24474 TRAFO_GEOAX_ASSIGN_TAB_9 Geo-axis assignment for 9th transformat. F2
24476 TRAFO_INCLUDES_TOOL_9 Tool handling with active transformat. 9 F2
24480 TRAFO_TYPE_10 Definition of the 10th transformation in F2
channel
24482 TRAFO_AXES_IN_10 Axis assignment for the 10th transform. F2
24484 TRAFO_GEOAX_ASSIGN_TAB_10 Geo-axis assignment for 10th trans- F2
formation
24486 TRAFO_INCLUDES_TOOL_10 Tool handling with active transformat. 10 F2
24800 TRACYL_ROT_AX_OFFSET_1 Deviation of rotary axis from zero posi-
tion in degrees (1st TRACYL)
24808 TRACYL_DEFAULT_MODE_1 Selection of TRACYL mode
(1st TRACYL)
24810 TRACYL_ROT_SIGN_IS_PLUS_1 Sign of rotary axis for TRACYL
(1st TRACYL)
24820 TRACYL_BASE_TOOL_1 Distance of tool zero point from origin of
geo-axes (1st TRACYL)
24850 TRACYL_ROT_AX_OFFSET_2 Deviation of rotary axis from zero posi-
tion in degrees (2nd TRACYL)
24858 TRACYL_DEFAULT_MODE_2 Selection of TRACYL mode
(2nd TRACYL)
24860 TRACYL_ROT_SIGN_IS_PLUS_2 Sign of rotary axis for TRACYL
(2nd TRACYL)

Copyright © Siemens AG, 2005.


2/M1/7-116 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
7.2 TRACYL

Number Names Name Refe-


rence
24870 TRACYL_BASE_TOOL_2 Distance of tool zero point from origin of
geo-axes (2nd TRACYL)
22534 TRAFO_CHANGE_M_CODE M code for transformation changeover

7.2.3 Alarms

Detailed explanations of the alarms, which may occur, appear in


References: /DA/, Diagnostics Guide
or in the Online help.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/7-117
Kinematic Transformations (M1) 06.05
7.3 TRAANG (inclined axis)

7.3 TRAANG (inclined axis)


7.3.1 Interface signals

DB number Bit, byte Name Refe-


rence
Channel-specific
21, ... 33.6 Transformation active F2

7.3.2 Machine data

Number Identifier Name Refe-


rence
Channel-specific ($MC_...)
20110 RESET_MODE_MASK Definition of control basic setting after K2
run-up and RESET/part program end
20140 TRAFO_RESET_VALUE Basic transformation position K2
20144 RAFO_MODE_MASK Selection of the kinematic transf. function
20534 TRAFO_CHANGE_M_CODE M code for transformation changeover
24100 TRAFO_TYPE_1 Definition of the 1st transf. in channel F2
24110 TRAFO_AXES_IN_1 Axis assignment for the 1st transformat. F2
24120 TRAFO_GEOAX_ASSIGN_TAB_1 Geo-axis assignment for 1st transformat. F2
24200 TRAFO_TYPE_2 Definition of the 2nd transformation in F2
channel
24210 TRAFO_AXES_IN_2 Axis assignment for the 2nd transformat. F2
24220 TRAFO_GEOAX_ASSIGN_TAB_2 Geo-axis assignment for 2nd transformat. F2
24300 TRAFO_TYPE_3 Definition of the 3rd transfor. in channel F2
24310 TRAFO_AXES_IN_3 Axis assignment for the 3rd transformat. F2
24320 TRAFO_GEOAX_ASSIGN_TAB_3 Geo-axis assignment for 3rd transformat. F2
24400 TRAFO_TYPE_4 Definition of the 4th transform. in channel F2
24410 TRAFO_AXES_IN_4 Axis assignment for the 4th transformat. F2
24420 TRAFO_GEOAX_ASSIGN_TAB_4 Geo-axis assignment for 4th transformat. F2
24430 TRAFO_TYPE_5 Definition of the 5th transfor. in channel F2
24432 TRAFO_AXES_IN_5 Axis assignment for the 5th transformat. F2
24434 TRAFO_GEOAX_ASSIGN_TAB_5 Geo-axis assignment for 5th transformat. F2
24440 TRAFO_TYPE_6 Definition of the 6th transfor. in channel F2
24442 TRAFO_AXES_IN_6 Axis assignment for the 6th transformat. F2
24444 TRAFO_GEOAX_ASSIGN_TAB_6 Geo-axis assignment for 6th transformat. F2
24450 TRAFO_TYPE_7 Definition of the 7th transfor. in channel F2
24452 TRAFO_AXES_IN_7 Axis assignment for the 7th transformat. F2

Copyright © Siemens AG, 2005.


2/M1/7-118 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Kinematic Transformations (M1)
7.3 TRAANG (inclined axis)

Number Identifier Name Refe-


rence
24454 TRAFO_GEOAX_ASSIGN_TAB_7 Geo-axis assignment for 7th transforma- F2
tion
24460 TRAFO_TYPE_8 Definition of the 8th transformation in F2
channel
24462 TRAFO_AXES_IN_8 Axis assignment for the 8th transforma- F2
tion
24464 TRAFO_GEOAX_ASSIGN_TAB_8 Geo-axis assignment for 8th transforma- F2
tion
24700 TRAANG_ANGLE_1 Angle of inclined axis in degrees (1st
TRAANG)
24710 TRAANG_BASE_TOOL_1 Distance of tool zero point from origin of
geo-axes (1st TRAANG)
24720 TRAANG_PARALLEL_VELO_RES_1 Velocity reserve of parallel axis for com-
pensatory motion (1st TRAANG)
24721 TRAANG_PARALLEL_VELO_RES_2 Velocity reserve of parallel axis for com-
pensatory motion (2nd TRAANG)
24750 TRAANG_ANGLE_2 Angle of inclined axis in degrees
(2nd TRAANG)
24760 TRAANG_BASE_TOOL_2 Distance of tool zero point from origin of
geo-axes (2nd TRAANG)
24770 TRAANG_PARALLEL_ACCEL_RES_1 Axis acceleration reserve of parallel axis
for compensatory motion (1st TRAANG)
24771 TRAANG_PARALLEL_ACCEL_RES_2 Axis acceleration reserve of parallel axis
for compensatory motion (2nd TRAANG)

7.3.3 Alarms

Detailed explanations of the alarms, which may occur, appear in


References: /DA/, Diagnostics Guide
or in the Online help.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M1/7-119
Kinematic Transformations (M1) 06.05
7.5 Non transformation-specific machine data

7.4 TRACON (chained transformations)

Number Identifier Name Refe-


rence
Channel-specific ($MC_...)
24995 TRACON_CHAIN_1 Transformation chain of the first chained
transformation
24996 TRACON_CHAIN_2 Transformation chain of the second
chained transformation
24997 TRACON_CHAIN_3 Transformation chain of the third chained
transformation
24998 TRACON_CHAIN_4 Transformation chain of the fourth
chained transformation

7.5 Non transformation-specific machine data

Number Identifier Name Refe-


rence
Channel-specific ($MC_...)
21110 X_AXIS_IN_OLD_X_Z_PLANE Coordinate system for automatic Frame
definition
21090 MAX_LEAD_ANGLE Maximum permissible lead angle for ori-
entation programming
21092 MAX_TILT_ANGLE Maximum permissible side angle for ori-
entation programming
21100 ORIENTATION_IS_EULER Angle definition for orientation program- F2
ming

Copyright © Siemens AG, 2005.


2/M1/7-120 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Measurement (M5)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-5
2.1 Hardware requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-5
2.1.1 Suitable probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-5
2.1.2 Probe connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-6
2.1.3 Probe connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-7
2.2 Channel-specific measuring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-11
2.2.1 Measuring mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-11
2.2.2 Measurement results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-12
2.3 Zero setting, workpiece and tool measuring . . . . . . . . . . . . . . . . . . . 2/M5/2-13
2.3.1 PRESET and scratching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-13
2.3.2 Workpiece measuring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-13
2.3.3 Tool measuring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-61
2.4 Axial measurement (option) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-64
2.4.1 Supplementary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-64
2.4.2 Measuring mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-64
2.4.3 Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-66
2.4.4 Measurement results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-67
2.4.5 Continuous measurement (cyclic measurement) . . . . . . . . . . . . . . . 2/M5/2-69
2.5 Measurement accuracy and functional testing . . . . . . . . . . . . . . . . . 2/M5/2-71
2.5.1 Measuring accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-71
2.5.2 Probe functional test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/2-71
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/3-73
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/4-75
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/5-77
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/6-79
6.1 Measuring mode 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/6-79
6.2 Measuring mode 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/6-80

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/i
06.05

6.3 Continuous measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/6-80


6.3.1 Cont. measurement on completion of progr. traversing motion . . . 2/M5/6-80
6.3.2 Continuous measurements with deletion of distance-to-go . . . . . . . 2/M5/6-81
6.3.3 Continuous measurements modally over several blocks . . . . . . . . . 2/M5/6-81
6.4 Functional test and repeat accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/6-82
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/7-85
7.1 System variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/M5/7-85
J

Copyright © Siemens AG, 2005.


2/M5/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.00
06.05 Measurement (M5)

Brief Description 1
Channel-specific Channel-specific measuring is available with SW 1 and higher.
measuring A trigger event which initiates the measuring operation and defines a
corresponding measuring mode is programmed in a part program block. The
instructions apply to all axes programmed in this particular block.

Preset actual value Preset actual value memory is initiated by means of an MMC operator action.
memory and The calculated frame can be written to system frame $P_SETFRAME.
scratching The setpoint position of an axis in the WCS can be altered when the actual
value memory is preset.
The calculation is performed in the NC when a PI service is activated via

S MMC operator action or a


S parts program command from the measuring cycles.
The term scratching refers to both the workpiece measurement and the tool
measurement. The measurements can be initiated via

S MMC operator action or via


S measuring cycles.
Communication with the NC takes place via predefined system variables.

Workpiece/tool The position of the workpiece in relation to an edge, a corner or a hole can be
measurement measured.
To determine the zero position of the workpiece (workpiece zero W) or a hole,
setpoint positions can be added to the measured positions in the WCS. The
resultant offsets can be entered in a selected frame.
In the case of tool measurement
the control calculates the distance between the tool tip and the tool carrier
reference point T from the tool length specified by the user.

Axial measurement Axial measuring is available with SW 4.1 and higher.


A trigger event which initiates a measuring operation is programmed in a part
program block. A measuring mode for the measurement is defined together with
the axis in which the measurements must be taken.

Measuring cycles A description of how to handle measuring cycles can be found in

References: /FB III/, Measuring Cycles (M4)


J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/1-3
Measurement (M5) 10.00
06.05

Notes

Copyright © Siemens AG, 2005.


2/M5/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.1 Hardware requirements

Detailed Description 2
2.1 Hardware requirements

2.1.1 Suitable probes

General In order to sense the dimensions of tool and workpiece, a touch trigger probe
information that outputs a constant signal (not a pulse) on deflection is required.
The sensor must operate virtually bounce-free. Most sensors can be adjusted
mechanically to ensure that they operate in this manner.
Different types of probe supplied by a variety of manufacturers are available on
the market. Probes are therefore divided into three groups according to the
number of directions in which they can be deflected (see figure below).

Multi-directional Bi-directional Mono-directional


probe probe probe

Fig. 2-1 Probe types

Table 2-1 Assignment between probe type and application

Probe type Turning machines Milling and machin-


ing centers
Tool measurements Workpiece mea- Workpiece mea-
surements surements
Multi-directional X X X
Bi-directional _ X X
Mono-directional _ _ X

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-5
Measurement (M5) 06.05
2.1 Hardware requirements

Bi-directional probes must be used on turning machines for workpiece


measurements, whereas a mono-probe can also be used for this purpose on
milling and machining centers.

Multidirectional This probe type can be used unconditionally for measuring tool and workpiece
probe (3D) dimensions.

Bidirectional probe This probe type is applied in the same way as a mono-probe in milling and
machining centers. Bi-directional probes can be used to take workpiece
measurements on turning machines.

Monodirectional This probe type can be used subject to some restrictions to take workpiece
probe measurements on milling and machining centers.

Spindle position To be able to use this probe type on milling and machining centers, it must be
with mono probe possible to position the spindle with NC function SPOS and to transfer the
switching signal from the probe over 360° to the receiver station (on machine
stator).
The probe must be mechanically aligned in the spindle such that it can take
measurements in the following directions when the spindle is positioned at 0
degrees.

Table 2-2 Spindle positions for alignment of probe

Measurements at 0 degrees spindle po-

ÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁ
X–Y plane G17
sition
Positive X direction

ÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁ
Z–X plane G18 Positive Z direction

ÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁ
Y–Z plane G19 Positive Y direction

The measurement takes longer with a mono-probe as the spindle needs to be


positioned several times with SPOS in the measuring cycle.

2.1.2 Measuring probe connection to SINUMERIK 840D sl

Connection to The measuring probe is connected to the SINUMERIK 840D sl via I/O interface
840D sl X122 mounted on the upper front of the NCU module. Various telegram types
can be parameterized for the digital inputs and outputs of this interface, they
can even be preinstalled as OEM–specific telegrams for a certain number of
measuring probes.
Two measuring probes are assigned to terminal X122 and a configuration
macro is series–installed for both measuring probe signals of the configurable
axes. For this reason, it is not necessary any more for the user to parameterize
the measuring probe signals.

Copyright © Siemens AG, 2005.


2/M5/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.1 Hardware requirements

2.1.3 Measuring probe connection to SINUMERIK 840D/840Di/810D

Connection to The probe is connected to the SINUMERIK 840D or 810D system via the I/O
840D device interface X121 located on the front plate of the NCU module.

X101 X102

Operator panel front interface

Reserved
X111

X112
P bus/K bus interface
X122 (PLC I/O devices)

PG-MPI interface
I/O interface
(cable distributor)
+5V PR
NF PS
Various errors and status LEDs
X121

CF PF
CB PF0
CP – (H1/H2)
7 segment display (H3)
RESET NMI
NMI button (S2)
RESET button (S1)
S4 S3

NCK start-up switch


PLC start-up switch

SIMODRIVE 611D interface


X130B

X130A

I/O extension (available soon)

Device bus interface


MEMORY-CARD
X172

PCMCIA slot
(X173)

Fig. 2-2 Interfaces, control and display elements of NCU module

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-7
Measurement (M5) 06.05
2.1 Hardware requirements

Connection to The probe is connected to the SINUMERIK 840Di via the I/O interface X121 of
840Di the MCI board extension module (option).

PCU 50

Connection of the probe:


MCI board extension
MCI board
X121

Fig. 2-3 Interfaces of the SINUMERIK 840Di (PCU 50, MCI board and MCI board extension)

Copyright © Siemens AG, 2005.


2/M5/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.1 Hardware requirements

Connection to The probe is connected to the SINUMERIK 810D via the I/O device interface
810D X121 located on the front plate of the NCU module.

Connection of
probe

Fig. 2-4 Interfaces, operating and display elements on SINUMERIK 810D

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-9
Measurement (M5) 06.05
2.1 Hardware requirements

Interface The interface connection for a probe is made via the

S I/O interface
37-pin D-sub plug connector (X121), a maximum of 2 probes can be
connected;
The 24 V load power supply is also connected on this connector.

Table 2-3 Extract from PIN assignment table for X121 front connectors

PIN Designation
X121 External power supply
1 M24EXT External ground
2 M24EXT External ground
... ... ...
Connection probe 1
9 MEPUS 0 Measuring pulse signal input
10 MEPUC 0 Measuring pulse common input
... ... ...
External power supply
20 P24EXT P 24 V external
21 P24EXT P 24 V external
... ... ...
Connection probe 2
28 MEPUS 1 Measuring pulse signal input
29 MEPUC 1 Measuring pulse common input
... ... ...

The interfaces and pin assignments are illustrated and described in detail in:
References: /PHD/, Hardware Configuring Guide

PROFIBUS-DP It is possible to operate a distributed probe direct on the PROFIBUS DP drive


drives for SINUMERK 840D with an NCU 573.2/3/4. This method is more accurate
than NC interpolation of cyclic position values from a centralized probe.
The type of measuring function for PROFIBUS DP drives, e.g. with
SIMODRIVE 611 universal, is specified as follows with MD 13210:
MEAS_TYPE:
Value = 0: Centralized probe connected to the NC or
Value = 1: Distributed probe for all drives.
SIMODRIVE 611 universal drives support the measurement functionality of
distributed probes by storing the actual encoder value in the hardware
concurrent to the measurement signal edge. The more accurate measurement
method of a distributed probe is preferred for PROFIBUS DP drives.
SIMODRIVE 611 digital drives continue to be operated with a centralized probe
at connector X121 on the SINUMERK 840D/840Di/810D.
References: /BHA/, Absolute Value Encoders with PROFIBUS DP
/FBU/, SIMODRIVE 611 universal

Copyright © Siemens AG, 2005.


2/M5/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.2 Channel-specific measuring

2.2 Channel-specific measuring

2.2.1 Measuring mode

Measurement The measuring operation is activated from the parts program. A trigger event
commands and a measuring mode are programmed.
MEAS and MEAW Two different measuring modes are available:

S MEAS: Measurement with deletion of distance-to-go


Example:
N10 G01 F300 X300 Z200 MEAS=–2
Trigger event is the falling edge (–) of the second probe (2).

S MEAW: Measurement without deletion of distance-to-go

Example:
N20 G01 F300 X300 Y100 MEAW=1
Trigger event is the rising edge of the first probe (1).
The measuring job is aborted with RESET or when the program advances to a
new block.

Note
If a GEO axis is programmed in a measuring block, then the measured values
are stored for all current GEO axes.
If an axis which is taking part in a transformation is programmed in a measuring
block, then the measured values of all of the axes taking part in this
transformation are stored.

Measuring probe It is possible to scan the probe status directly in the part program and in
status synchronized actions.
$A_PROBE[n] with n=probe
$A_PROBE[n]==1: probe deflected
$A_PROBE[n]==0: probe not deflected

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-11
Measurement (M5) 06.05
2.2 Channel-specific measuring

2.2.2 Measurement results

Read The results of the measurement commands are stored in system data of the
measurement NCK and can be read via system variables in the parts program.
results in PP
S System variable $AC_MEA[No]
Scan status signal of measurement job.
[No] stands for probe (1 or 2)

The variable is deleted at the beginning of a measurement. The variable is


set as soon as the probe fulfills the activation criterion (rising or falling edge).
Execution of the measurement job can thus be checked in the part program.

S System variable $AA_MM[axis]


Access to measurement result in machine coordinate system.
Read in parts program and in synchronized actions.
[Axis] stands for the name of the measurement axis (X, Y, ...).

S System variable $AA_MW[axis]


Access to measurement result in workpiece coordinate system.
Read in parts program and in synchronized actions.
[Axis] stands for the name of the measurement axis (X, Y, ...).

References: /PGC/, Programming Guide Cycles

PLC service The functional test for the probe is conducted via an NC program.
display
The measuring signal can be checked at the end of the program in the
diagnostic menu “PLC status”.

Table 2-4 Status display for measuring signal

Status display

Probe 1 deflected DB10 DB B107.0


Probe 2 deflected DB10 DB B107.1

The current measuring status of the axis is displayed by means of the interface
signal DB(31–48) DBX62.3.
Bit 3=1: Measurement active
Bit 3=0: Measurement not active

Note
This signal can be displayed for all measuring functions and also read in
synchronized actions with $AA_MEAACT[axis].
References: /FB2/, S5, Synchronized Actions

Copyright © Siemens AG, 2005.


2/M5/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

2.3 Zero setting, workpiece and tool measuring

2.3.1 PRESET and scratching

Preset actual value Preset actual value memory is initiated by means of an HMI operator action.
memory The calculated frame can be written to system frame $P_SETFRAME. The
setpoint position of an axis in the WCS can be altered when the actual value
memory is preset.
The calculation is performed in the NC when a PI service is activated via

S HMI operator action or a


S parts program command from the measuring cycles.
A tool and a plane can be selected as a basis for the calculation. The calculated
frame is entered in the result frame.

Scratching The term scratching


refers to both the workpiece measurement and the tool measurement.
The measurements can be initiated via

S HMI operator action or via


S measuring cycles.
Communication with the NC takes place via predefined system variables.
References: /FB1/, K2 “Axes, Coordinate Systems, Frames”
/PGA/, Tables “List of System Variables”

2.3.2 Workpiece measuring

Workpiece The position of the workpiece in relation to an edge, a corner or a hole can be
measuring measured.
To determine the zero position of the workpiece (workpiece zero W) or a hole,
setpoint positions can be added to the measured positions in the WCS. The
resultant offsets can be entered in a selected frame.

Variable interface The variable interface comprises several system variables which are
categorized as either

S Input values or
S Output values

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-13
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Input values
Input values must be written by the HMI or the cycles. The output values are the
results of the calculations.

Table 2-5 All validity bits for the measurement types of variable $AC_MEAS_VALID

Bit $AC_MEAS_VALID Meaning


Input variable
0 $AA_MEAS_POINT1[axis] 1. measuring point for all channel axes
1 $AA_MEAS_POINT2[axis] 2. measuring point for all channel axes
2 $AA_MEAS_POINT3[axis] 3. measuring point for all channel axes
3 $AA_MEAS_POINT4[axis] 4. measuring point for all channel axes
4 $AA_MEAS_SETPOINT[axis] Setpoint position of edge, corner, hole
5 $AC_MEAS_WP_SETANGLE Setpoint workpiece position angle α; –90 <
Φ < 180
6 $AC_MEAS_CORNER_SETANGLE Setpoint angle of intersection Φ of corner 0 <
Φ < 180
7 $AC_MEAS_T_NUMBER Selected tool
7 $AC_MEAS_D_NUMBER Selected cutting edge
9 $AC_MEAS_DIR_APPROCH Approach direction for edge, groove, web and
tool measurement only
10 $AC_MEAS_ACT_PLANE Set working plane and infeed direction
11 $AC_MEAS_FRAME_SELECT Calculated frame to specified frame
12 $AC_MEAS_TYPE Types of workpiece measurement
13 $AC_MEAS_FINE_TRANS Enter translational offsets
14 $AA_MEAS_SETANGEL[axis] Setpoint angle of an axis
15 $AA_MEAS_SCALEUNIT Unit of measurement for input and output va-
lues
16 $AA_MEAS_TOOL_MASK Tool settings
17 $AA_MEAS_P1_COORD Coordinate system of 1st measuring point
18 $AA_MEAS_P2_COORD Coordinate system of 2nd measuring point
19 $AA_MEAS_P3_COORD Coordinate system of 3rd measuring point
20 $AA_MEAS_P4_COORD Coordinate system of 4th measuring point
21 $AA_MEAS_SET_COORD Coordinate system of setpoint
22 $AA_MEAS_CHSFR System frame mask
23 $AA_MEAS_NCBFR Mask for global basic frame
24 $AA_MEAS_CHBFR Mask for channel basic frames
25 $AA_MEAS_UIFR Settable frame from data management
26 $AA_MEAS_PFRAME Do not calculate programmable frames
27 $AC_MEAS_INPUT[n] Measuring input parameter with length n

Specifications for Each input variable always sets the corresponding bit in system variable
current $AC_MEAS_VALID when writing to the interface.
measurement All input variables of $AC_MEAS_VALID should be declared as invalid before
every measurement. If the validity bits are not reset, the input values also
remain valid for the next calculation.

Copyright © Siemens AG, 2005.


2/M5/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Table 2-6 Inputs values for the calculation and the measuring points

Type System variable Meaning

INT $AC_MEAS_VALID Validity bits for the calculation


REAL $AA_MEAS_POINT1[axis] 1. measuring point for all channel axes
REAL $AA_MEAS_POINT2[axis] 2. measuring point for all channel axes
REAL $AA_MEAS_POINT3[axis] 3. measuring point for all channel axes
REAL $AA_MEAS_POINT4[axis] 4. measuring point for all channel axes
INT $AC_MEAS_P1_COORD* Coordinate system of 1st measuring point
INT $AC_MEAS_P2_COORD* Coordinate system of 2nd measuring point
INT $AC_MEAS_P3_COORD* Coordinate system of 3rd measuring point
INT $AC_MEAS_P4_COORD* Coordinate system of 4th measuring point
INT $AC_MEAS_SET_COORD* Coordinate system of setpoint
INT $AC_MEAS_LATCH4[0..3] Write measuring points 1 to 4 for all axes with
the current WCS axis actual values
INT $AA_MEAS_P1_VALID[axis] Write individual axis actual values from P1
INT $AA_MEAS_P2_VALID[axis] Write individual axis actual values from P2
INT $AA_MEAS_P3_VALID[axis] Write individual axis actual values from P3
INT $AA_MEAS_P4_VALID[axis] Write individual axis actual values from P4

* Coordinate system in which point was measured


0: WCS is default setting
1: BCS
2: MCS

Note
Set all validity bits (input values) to invalid:
$AC_MEAS_VALID = 0
All axis actual values of the appropriate measuring point are invalidated by:
$AC_MEAS_LATCH = 0

Measuring points Variables $AC_MEAS_POINT[1..4] are used to specify the measuring points.
Each individual measuring point can be written or picked up.

Actual values Variable $AC_MEAS_LATCH can only be written. With an assignment of


$AC_MEAS_LATCH = 1
All axis actual values are picked up at the appropriate measuring point. The
index of $AC_MEAS_LATCH varies between 0 and 3 depending on measuring
points 1 to 4.
Axis actual values of the x axis in the 1st measuring point are, e.g.
$AA_MEAS_P1_VALID[x] = 0 Axis actual value is invalid
$AA_MEAS_P1_VALID[x] = 1 Axis actual value is picked up
Variables $AC_MEAS_LATCH[0..3] and $AA_MEAS_P[1..4]_VALID
can be used interactively. Allowance is made accordingly for the facing axis with
diameter programming.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-15
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Setpoints The resultant frame is calculated such that the measurement complies with the
setpoints specified by the user.

Table 2-7 Inputs values for the user setpoints

Type System variable Meaning

REAL $AA_MEAS_SETPOINT[axis] Setpoint position of edge, corner, hole


INT $AA_MEAS_SP_VALID[axis] 1: Setpoint position of axis is valid / 0: Invalid
REAL $AC_MEAS_WP_SETANGLE Setpoint angle of intersection Φ of corner 0 <
Φ < 180
REAL $AC_MEAS_CORNER_SETAN Setpoint workpiece position angle α; –90 <
GLE Φ < 180

The following measuring points are irrelevant and not evaluated:


When setpoint workpiece pos. angle α of the 2nd measuring point is entered.
When setpoint angle of intersection Φ of the 4th measuring point is entered.

Selection of tool or The tool and edge number of the active tool must correspond to the selected
cutting edge tool. When T0, D0 is selected, the active tool is calculated. If no tool is active,
the tool selected by T, D is calculated. No tool other than the selected tool may
be active.
INT $AC_MEAS_T_NUMBER Selected tool
INT $AC_MEAS_D_NUMBER Selected cutting edge

Measurements In the case of measurements with the 3D probe, the radius of the tool is already
with 3D probe compensated with reference to the measuring point, and so the radius does not
have to be included when calculating the various measurement operations. This
property can be defined by means of the following variable:
INT $AC_MEAS_TOOL_MASK Tool settings bit mask
0x0: All tool lengths are considered (default setting).
0x1: Radius of the tool is not included in the calculation.
0x2: Tool position in x direction (G19)
0x4: Tool position in y direction (G18)
0x8: Tool position in y direction (G17)
0x10: Length of the tool is not included in the calculation
Whether or not the radius of a milling tool is included in the calculation can be
determined from the tool position and approach direction. If the approach
direction is not input explicitly, it is determined by the selected plane. With
G17 the approach direction is in the z direction,
with G18 in the y direction and with G19 in the x direction.

Approach The direction of approach is required only for edge, groove, web and tool
direction measurements:
INT $AC_MEAS_DIR_APPROACH =
0: +x
1: –x
2: +y
3: –y
4: +z
5: –z

Copyright © Siemens AG, 2005.


2/M5/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Plane setting The plane must be specified for the calculation.


INT $AC_MEAS_ACT_PLANE =
0: G17 working plane x/y infeed direction z
1: G18 working plane z/x infeed direction y
2: G19 working plane y/z infeed direction x

Translational When workpieces are measured, translational offsets can be entered in the fine
offsets offset component of the selected frame. Variable $AC_MEAS_FINE_TRANS is
used for this purpose.
INT $AC_MEAS_FINE_TRANS =
0: Translational compensation is entered in the coarse offset.
1: Translational compensation is entered in the fine offset.
The following applies when $AC_MEAS_FINE_TRANS = 1:
The compensation value is entered in the fine component of the translation and
transformed according to the selected frame.
The coarse offset component remains unchanged.
When $AC_MEAS_FINE_TRANS = 0 or nothing has been written, the following
applies:
The compensation value is entered in the coarse offset and transformed
accordingly.
If MD 18600: MM_FRAME_FINE_TRANS is not preset to 1:
The compensation value is always entered in the coarse offset.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-17
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Calculated frame When a workpiece is measured, the calculated frame is entered in the specified
frame.
INT $AC_MEAS_FRAME_SELECT =
Selected frame:
0: $P_SETFRAME , active system frame
1: $P_PARTFRAME , active system frame
2: $P_EXTFRAME , active system frame
10..25: $P_CHBFRAME[0..15] , active channel-specific basic frame
50..65: $P_NCBFRAME[0..15] , active NCU-global basic frames
100..199: $P_IFRAME , calculation is performed with
settable frame, if the appropriate frame
is selected. If the selected frame is not active, the
corresponding data management frame is included
in the calculation.
500: $P_TOOLFRAME , active system frame
501: $P_WPFRAME , active system frame
502: $P_TRAFRAME , active system frame
503: $P_PFRAME , active current programmable
, frame
504: $P_CYCFRAME , active system frame
1010..1025: $P_CHBFRAME[0..15] , active channel-specific basic frames
, with active G500
1050..1065: $P_NCBFRAME[0..15] , active NCU-global basic frames
, with active G500
Selected frame:
2000: $P_SETFR , system frame in data management
2001: $P_PARTFR , system frame in data management
2002: $P_EXTFR , system frame in data management
2010..2025: $P_CHBFR[0..15] , channel-specific basic frames
, in data management
2050..2065: $P_NCBFR[0..15] , NCU-global basic frames
, in data management
2100..2199: $P_UIFR[0..99] , settable frames
, in data management
2500: $P_TOOLFR , system frame in data management
2501: $P_WPTFR , system frame in data management
2502: $P_TRAFR , system frame in data management
2504: $P_CYCFR , system frame in data management
3010..3025: $P_CHBFR[0..15] , channel-specific basic frame with
, active G500 in data management
3050..3065: $P_NCBFR[0..15] , NCU-global basic frame with active
, G500 in data management
The MEASURE( ) function calculates frame $AC_MEAS_FRAME according to
the specified frame.
In the case of values
from 0 to 1065, the calculation is performed with the aid of the active frame.
from 2000 to 3065, the calculation is performed with reference to the selected
frame in the data management. The selection of a frame in the data
management is not supported for measurement types 14 and 15. A frame does
not have to be active in order to select it in the data management. In this case,
the calculation is performed as if the frame were active in the chain.
The measuring point is transformed to the selected system and the selected
frame is determined with the aid of the overall frame including the selected
frame. Preset actual value memory is active only after compensation and
activation of the frame.

Copyright © Siemens AG, 2005.


2/M5/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

In the case of values


with active G500 (1010..1025, 1050..1065, 3010..3025, 3050..3065), the target
frame is calculated such that G500 must be active after the frame is selected so
that the setpoint position can be reached.

Conversion to If a position is to be converted to a position of another coordinate system, the


another coordinate following variables can be used to specify the composition of the desired frame
system chain:
INT $AC_MEAS_CHSFR System frame according to
bit mask MD 28082: MM_SYSTEM_FRAME_MASK
INT $AC_MEAS_NCBFR Global basic frames according to
bit mask MD 18602: MM_NUM_GLOBAL_BASE_FRAME
INT $AC_MEAS_CHBFR Channel basic frame according to
bit mask MD 28081: MM_NUM_BASE_FRAMES
INT $AC_MEAS_UIFR Settable frame according to
value 0 .. 99 in MD 18601: MM_NUM_GLOBAL_USER_FRAME
INT $AC_MEAS_PFRAME Programmable frame according to
0: Programmable frame is included
1: Programmable frame is not included
The data management frames are read and a new frame set up for the
corresponding values in the variables.

Note
If variables are not set, the active frames are retained.
Values should only be written to those variables whose data management
frames are to be included in the new frame chain. In the case of the basic
frames, only all of the frames can be exchanged, and not just a particular
frame. Active changes via $P_NCBFRMASK and $P_CHBFRMASK are
ignored.

Array variable for The following array variable of length n is used for further input parameters that
workpiece and tool are used in the various measurement types
measurement REAL $AC_MEAS_INPUT[n] n =0..9 measuring input parameter
The control action of the measuring input parameters is described with the
measuring methods.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-19
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Selection of The measurement is selected by means of the following variable:


measurement
INT $AC_MEAS_TYPE ; Select measurement type
0: Default ; Measurement:
1: Edge_x ; of an edge x
2: Edge_y ; of an edge y
3: Edge_z ; of an edge z
4: Corner_1 ; of a corner 1
5: Corner_2 ; of a corner 2
6: Corner_3 ; of a corner 3
7: Corner_4 ; of a corner 4
8: Hole ; of a hole
9: Stud ; of a shaft
10: ToolLength ; of tools (tool length)
11: ToolDiameter ; of tools (tool diameter)
12: Slot ; of a groove
13: Plate ; of a web
14: Set_Pos ; Preset act. value memory for geo and special axes
15: Set_AuxPos ; Preset actual value memory for special axes only
16: Edge_2P ; Measurement of oblique edges
17: Plane_Angles ; Angle of a plane.
18: Plane_Normal ; Angle of a plane with specified setpoint.
19: Dimension_1 ; 1-dimensional setpoint input.
20: Dimension_2 ; 2-dimensional setpoint input.
21: Dimension_3 ; 3-dimensional setpoint input.
The measurement selection is supplemented with the following variable:
INT $AC_MEAS_TYPE ; Select measurement type
; ShopTurn: Measuring:
22: ToolMagnifier ; Tool lengths with zoom-in function
23: ToolMarkedPos ; Tool lengths with stored position
24: Coordinate transfor. ; Transformation of a position to a position of another
; coordinate system
25: Rectangle ; Measuring a rectangle
26: Save : Saving data management frames
27: Restore : Restoring data management frames
The individual methods are listed under “Types of workpiece measurement” and
explained in more detail by means of an appropriate programming example.

Copyright © Siemens AG, 2005.


2/M5/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Output values

Calculation If a setpoint position has been specified, the resulting frame is entered in result
results frame $AC_MEAS_FRAME. This frame can be read and written in the parts
program. The result frame is calculated in accordance with the selected frame.
If no frame has been selected, the result frame determines the final translation
and rotation in the WCS. PI service _N_SETUDT /R7/ and
parameter type no. 7 can be used to enter this frame in the selected frame.
Once it has been entered, the result frame is deleted.

Table 2-8 Output values of calculation results

Type System variable Meaning

FRAME $AC_MEAS_FRAME Result frame


REAL $AC_MEAS_WP_ANGLE Calculated workpiece position angle α
REAL $AC_MEAS_CORNER_ANGLE Calculated angle of intersection Φ
REAL $AC_MEAS_DIAMETER Calculated diameter
REAL $AC_MEAS_TOOL_LENGTH Calculated tool length
REAL $AC_MEAS_RESULTS[10] Calculation results (type-dependent)

Calculation method

Activation The calculation is activated by an HMI operator action with PI service


_N_SETUDT /R7/. This PI service receives a
Parameter type no. 1 – active tool offset
no. 2 – active basic frames
no. 3 – active settable frame
no. 4 – global basic frames
no. 5 – global settable frames
no. 6 – workpiece zero or tool length calculation
no. 7 – activate workpiece zero (write scratching).
The PI service _N_SETUDT /R7/ has been expanded as follows:
no. 8 – activate external zero offset
no. 9 – activate active tool carrier, TCOABS and PAROT
The modification becomes apparent immediately in the reset state; in the stop
state, the frame is not applied until the next start.

Note
The PI service can be executed only in the reset and stop states. In the case of
workpiece measurement, the calculated frame is activated immediately with
type no. 7. In the case of tool measurement, the PI must not be dispatched with
type no. 7, since a zero point does not have to be activated.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-21
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Activation in the The new WCS positions are refreshed in the Stop state. When execution of the
Stop state part program is resumed, the distance to go in the interrupted block is deleted
and the axis approaches the end point of the next block from its current
position.
Therefore, it is possible to operate a spindle in MDA mode or execute preset
actual value memory and scratching or another measurement, e.g. with M0, in
the part program in the Stop state.

Measuring cycles The calculation in the measuring cycles is performed according to the
predefined function:
INT MEASURE( )
MEASURE() produces a result frame which can be read via
$AC_MEAS_FRAME.
The result is the translation and rotation from the

S setpoints, converted to the selected frame.


The result frame is calculated as follows:

S The concatenated total frame equals the concatenation of the total frame
(prior to measurement) with the calculated translation and rotation.

Note
If no frame is selected, the calculated frame is not transformed, i.e. the
translation and rotation is determined on the basis of the specified setpoints
and the calculated position of the edge, corner, groove, etc. Where the function
is used more than once, it is always added to the result frame.
It must be noted that the result frame may need to be deleted beforehand.

The measuring operation can be initiated via an operator input in the stop and
reset states. The operation can overlap with the measuring cycles in the stop
state.

Semaphore The following variable serves to protect against mutual overwriting


variable
INT $AC_MEAS_SEMA
The semaphore variable $AC_MEAS_SEMA is

S set to 1 at the beginning of the cycle and


S reset to 0 again at the end of the cycle.
The HMI does not use the interface if the variable is set to 1.

Copyright © Siemens AG, 2005.


2/M5/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Error messages If the wrong procedure is adopted, up to 18 different return values can be output
via the following predefined functions:

Table 2-9 Predefined error messages

No. Return values Meaning

0 MEAS_OK Correct calculation


1 MEAS_NO_TYPE Type not specified
2 MEAS_TOOL_ERROR Error determining the tool
3 MEAS_NO_POINT1 Measuring point 1 does not exist
4 MEAS_NO_POINT2 Measuring point 2 does not exist
5 MEAS_NO_POINT3 Measuring point 3 does not exist
6 MEAS_NO_POINT4 Measuring point 4 does not exist
7 MEAS_NO_SPECPOINT No reference point available
8 MEAS_NO_DIR No approach direction
9 MEAS_EQUAL_POINTS Measuring points are identical
10 MEAS_WRONG_ALPHA Alpha α is wrong
11 MEAS_WRONG_PHI Phi Φ is wrong
12 MEAS_WRONG_DIR Wrong approach direction
13 MEAS_NO_CROSSING Lines do not intersect
14 MEAS_NO_PLANE Planes do not exist
15 MEAS_WRONG_FRAME No frame or incorrect frame selected
16 MEAS_NO_MEMORY Insufficient memory available
17 MEAS_INTERNAL_ERROR Internal fault

Logon error If the user does not log on, group error number 0xD003 is always generated. If
DIAGN:errCodeSeNrGent is used to log on, then several P_SETUDT error
codes are available.

Tool measurement In the case of error code MEAS_TOOL_ERROR or


error EX_ERR_PI_REJ_MEASTOOLERROR, the system stores a more detailed
specification of the error with the following values in output variable
$AC_MEAS_TOOL_LENGTH:

Table 2-10 Predefined error messages for MEAS_TOOL_ERROR

No. Return values Meaning

1 TOOL_NO_BLOCK No block available for the tool calculation


2 TOOL_WRONG_T_NUMBER Wrong T number
3 TOOL_WRONG_D_NUMBER Wrong D number
4 TOOL_EVAL_WRONG_TYPE The tool does not exist
5 TOOL_NO_TOOLCORR_BODY Memory problem
6 TOOL_DATA_READ_ERROR Error reading the tool data
7 TOOL_NO_TOOL_WITH_TRAFO No tool is selected with an active transfor-
mation

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-23
Measurement (M5) 03.02
10.04
06.05
2.3 Zero setting, workpiece and tool measuring

Units of measurement and measurement variables for


the calculation
INCH or METRIC The following input and output variables are evaluated with inch or metric units
unit of of measurement:
measurement $AA_MEAS_POINT1[axis] Input variable for 1st measuring point
$AA_MEAS_POINT2[axis] Input variable for 2nd measuring point
$AA_MEAS_POINT3[axis] Input variable for 3rd measuring point
$AA_MEAS_POINT4[axis] Input variable for 4th measuring point
$AA_MEAS_SETPOINT[axis] Input variable for setpoint position
$AC_MEAS_DIAMETER Output variable for calc. diameter
$AC_MEAS_TOOL_LENGTH Output variable for calculated tool length
$AC_MEAS_RESULTS[n] Output variable for calculation results
The system of units in which the input and output values can be read or written
can be set via input variable
INT $AC_MEAS_SCALEUNIT Unit of meas. for input and output
variables
0: Unit of measurement with reference to active G code G70/G700 is INCH
active G code G71/G701 is METRIC:
1: Unit of measurement is determined by configuration, the system of
(default setting) measurement can be set via OPI
If the variable is not written, the value 0 is always the default setting. Examples
for basic system metric:
G70 ; Basic system metric
$AC_MEAS_POINT1[x] = $AA_IW[x] ; $AA_IW[x] returns
$AC_MEAS_POINT1[x] = 10 ; 10 mm
G71 ; Basic system metric
$AC_MEAS_POINT1[x] = $AA_IW[x] ; $AA_IW[x] returns
$AC_MEAS_POINT1[x] = 10 ; 10 mm
G700 ; Inch value
$AC_MEAS_POINT1[x] = $AA_IW[x] ; $AA_IW[x] returns
$AC_MEAS_POINT1[x] = 10 ; 10 Inch
G710 ; Metric value
$AC_MEAS_POINT1[x] = $AA_IW[x] ; $AA_IW[x] returns
$AC_MEAS_POINT1[x] = 10 ; 10 mm

DIAMON or Diameter programming is set via machine data:


DIAMOF
MD 20100: DIAMETER_AX_DEF = “X” ; Transverse axis is x
MD 20150: GCODE_RESET_VALUES[28] = 2 ; DIAMON
MD 20360:TOOL_PARAMETER_DEF_MASK = ; TLC, frames and
’B1001010’ ; actual values in diameter
Axis positions in the MCS are not included as diameter value.

Diameter programming Meaning

DIAMON or DIMOF active The calculated tool lengths and frame components
do not depend on the active G code.
DIAMON active The measured positions and setpoint positions are
read and written depending on DIAMON.
DIAMON active The translations in the frames are calculated as a
diameter in the transverse axis.
Value precision: Values are Position values in mm, inches or degrees are calcu-
rounded to six decimal places lated and displayed accurate to six decimal places.

Copyright © Siemens AG, 2005.


2/M5/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Types of workpiece measurement

Measurement of a x edge ($AC MEAS TYPE = 1)


The edge of a clamped workpiece is measured by approaching this edge with a
known tool.

y y

+x –x

x0 x x0 x

Fig. 2-5 x edge

Table 2-11 The values of the following variables are evaluated for measurement type 1:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1 for all channel axes
$AA_MEAS_SETPOINT[axis] Setpoint position of x edge *
$AC_MEAS_DIR_APPROACH 0: +x, 1: –x
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_TYPE 1

* optional

Table 2-12 The following output variables are written for measurement type 1:

Output variable Meaning

$AC_MEAS_FRAME Result frame with translation


$AC_MEAS_RESULTS[0] Position of the measured edge

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-25
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

x edge Programming example


measurement
DEF INT RETVAL ;
DEF FRAME TMP ;

$TC_DP1[1,1]=120 ; Type
$TC_DP2[1,1]=20 ;0
$TC_DP3[1,1]= 10 ; (z) length offset vector
$TC_DP4[1,1]= 0 ; (y)
$TC_DP5[1,1]= 0 ; (x)
$TC_DP6[1,1]= 2 ; Radius

T1 D1 ;
g0 x0 y0 z0 f10000 ;
G54 ;

$AC_MEAS_VALID = 0 ; Invalidate all input values

g1 x–1 y–3 ; Approach 1st measuring point


;
$AA_MEAS_POINT1[x] = $AA_IW[x] ;
$AA_MEAS_POINT1[y] = $AA_IW[y] ;
$AA_MEAS_POINT1[z] = $AA_IW[z] ;

$AC_MEAS_DIR_APPROACH = 0 ; Set approach direction +x

; Set setpoint position of edge


$AA_MEAS_SETPOINT[x] = 0 ;
$AA_MEAS_SETPOINT[y] = 0 ;
$AA_MEAS_SETPOINT[z] = 0 ;

$AC_MEAS_ACT_PLANE = 0 ; G17 is the measurement plane

$AC_MEAS_FRAME_SELECT = 101 ; Select frame (G54)

; Select tool
$AC_MEAS_T_NUMBER = 1 ;
$AC_MEAS_D_NUMBER = 1 ;

$AC_MEAS_TYPE = 1 ; Set measurement type x edge

; Perform calculation
RETVAL = MEASURE() ;

if RETVAL <> 0 ;
setal(61000 + RETVAL) ;
endif

$P_IFRAME = $AC_MEAS_FRAME ;

$P_UIFR[1] = $P_IFRAME ; Write system frame in data management

g1 x0 y0 ; Approach the edge

m30

Copyright © Siemens AG, 2005.


2/M5/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
10.04
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Measurement of a y edge ($AC MEAS TYPE = 2)

–y
y y

y0

y0

+y x x

Fig. 2-6 y edge

Table 2-13 The values of the following variables are evaluated for measurement
type 2:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1 for all channel axes
$AA_MEAS_SETPOINT[axis] Setpoint position of y edge *
$AC_MEAS_DIR_APPROACH 2: +y, 3: –y
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_TYPE 2

* optional

Table 2-14 The following output variables are written for measurement type 2:

Output variable Meaning

$AC_MEAS_FRAME Result frame with translation


$AC_MEAS_RESULTS[0] Position of the measured edge

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-27
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Measurement of a z edge ($AC MEAS TYPE = 3)

z ÇÇ
ÇÇ
z0
ÇÇ –z

Fig. 2-7 z edge

Table 2-15 The values of the following variables are evaluated for measurement
type 3:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1 for all channel axes
$AA_MEAS_SETPOINT[axis] Setpoint position of z edge *
$AC_MEAS_DIR_APPROACH 4: +y, 5: –y
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_TYPE 3

* optional

Table 2-16 The following output variables are written for measurement type 3:

Output variable Meaning

$AC_MEAS_FRAME Result frame with translation


$AC_MEAS_RESULTS[0] Position of the measured edge

Copyright © Siemens AG, 2005.


2/M5/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Measurement of a Corner C1 – C4 ($AC MEAS TYPE = 4, 5, 6, 7)


A corner is uniquely defined through the approach of four measuring points P1
to P4. When the angle of intersection Φ 3 measuring points can be sufficient.
If the angle of intersection Φ and the workpiece position angle α are known, two
measuring points, P1 and P3, are sufficient.

P3
y y
P4

f
P3 P2 P2
C2

P4 P1 P1
f
a a
C1
x x

Fig. 2-8 Corner C1 Corner C2

C3 P2
y P2 P3 y
f
P1
P1 P4
C4 a
a P3
f

P4

x x

Fig. 2-9 Corner C3 Corner C4

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-29
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Table 2-17 The values of the following variables are evaluated for measurement types
4 to 7:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1
$AA_MEAS_POINT2[axis] Measuring point 2 irrelevant with
$AC_MEAS_WP_SETANGLE
$AA_MEAS_POINT3[axis] Measuring point 3
$AA_MEAS_POINT4[axis] Measuring point 4 irrelevant with
$AC_MEAS_CORNER_SETANGLE
$AA_MEAS_WP_SETANGLE Setpoint workpiece position angle *
$AA_MEAS_CORNER_SETANGLE Setpoint angle of intersection *
$AA_MEAS_SETPOINT[axis] Setpoint position of corner *
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise spe-
cified *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise
specified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise sp. (T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_INPUT[0] Without specification of outer corner*
=0: Measurement for outer corner
=1: Measurement for inner corner
$AC_MEAS_TYPE 4, 5, 6, 7

* optional

Table 2-18 The following variables are written for measurement types 4 to 7:
Output variable Meaning

$AC_MEAS_FRAME Result frame with translation and rotation


$AC_MEAS_WP_ANGLE Calculated workpiece position angle
$AC_MEAS_CORNER_ANGLE Calculated angle of intersection
$AC_MEAS_RESULTS[0] Abscissa of calculated vertex
$AC_MEAS_RESULTS[1] Ordinate of calculated vertex
$AC_MEAS_RESULTS[2] Applicate of calculated vertex

Corner Programming example


measurement C1
Corner with three measuring points P1, P3 and P4 and known angle of
intersection Φ degrees and unknown workpiece position angle α.
DEF INT RETVAL ;
DEF FRAME TMP ;

$TC_DP1[1,1]=120 ; Type
$TC_DP2[1,1]=20 ;0
$TC_DP3[1,1]= 10 ; (z) length offset vector
$TC_DP4[1,1]= 0 ; (y)
$TC_DP5[1,1]= 0 ; (x)
$TC_DP6[1,1]= 2 ; Radius

Copyright © Siemens AG, 2005.


2/M5/2-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

T1 D1 ;
g0 x0 y0 z0 f10000 ;
G54 ;

$P_CHBFRAME[0] = crot(z,45) ;
$P_IFRAME[x,tr] = –sin(45) ;
$P_IFRAME[y,tr] = –sin(45) ;
$P_PFRAME[z,tr] = –45 ;

$AC_MEAS_VALID = 0 ; Invalidate all input values

g1 x–1 y–3 ; Approach 1st measuring point


$AC_MEAS_LATCH[0] = 1 ; Pick up measuring point P1

g1 x–4 y4 ; Approach 3rd measuring point


$AC_MEAS_LATCH[2] = 1 ; Pick up measuring point P3

g1 x–4 y1 ; Approach 4th measuring point


$AC_MEAS_LATCH[3] = 1 ; Pick up measuring point P4

; Set position setpoint to (0, 0, 0)


$AA_MEAS_SETPOINT[x] = 0 ;
$AA_MEAS_SETPOINT[y] = 0 ;
$AA_MEAS_SETPOINT[z] = 0 ;

$AC_MEAS_CORNER_SETANGLE = 90; Input setpoint angle of intersection Φ


$AC_MEAS_ACT_PLANE = 0 ; Plane for measurement is G17
$AC_MEAS_FRAME_SELECT = 0 ; Select frame – SETFRAME

; Select tool
$AC_MEAS_T_NUMBER = 1 ;
$AC_MEAS_D_NUMBER = 1 ;

$AC_MEAS_TYPE = 4 ; Set measurement type to corner 1

; Perform calculation
RETVAL = MEASURE() ;

if RETVAL <> 0
setal(61000 + RETVAL)
endif

if $AC_MEAS_CORNER_ANGLE <> 90 ; Scan known cutting angle Φ setpoint


setal(61000 + $AC_MEAS_CORNER_ANGLE)
endif

$P_SETFRAME = $AC_MEAS_FRAME

$P_SETFR = $P_SETFRAME ; Write system frame in data management

g1 x0 y0 ; Approach the corner

g1 x10 ; Machine rectangle


y10 ;
x0 ;
y0 ;

m30

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-31
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Measurement of a hole ($AC MEAS TYPE = 8)


Three measuring points are needed to determine the center point and diameter.
The three points must all be different. With specification of four points, the circle
is adjusted in accordance with the least square method. The circle is
determined so that the sum of the distance squares of the points to the circle is
minimal. The quality of the adjustment can be read.

y G17 x G18 z G19


D D D

+ + +

x z y

Fig. 2-10 Hole

Table 2-19 The values of the following variables are evaluated for measurement
type 8:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1
$AA_MEAS_POINT2[axis] Measuring point 2
$AA_MEAS_POINT3[axis] Measuring point 3
$AA_MEAS_POINT4[axis] When specified, the center is determined from four
points *
$AA_MEAS_SETPOINT[axis] Setpoint position of hole center *
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_TYPE 8

* optional

Copyright © Siemens AG, 2005.


2/M5/2-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Table 2-20 The following output variables are written for measurement type 8:

Output variable Meaning

$AC_MEAS_FRAME Result frame with translation


$AC_MEAS_DIAMETER Diameter of hole
$AC_MEAS_RESULTS[0] Abscissa of the calculated center point
$AC_MEAS_RESULTS[1] Ordinate of the calculated center point
$AC_MEAS_RESULTS[2] Applicate of the calculated center point
$AC_MEAS_RESULTS[3] Quality of the circle adjustment: Sum of the
distance squares

Measure hole Programming example


DEF INT RETVAL ;
DEF FRAME TMP ;

$TC_DP1[1,1]=120 ; Type
$TC_DP2[1,1]=20 ;0
$TC_DP3[1,1]= 10 ; (z) length compensation vector
$TC_DP4[1,1]= 0 ; (y)
$TC_DP5[1,1]= 0 ; (x)
$TC_DP6[1,1]= 2 ; Radius

T1 D1 ;
g0 x0 y0 z0 f10000 ;
G54 ;

$AC_MEAS_VALID = 0 ; Invalidate all input values

g1 x–3 y0 ; Approach 1st measuring point


;
$AA_MEAS_POINT1[x] = $AA_IW[x] ;
$AA_MEAS_POINT1[y] = $AA_IW[y] ;
$AA_MEAS_POINT1[z] = $AA_IW[z] ;

g1 x0 y3 ; Approach 2nd measuring point


;
$AA_MEAS_POINT2[x] = $AA_IW[x] ;
$AA_MEAS_POINT2[y] = $AA_IW[y] ;
$AA_MEAS_POINT2[z] = $AA_IW[z] ;

g1 x3 y0 ; Approach 3rd measuring point


;
$AA_MEAS_POINT3[x] = $AA_IW[x] ;
$AA_MEAS_POINT3[y] = $AA_IW[y] ;
$AA_MEAS_POINT3[z] = $AA_IW[z] ;

; Set setpoint position of center


$AA_MEAS_SETPOINT[x] = 0 ;
$AA_MEAS_SETPOINT[y] = 0 ;
$AA_MEAS_SETPOINT[z] = 0 ;

$AC_MEAS_ACT_PLANE = 0 ; G17 is the measurement plane


$AC_MEAS_FRAME_SELECT = 0 ; Select frame – SETFRAME

; Select tool
$AC_MEAS_T_NUMBER = 1 ;
$AC_MEAS_D_NUMBER = 1 ;

$AC_MEAS_TYPE = 8 ; Set measurement type to hole

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-33
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

; Perform calculation
RETVAL = MEASURE() ;

if RETVAL <> 0
setal(61000 + RETVAL)
endif

if $AC_MEAS_DIAMETER <> 10 ; Scan known diameter


setal(61000 + $AC_MEAS_WP_ANGLE)
endif

$P_SETFRAME = $AC_MEAS_FRAME

$P_SETFR = $P_SETFRAME ; Write system frame in data management

g1 x–3 y0 ; Approach P1

g2 I = $AC_MEAS_DIAMETER / 2 ; Machine hole in relation to arc center

m30

Measurement of a shaft ($AC MEAS TYPE = 9)


Three measuring points are needed to determine the center point and diameter.
The three points must all be different. With specification of four points, the circle
is adjusted in accordance with the least square method. The circle is
determined so that the sum of the distance squares of the points to the circle is
minimal. The quality of the adjustment can be read.

y G17 x G18 z G19


D
D D

+ + +

x z y

Fig. 2-11 Shaft

Copyright © Siemens AG, 2005.


2/M5/2-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Table 2-21 The values of the following variables are evaluated for measurement
type 9:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1
$AA_MEAS_POINT2[axis] Measuring point 2
$AA_MEAS_POINT3[axis] Measuring point 3
$AA_MEAS_POINT4[axis] When specified, the center is determined from four
points *
$AA_MEAS_SETPOINT[axis] Setpoint position of shaft center point *
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_TYPE 9

* optional

Table 2-22 The following output variables are written for measurement type 9:

Output variable Meaning

$AC_MEAS_FRAME Result frame with translation


$AC_MEAS_DIAMETER Diameter of hole
$AC_MEAS_RESULTS[0] Abscissa of the calculated center point
$AC_MEAS_RESULTS[1] Ordinate of the calculated center point
$AC_MEAS_RESULTS[2] Applicate of the calculated center point
$AC_MEAS_RESULTS[3] Quality of the circle adjustment: Sum of the
distance squares

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-35
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Measurement of a groove ($AC MEAS TYPE = 12)


A groove is measured by approaching the two outside corners or inner edges.
The groove center can be set to a setpoint position. The component of the
approach direction determines the groove position.

y y
+y

–x +x y0
–y

x0 x x

Fig. 2-12 Groove

Table 2-23 The values of the following variables are evaluated for measurement
type 12:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1
$AA_MEAS_POINT2[axis] Measuring point 2
$AA_MEAS_SETPOINT[axis] Setpoint position of groove center *
$AC_MEAS_DIR_APPROACH 0: +x, 1: –x, 2: +y, 3: –y, 4: +z, 5: –z
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_INPUT[0] Approach direction for 2nd measuring point for a
recess measurement. Must have the same coordi-
nate as the approach direction of 1st point. *
0: +x, 1: –x, 2: +y, 3: –y, 4: +z, 5: –z
$AC_MEAS_TYPE 12

* optional

Table 2-24 The following output variables are written for measurement type 12:

Output variable Meaning

$AC_MEAS_FRAME Result frame with translation


$AC_MEAS_RESULTS[0] Position of calculated groove center (x0, y0 or z0)
$AC_MEAS_RESULTS[1] Groove width in approach direction

Copyright © Siemens AG, 2005.


2/M5/2-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Groove Programming example


measurement
Groove measurement with approach direction in x
DEF INT RETVAL ;
DEF FRAME TMP ;

$TC_DP1[1,1]=120 ; Type
$TC_DP2[1,1]=20 ;0
$TC_DP3[1,1]= 10 ; (z) length offset vector
$TC_DP4[1,1]= 0 ; (y)
$TC_DP5[1,1]= 0 ; (x)
$TC_DP6[1,1]= 2 ; Radius

T1 D1 ;
g0 x0 y0 z0 f10000 ;
G54 ;

$AC_MEAS_VALID = 0 ; Invalidate all input values

g1 x–2 ; Approach 1st measuring point


;
$AA_MEAS_POINT1[x] = $AA_IW[x] ;
$AA_MEAS_POINT1[y] = $AA_IW[y] ;
$AA_MEAS_POINT1[z] = $AA_IW[z] ;

g1 x4 ; Approach 2nd measuring point


;
$AA_MEAS_POINT2[x] = $AA_IW[x] ;
$AA_MEAS_POINT2[y] = $AA_IW[y] ;
$AA_MEAS_POINT2[z] = $AA_IW[z] ;

; Set setpoint position of groove center


$AA_MEAS_SETPOINT[x] = 0 ;
$AA_MEAS_SETPOINT[y] = 0 ;
$AA_MEAS_SETPOINT[z] = 0 ;

$AC_MEAS_DIR_APPROACH = 0 ; Set approach direction +x


$AC_MEAS_ACT_PLANE = 0 ; Plane for measurement is G17
$AC_MEAS_FRAME_SELECT = 0 ; Select frame – SETFRAME

; Select tool
$AC_MEAS_T_NUMBER = 1 ;
$AC_MEAS_D_NUMBER = 1 ;

$AC_MEAS_TYPE = 12 ; Set measurement type to groove

; Perform calculation
RETVAL = MEASURE() ;

if RETVAL <> 0 ;
setal(61000 + RETVAL) ;
endif

$P_SETFRAME = $AC_MEAS_FRAME ;

$P_SETFR = $P_SETFRAME ; Write system frame in data management

g1 x0 y0 ; Approach the groove center

m30

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-37
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Measurement of a web ($AC MEAS TYPE = 13)


A web is measured by approaching the two outside corners or inner edges. The
web center can be set to a setpoint position. The component of the approach
direction determines the web position.

–y
y y

+x –x y0

x0 x +y x

Fig. 2-13 Web

Table 2-25 The values of the following variables are evaluated for measurement
type 13:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1
$AA_MEAS_POINT2[axis] Measuring point 2
$AA_MEAS_SETPOINT[axis] Setpoint position of web center *
$AC_MEAS_DIR_APPROACH 0: +x, 1: –x, 2: +y, 3: –y, 4: +z, 5: –z
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_INPUT[0] Approach direction for 2nd measuring point for a
recess measurement. Must have the same coordi-
nate as the approach direction of 1st point. *
0: +x, 1: –x, 2: +y, 3: –y, 4: +z, 5: –z
$AC_MEAS_TYPE 13

* optional

Table 2-26 The following output variables are written for measurement type 13:

Output variable Meaning

$AC_MEAS_FRAME Result frame with translation


$AC_MEAS_RESULTS[0] Position of calculated web center (x0, y0 or z0)
$AC_MEAS_RESULTS[1] Web width in approach direction

Copyright © Siemens AG, 2005.


2/M5/2-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Preset actual value Geo and special axes ($AC MEAS TYPE = 14)
memory for
This measurement type is used on the HMI operator interface

Special axes
z
A1 Set A2 Set A3 Set
y P1 Act A1 Act
zi *
A3 Act
yi
A2 Act
P1 Set *
(xs, ys, zs) xi x

Fig. 2-14 Preset actual value memory for special axes only

Table 2-27 The values of the following variables are evaluated for measurement
type 14:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Actual values of axes
$AA_MEAS_SETPOINT[axis] Setpoint position of individual axes *
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_TYPE 14

* optional

Table 2-28 The following output variables are written for measurement type 14:

Output variable Meaning

$AC_MEAS_FRAME Result frame with translation

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-39
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Preset actual value for special axes only ($AC MEAS TYPE = 15)
This measurement type is used on the HMI operator interface

Special axes
A1 Set A2 Set A3 Set
A1 Act
A3 Act

A2 Act

Fig. 2-15 Preset actual value memory

Table 2-29 The values of the following variables are evaluated for measurement
type 15:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Actual values of axes
$AA_MEAS_SETPOINT[axis] Setpoint position of individual axes *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_TYPE 15

* optional

Table 2-30 The following output variables are written for measurement type 15:

Output variable Meaning

$AC_MEAS_FRAME Result frame with translation

Copyright © Siemens AG, 2005.


2/M5/2-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Measurement of an oblique edge ($AC MEAS TYPE = 16)


This measurement determines the position angle of the workpiece and enters it
in the frame A setpoint angle in the +/– 90 degrees range can be input. This can
be interpreted as the resultant rotation of the workpiece after the result frame for
the active WCS has been activated.

G17 G18 G19


y x Reference axis z
P2

P2 a P1 P2

P1 P1
a a

x z y

Fig. 2-16 Oblique edge

Table 2-31 The values of the following variables are evaluated for measurement
type 16:
Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1
$AA_MEAS_POINT2[axis] Measuring point 2
$AA_MEAS_SETANGLE Setpoint angle *
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_INPUT[0] Unless otherwise specified, the reference coordi-
nate for the alignment of the workpiece is always
the abscissa of the selected plane. *
=0: Reference coordinate is the abscissa
=1: Reference coordinate is the ordinate
$AC_MEAS_INPUT[1] Unless otherwise specified, the workpiece position
angle is entered in the frame as a rotation. Other-
wise, a channel axis index can be specified for a
rotary axis whose translation is set to the current
rotary axis position plus the calculated rotation. The
workpiece is then aligned at rotary axis position = 0.
The current rotary axis value must be set in
$AA_MEAS_POINT[axis]. *
$AC_MEAS_TYPE 16

* optional

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-41
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Table 2-32 The following output variables are written for measurement type 16:

Output variable Meaning

$AC_MEAS_FRAME Result frame with rotation


$AC_MEAS_WP_ANGLE Calculated workpiece position angle

Measurement of an angle in a plane ($AC MEAS TYPE = 17)


The oblique plane is determined via three measuring points, P1, P2 and P3.

$AC_MEAS_RESULTS[0]

α0

P2

P3
y P1

z’ y’
α1
$AC_MEAS_RESULTS[1]

x’

Fig. 2-17 Oblique plane in G17

$AC_MEAS_TYPE = 17 defines two resulting angles α0 and α1 for the skew of


the plane; these are entered in $AC_MEAS_RESULTS[0..1]. In

S $AC_MEAS_RESULTS[0] contains the rotation about the abscissa and


S $AC_MEAS_RESULTS[1] the rotation about the ordinate.
These angles are calculated by means of the three measuring points P1, P2
and P3. With this measurement type, the angle in

S $AC_MEAS_RESULTS[2] for the applicate is always set to a default of 0.


A setpoint rotation that is entered in the result frame can be input for the
abscissa and/or the ordinate. If only one angle is specified with a setpoint, the
second angle is calculated such that the three measuring points are on an
oblique plane with the setpoint angle. Only rotations are entered in the result
frame, the WCS reference point is retained. The WCS is rotated such that z’ is
perpendicular to the oblique plane.

Copyright © Siemens AG, 2005.


2/M5/2-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Table 2-33 The following plane settings are defined for measurement type 17:

Axis identifier G17 G18 G19


Abscissa x axis z axis y axis
Ordinate y axis x axis z axis
Applicate (infeed axis) z axis y axis x axis

Table 2-34 The values of the following variables are evaluated for measurement
type 17:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1
$AA_MEAS_POINT2[axis] Measuring point 2
$AA_MEAS_POINT3[axis] Measuring point 3
$AA_MEAS_SETPOINT[axis] Setpoint rotations about abscissa and ordinate op-
tional
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_TYPE 17

* optional

Table 2-35 The following output variables are written for measurement type 17:

Output variable Meaning

$AC_MEAS_FRAME Result frame


$AC_MEAS_RESULTS[0] Angles about abscissa from which three measuring points
are calculated
$AC_MEAS_RESULTS[1] Angles about ordinate from which three measuring points
are calculated
$AC_MEAS_RESULTS[2] Angles about applicate from which three measuring points
are calculated
$AC_MEAS_RESULTS[3] Angle about abscissa which is entered in the result frame
$AC_MEAS_RESULTS[4] Angle about ordinate which is entered in the result frame
$AC_MEAS_RESULTS[5] Angle about applicate which is entered in the result frame

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-43
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Angle Programming example


measurement
DEF INT RETVAL ;
DEF AXIS _XX, _YY, _ZZ ;

T1 D1 ; Activate probe
G54 ; Activate all frames and G54

$AC_MEAS_VALID = 0 ; Invalidate all input values

$AC_MEAS_TYPE = 17 ; Set measurement type for oblique plane


$AC_MEAS_ACT_PLANE = 0 ; Plane for measurement is G17

_XX=$P_AXN1 ; Define axes according to plane


_YY=$P_AXN2 ;
_ZZ=$P_AXN3 ;

G17 G1 _XX=10 _YY=10 F1000 ; Approach 1st measuring point


MEAS = 1 _ZZ=... ;
;
$AA_MEAS_POINT1[_xx] = $AA_MW[_xx] ; Assign measured value abscissa
$AA_MEAS_POINT1[_yy] = $AA_MW[_yy] ; Assign measured value ordinate
$AA_MEAS_POINT1[_zz] = $AA_MW[_zz] ; Assign measured value applicate

G1 _XX=20 _YY=10 F1000 ; Approach 2nd measuring point


MEAS = 1 _ZZ=... ;
;
$AA_MEAS_POINT2[_xx] = $AA_MW[_xx] ; Assign measured value abscissa
$AA_MEAS_POINT2[_yy] = $AA_MW[_yy] ; Assign measured value ordinate
$AA_MEAS_POINT2[_zz] = $AA_MW[_zz] ; Assign measured value applicate

G1 _XX=20 _YY=20 F1000 ; Approach 3rd measuring point


MEAS = 1 _ZZ=... ;
;
$AA_MEAS_POINT3[_xx] = $AA_MW[_xx] ; Assign measured value abscissa
$AA_MEAS_POINT3[_yy] = $AA_MW[_yy] ; Assign measured value ordinate
$AA_MEAS_POINT3[_zz] = $AA_MW[_zz] ; Assign measured value applicate

; Input setpoints for angles


$AA_MEAS_SETPOINT[_xx] = 12 ; Rotation about abscissa
$AA_MEAS_SETPOINT[_yy] = 4 ; Rotation about ordinate

$AC_MEAS_FRAME_SELECT = 102 ; Select target frame (G55)

; Select tool
$AC_MEAS_T_NUMBER = 1 ;
$AC_MEAS_D_NUMBER = 1 ;

RETVAL = MEASURE() ; Start measurement calculation

if RETVAL <> 0
setal(61000 + RETVAL)
endif

if $AC_MEAS_RESULTS[0] <> 12
setal(61000 + $AC_MEAS_RESULTS[0])
endif

if $AC_MEAS_RESULTS[1] <> 4
setal(61000 + $AC_MEAS_RESULTS[1])
endif

$P_UIFR[2] = $AC_MEAS_FRAME ; Write measur. frame to data management (G55)

G55 G0 AX[_xx]=10 AX[_yy]=10 ; Activate frame and traverse


m30

Copyright © Siemens AG, 2005.


2/M5/2-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

WCS reference on Redefine WCS ($AC MEAS TYPE = 18)


oblique plane
The zero of the new WCS is defined by measuring point P1 at surface normal
on the oblique plane.

$AC_MEAS_RESULTS[0]

z z’

$AC_MEAS_RESULTS[2]
α0

y’
P2

x’ P3
y
WCS’ P1

α1
$AC_MEAS_RESULTS[1]

WCS x

Fig. 2-18 Oblique plane in G17

Measurement of The plane is measured in one measuring cycle. The cycle records the three
plane measuring points and passes the necessary values to the variable interface.
The MEASURE() function calculates the solid angles and translational offset of
the new WCS on the basis of the input values.

Transformation of The results of the calculation, i.e. the solid angles and translation, are entered in
measuring frame measuring frame $AC_MEAS_FRAME. The measuring frame is transformed
according to the selected frame in the frame chain. The solid angles are also
stored in the output values $AC_MEAS_RESULTS[0..2]. In

S The angle about the abscissa of the old WCS is stored in


$AC_MEAS_RESULTS[0],

S The angle about the ordinate is stored in $AC_MEAS_RESULTS[1] and


S The angle about the applicate is stored in $AC_MEAS_RESULTS[2].

Define the new After performing the calculation, the measuring cycle can write and activate the
WCS’ zero selected frame in the frame chain with the measuring frame. After activation, the
new WCS is positioned at surface normal on the inclined plane, with measuring
point P1 as the zero of the new WCS.
The programmed positions then refer to the inclined plane.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-45
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Application CAD systems often define inclined planes by specifying three points P1, P2 and
P3 in this plane. In this case,

S 1. measuring point P1 is applied as the new WCS’ reference point,


S 2. measuring point P2 specifies the direction of abscissa x’
of the new rotated WCS’ coordinate system while

S 3. measuring point P3 is used to determine the solid angles.

Table 2-36 The values of the following variables are evaluated for measurement
type 18:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1
$AA_MEAS_POINT2[axis] Measuring point 2
$AA_MEAS_POINT3[axis] Measuring point 3
$AA_MEAS_SETPOINT[axis] Setpoint position of P1 *
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_TYPE 18

* optional

Table 2-37 The following output variables are written for measurement type 18:

Output variable Meaning

$AC_MEAS_FRAME Result frame with rotations and transformation


$AC_MEAS_RESULTS[0] Calculated angle about the abscissa
$AC_MEAS_RESULTS[1] Calculated angle about the ordinate
$AC_MEAS_RESULTS[2] Calculated angle about the applicate

Copyright © Siemens AG, 2005.


2/M5/2-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

WCS reference on Programming example


oblique plane
DEF INT RETVAL ;
DEF AXIS _XX, _YY, _ZZ ;

T1 D1 ; Activate probe
G54 ; Activate all frames and G54

$AC_MEAS_VALID = 0 ; Invalidate all input values

$AC_MEAS_TYPE = 18 ; Set measurement type for oblique plane


$AC_MEAS_ACT_PLANE = 0 ; Plane for measurement is G17

_XX=$P_AXN1 ; Define axes according to plane


_YY=$P_AXN2 ;
_ZZ=$P_AXN3 ;

G17 G1 _XX=10 _YY=10 F1000 ; Approach 1st measuring point


MEAS = 1 _ZZ=... ;
;
$AA_MEAS_POINT1[_xx] = $AA_MW[_xx] ; Assign measured value abscissa
$AA_MEAS_POINT1[_yy] = $AA_MW[_yy] ; Assign measured value ordinate
$AA_MEAS_POINT1[_zz] = $AA_MW[_zz] ; Assign measured value applicate

G1 _XX=20 _YY=10 F1000 ; Approach 2nd measuring point


MEAS = 1 _ZZ=... ;
;
$AA_MEAS_POINT2[_xx] = $AA_MW[_xx] ; Assign measured value abscissa
$AA_MEAS_POINT2[_yy] = $AA_MW[_yy] ; Assign measured value ordinate
$AA_MEAS_POINT2[_zz] = $AA_MW[_zz] ; Assign measured value applicate

G1 _XX=20 _YY=20 F1000 ; Approach 3rd measuring point


MEAS = 1 _ZZ=... ;
;
$AA_MEAS_POINT3[_xx] = $AA_MW[_xx] ; Assign measured value abscissa
$AA_MEAS_POINT3[_yy] = $AA_MW[_yy] ; Assign measured value ordinate
$AA_MEAS_POINT3[_zz] = $AA_MW[_zz] ; Assign measured value applicate

; Input setpoints for P1


$AA_MEAS_SETPOINT[_xx] = 10 ;
$AA_MEAS_SETPOINT[_yy] = 10 ;
$AA_MEAS_SETPOINT[_zz] = 10 ;

$AC_MEAS_FRAME_SELECT = 102 ; Select target frame (G55)

; Select tool
$AC_MEAS_T_NUMBER = 1 ;
$AC_MEAS_D_NUMBER = 1 ;

RETVAL = MEASURE() ; Start measurement calculation

if RETVAL <> 0
setal(61000 + RETVAL)
endif

; Calculation results of solid angles


; Angle about the
R0 = $AC_MEAS_RESULTS[0] ; Abscissa of old WCS
R1 = $AC_MEAS_RESULTS[1] ; Ordinate
R2 = $AC_MEAS_RESULTS[2] ; Applicate

$P_UIFR[2] = $AC_MEAS_FRAME ; Write measurement frame to data management


(G55)

G55 G0 AX[_xx]=10 AX[_yy]=10 ; Activate frame and traverse


m30

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-47
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

1-dimensional Setpoint input ($AC MEAS TYPE = 19)


With this measurement method it is possible to input exactly one setpoint for the
abscissa, the ordinate and the applicate. If two or three setpoints are input, only
the first is accepted in the sequence abscissa, ordinate and applicate. The tool
is not taken into account.
It is purely an actual value memory preset for the abscissa, the ordinate or the
applicate.

Table 2-38 The values of the following variables are evaluated for measurement
type 19:
Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1 for the abscissa
$AA_MEAS_POINT1[axis] Measuring point 1 for the ordinate
$AA_MEAS_POINT1[axis] Measuring point 1 for the applicate
$AA_MEAS_SETPOINT[axis] Setpoint position of abscissa or ordinate or
applicate
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_FINE_TRANS Frame is written to coarse translation unless other-
wise specified *
$AC_MEAS_TYPE 19

* optional

Table 2-39 The following output variables are written for measurement type 19:

Output variable Meaning

$AC_MEAS_FRAME Result frame with rotations and translation

Setpoint input Programming example


1-dimensional setpoint input
DEF INT RETVAL ;
DEF REAL _CORMW_XX, ;
_CORMW_YY, ;
_CORMW_ZZ ;
DEF AXIS _XX, _YY, _ZZ ;

T1 D1 ; Activate probe
G54 ; Activate all frames and G54

$AC_MEAS_VALID = 0 ; Invalidate all input values

$AC_MEAS_TYPE = 19 ; Set measurement type to 1-dimensional


; setpoint input

$AC_MEAS_ACT_PLANE = 0 ; G17 is the measurement plane

_XX=$P_AXN1 ; Define axes according to plane


_YY=$P_AXN2 ;
_ZZ=$P_AXN3 ;

Copyright © Siemens AG, 2005.


2/M5/2-48 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

; Assign measured values


$AA_MEAS_POINT1[_xx] = $AA_MW[_xx] ; Assign measured value abscissa
$AA_MEAS_POINT1[_yy] = $AA_MW[_yy] ; Assign measured value ordinate
$AA_MEAS_POINT1[_zz] = $AA_MW[_zz] ; Assign measured value applicate

$AA_MEAS_SETPOINT[_xx] = 10 ; Input setpoint for abscissa


$AC_MEAS_FRAME_SELECT = 102 ; Select target frame – G55

RETVAL = MEASURE() ; Start measurement calculation

if RETVAL <> 0
setal(61000 + RETVAL)
endif

$P_UIFR[2] = $AC_MEAS_FRAME ; Write measurement frame to data management


(G55)

G55 G0 AX[_xx]=10 AX[_yy]=10 ; Activate frame and traverse


m30

2-dimensional Setpoint input ($AC MEAS TYPE = 20)


Setpoints for two dimensions can be input with this measuring method. Any
combination of 2 out of 3 axes is permissible. If three setpoints are specified,
only the values for the abscissa and the ordinate are accepted. The tool is not
taken into account.
This is a pure actual value memory preset.

Table 2-40 The values of the following variables are evaluated for measurement
type 20:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1 for the abscissa
$AA_MEAS_POINT1[axis] Measuring point 1 for the ordinate
$AA_MEAS_POINT1[axis] Measuring point 1 for the applicate
$AA_MEAS_SETPOINT[axis] Setpoint position for the 1st dimension
$AA_MEAS_SETPOINT[axis] Setpoint position for the 2nd dimension
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_FINE_TRANS Frame is written to coarse translation unless other-
wise specified *
$AC_MEAS_TYPE 20

* optional

Table 2-41 The following output variables are written for measurement type 20:
Output variable Meaning

$AC_MEAS_FRAME Result frame with rotations and translation

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-49
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Setpoint input Programming example


2-dimensional setpoint input
DEF INT RETVAL ;
DEF REAL _CORMW_XX, ;
_CORMW_YY, ;
_CORMW_ZZ ;
DEF AXIS _XX, _YY, _ZZ ;

T1 D1 ; Activate probe
G54 ; Activate all frames and G54

$AC_MEAS_VALID = 0 ; Invalidate all input values

$AC_MEAS_TYPE = 20 ; Set measurement type to 2-dimensional


; setpoint input

$AC_MEAS_ACT_PLANE = 0 ; G17 is the measurement plane

_XX=$P_AXN1 ; Define axes according to plane


_YY=$P_AXN2 ;
_ZZ=$P_AXN3 ;

; Assign measured values


$AA_MEAS_POINT1[_xx] = $AA_MW[_xx] ; Assign measured value abscissa
$AA_MEAS_POINT1[_yy] = $AA_MW[_yy] ; Assign measured value ordinate
$AA_MEAS_POINT1[_zz] = $AA_MW[_zz] ; Assign measured value applicate

$AA_MEAS_SETPOINT[_xx] = 10 ; Input setpoint for abscissa and ordinate


$AA_MEAS_SETPOINT[_yy] = 10 ;

$AC_MEAS_FRAME_SELECT = 102 ; Select target frame (G55)

RETVAL = MEASURE() ; Start measurement calculation

if RETVAL <> 0
setal(61000 + RETVAL)
endif

$P_UIFR[2] = $AC_MEAS_FRAME ; Write measurement frame to data management


(G55)

G55 G0 AX[_xx]=10 AX[_yy]=10 ; Activate frame and traverse


m30

Copyright © Siemens AG, 2005.


2/M5/2-50 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

3-dimensional Setpoint input ($AC MEAS TYPE = 21)


With this measurement method it is possible to input a setpoint for the abscissa,
the ordinate and the applicate. The tool is not taken into account.
It is purely an actual value memory preset for the abscissa, ordinate and
applicate.

Table 2-42 The values of the following variables are evaluated for measurement
type 21:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1 for the abscissa
$AA_MEAS_POINT1[axis] Measuring point 1 for the ordinate
$AA_MEAS_POINT1[axis] Measuring point 1 for the applicate
$AA_MEAS_SETPOINT[axis] Setpoint position for the abscissa
$AA_MEAS_SETPOINT[axis] Setpoint position for the ordinate
$AA_MEAS_SETPOINT[axis] Setpoint position for the applicate
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_FINE_TRANS Frame is written to coarse translation unless other-
wise specified *
$AC_MEAS_TYPE 21

* optional

Table 2-43 The following output variables are written for measurement type 21:
Output variable Meaning

$AC_MEAS_FRAME Result frame with rotations and translation

Setpoint input Programming example


3-dimensional setpoint input
DEF INT RETVAL ;
DEF REAL _CORMW_XX, ;
_CORMW_YY, ;
_CORMW_ZZ ;
DEF AXIS _XX, _YY, _ZZ ;

T1 D1 ; Activate probe
G54 ; Activate all frames and G54

$AC_MEAS_VALID = 0 ; Invalidate all input values

$AC_MEAS_TYPE = 21 ; Set measurement type to 3-dimensional


; setpoint input

$AC_MEAS_ACT_PLANE = 0 ; G17 is the measurement plane

_XX=$P_AXN1 ; Define axes according to plane


_YY=$P_AXN2 ;
_ZZ=$P_AXN3 ;

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-51
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

; Assign measured values


$AA_MEAS_POINT1[_xx] = $AA_MW[_xx] ; Assign measured value abscissa
$AA_MEAS_POINT1[_yy] = $AA_MW[_yy] ; Assign measured value ordinate
$AA_MEAS_POINT1[_zz] = $AA_MW[_zz] ; Assign measured value applicate

; Input setpoints for abscissa, ordinate and


$AA_MEAS_SETPOINT[_xx] = 10 ; applicate
$AA_MEAS_SETPOINT[_yy] = 10 ;
$AA_MEAS_SETPOINT[_zz] = 10 ;

$AC_MEAS_FRAME_SELECT = 102 ; Select target frame (G55)

$AA_MEAS_SETPOINT[_yy] = 10

RETVAL = MEASURE() ; Start measurement calculation

if RETVAL <> 0
setal(61000 + RETVAL)
endif

$P_UIFR[2] = $AC_MEAS_FRAME ; Write measurement frame to data management


(G55)

G55 G0 AX[_xx]=10 AX[_yy]=10 ; Activate frame and traverse


m30

Copyright © Siemens AG, 2005.


2/M5/2-52 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

TL with zoom-in Measurement of tool lengths with zoom-in function ($AC MEAS
function TYPE = 22)
If a zoom-in function is available on the machine, it can be used to determine
the tool dimensions.

x x

z z

Fig. 2-19 Measurement of tool lengths with zoom-in function

Table 2-44 The values of the following variables are evaluated for measurement
type 22:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1 for all channel axes
$AA_MEAS_P1_COORD Coordinate system of measuring point *
$AA_MEAS_SETPOINT[axis] Zoom positions x and z must be specified
$AA_MEAS_SET_COORD Coordinate system of setpoint *
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_TYPE 22

* optional

Table 2-45 The following output variables are written for measurement type 22:

Output variable Meaning

$AC_MEAS_RESULT[0] Tool length in x, only when x0 specified


$AC_MEAS_RESULT[1] Tool length in y, only when y0 specified
$AC_MEAS_RESULT[2] Tool length in z, only when z0 specified

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-53
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

TL with stored / Measuring a tool length with stored or current position


current position ($AC MEAS TYPE = 23)
In the case of manual measurement, the tool dimensions can be determined in
the X and Z directions. from the known position of the

S tool carrier reference point and the


S workpiece dimensions
ShopTurn calculates the tool offset data.

x x
x0

z z0 z

Fig. 2-20 Measurement of a tool length with a stored or actual position

Table 2-46 The values of the following variables are evaluated for measurement
type 23:
Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1 or marked position
$AA_MEAS_P1_COORD Coordinate system of measuring point *
$AA_MEAS_SETPOINT[axis] Setpoint positions x0 and z0 must be specified
$AA_MEAS_SET_COORD Coordinate system of setpoint *
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise spe-
cified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_TYPE 23

* optional

Table 2-47 The following output variables are written for measurement type 23:

Output variable Meaning

$AC_MEAS_RESULT[0] Tool length in x, only when x0 specified


$AC_MEAS_RESULT[1] Tool length in y, only when y0 specified
$AC_MEAS_RESULT[2] Tool length in z, only when z0 specified

Copyright © Siemens AG, 2005.


2/M5/2-54 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Coordinate transformation of a position ($AC MEAS TYPE = 24)


With this method of measurement, a measuring point in any coordinate system
(WCS, BCS, MCS) can be converted with reference to a new coordinate system
by coordinate transformation.
The new coordinate system is generated by specifying a desired frame chain.

z’
P1(MCS) = P1’(MCS)

y’
y

x’

WCS’
Specified frame

BCS x

Fig. 2-21 Coordinate transformation of a position

Table 2-48 The values of the following variables are evaluated for measurement
type 24:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Position to be transformed
$AA_MEAS_P1:COORD Default is 0: WCS, 1: BCS, 2: MCS *
$AA_MEAS_P2_COORD Target coordinate system *
$AA_MEAS_CHSFR System frames from data management *
$AC_MEAS_NCBFR Global basic frames from the data management *
$AC_MEAS_CHBF Channel basic frames from the data management *
$AC_MEAS_UIFR Settable frame from data management *
$AC_MEAS_PFRAME Programmable frame is not included in calculation *
$AC_MEAS_TYPE 24

* optional

Table 2-49 The following output variables are written for measurement type 24:

Output variable Meaning

$AC_MEAS_POINT2[axis] Converted axis positions

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-55
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Rectangle ($AC MEAS TYPE = 25)


To determine a rectangle, tool dimensions are required in working planes

S G17 working plane x/y infeed direction z


S G18 working plane z/x infeed direction y
S G19 working plane y/z infeed direction x
with four measuring points per rectangle.
Measuring points can be specified in any desired order. The measuring points
with the largest ordinate distance correspond to points P3 and P4.

G17 G18 G19


y x z
P4 P4 P4

P2 P2 P2

P1 P1 P1
P3 P3 z P3 y
x

Fig. 2-22 Rectangle

Table 2-50 The values of the following variables are evaluated for measurement
type 25:
Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1
$AA_MEAS_POINT2[axis] Measuring point 2
$AA_MEAS_POINT3[axis] Measuring point 3
$AA_MEAS_POINT4[axis] Measuring point 4
$AA_MEAS_SETPOINT[axis] Setpoint position of web center *
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise spe-
cified *
$AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset *
$AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise
specified *
$AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified
(T0) *
$AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified
(D0) *
$AC_MEAS_INPUT[0] Without specification of outer corner *
=0: Measurement for outer corner
=1: Measurement for inner corner
$AC_MEAS_TYPE 25

* optional

Copyright © Siemens AG, 2005.


2/M5/2-56 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Table 2-51 The following output variables are written for measurement type 25:

Output variable Meaning

$AC_MEAS_FRAME Result frame with translation


$AC_MEAS_RESULTS[0] Abscissa of the calculated center point
$AC_MEAS_RESULTS[1] Ordinate of the calculated center point
$AC_MEAS_RESULTS[2] Applicate of the calculated center point
$AC_MEAS_RESULTS[3] Width of rectangle P1/P2
$AC_MEAS_RESULTS[4] Length of rectangle P3/P4

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-57
Measurement (M5) 06.03
06.05
2.3 Zero setting, workpiece and tool measuring

Save data management frames ($AC MEAS TYPE = 26)


This measurement type offers the option of saving some or all data
management frames with their current value assignments to a file. The
measurement can be initiated by executing a command or via the part program.
The function can also be activated from different channels. The files are set up
in directory _N_SYF_DIR.
A Restore operation deletes the backed-up data and a new Save overwrites the
existing back-up. The data last saved can then be deleted with

S $AC_MEAS_CHSFR = 0 system frames;

S $AC_MEAS_NCBFR = 0 global basic frames;

S $AC_MEAS_NCBFR = 0 channel basic frames;

S $AC_MEAS_UIFR = 0 number of settable frames


from the data management system by a second Save operation.

Note
If you decide to create a backup of all data management frames, remember
that 1 KB of memory is needed to save each frame. If insufficient memory is
available, the process is aborted with error message MEAS_NO_MEMORY. Via
the MD 18351: MM_DRAM_FILE_MEM_SIZE.

Table 2-52 The values of the following variables are evaluated for measurement
type 26:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_CHSFR Bit mask system frames from data management.
* If this variable is not written, all system frames
are backed up.
$AA_MEAS_NCBFR Bit mask of global basic frames from the data ma-
nagement. *
If this variable is not written, all global basic fra-
mes are backed up.
$AA_MEAS_CHBFR Bit mask of channel basic frames from the data
management. *
If this variable is not written, all channel basic fra-
mes are backed up.
$AA_MEAS_UIFR Number of settable frames from data manage-
ment 0..100: 1: G500 2: G500, G54. *
If this variable is not written, all settable frames
are backed up.
$AC_MEAS_TYPE 26

* optional

Copyright © Siemens AG, 2005.


2/M5/2-58 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.03
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Restore data management frames ($AC MEAS TYPE = 27)


This measurement type allows data management frames backed up by
measurement type 26 to be restored to the SRAM.
It is possible to restore either some or all of the frames last backed up. If a frame
which has not been backed up is selected, the selection is ignored. The
process is not aborted.

Table 2-53 The values of the following variables are evaluated for measurement
type 27:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_CHSFR Bit mask system frames from data management.
* If this variable is not written, all system frames
are restored.
$AA_MEAS_NCBFR Bit mask of global basic frames from the data ma-
nagement. *
If this variable is not written, all global basic fra-
mes are restored.
$AA_MEAS_CHBFR Bit mask of channel basic frames from the data
management. *
If this variable is not written, all channel basic fra-
mes are restored.
$AA_MEAS_UIFR Number of settable frames from data manage-
ment range from 1: G54 to G99: G599. * If this
variable is not written, all settable frames are re-
stored.
$AC_MEAS_TYPE 27

* optional

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-59
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Taper turning Additive rotation of the plane ($AC MEAS TYPE = 28)
This measurement type 28 is used via the ManualTurn Advanced user interface
for the taper turning application.

G17 G18 G19


y x z

x’ z’ y’
α α α
x z y

Fig. 2-23 Plane rotation

With this measurement type 28, an additive rotation of the active or a selected
plane can be specified. An angle setpoint in the range +/– 90 degrees can be
specified.

Application With taper turning, the active plane is rotated by the taper angle, whereby the
rotation is written in the active cycle frame. With RESET, the cycle frame is
deleted. Re-activation may be necessary. The selection of the cycle frame is
made depending on the SZS position display. If after activation of the rotation,
e.g. with active plane G18, traversing is performed geometrically in z’, the
positions change simultaneously
x and z
Rotations with active planes G17 and G18 behave in the same way and are
displayed in the above figure.

Table 2-54 The values of the following variables are evaluated for measurement
type 28:
Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_WP_SETANGLE Setpoint angle
$AA_MEAS_ACT_PLANE Rotation is through the active plane unless other-
wise specified. *
$AA_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise
specified. *
$AA_MEAS_INPUT[0] 1: Taper turning is active. *
$AC_MEAS_TYPE 28

* optional

Table 2-55 The following output variables are written for measurement type 28:
Output variable Meaning

$AC_MEAS_FRAME Result with rotation

Copyright © Siemens AG, 2005.


2/M5/2-60 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.03
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

2.3.3 Tool measuring

The control calculates the distance between the tool tip and the tool carrier
reference point T from the tool length specified by the user.

Measurement of tool length ($AC MEAS TYPE = 10)


The tool length can be measured on a reference part that has already been
measured. Depending on the position of the tool, it is possible to select plane
G17 for tool position in the z direction, G18 for tool position in the y direction and
G19 for tool position in the x direction.

G17 G18 G19


z ÇÇ
ÇÇ
y ÇÇ
ÇÇ
x ÇÇ
ÇÇ
z0
ÇÇ –z
y0
ÇÇ –y
x0
ÇÇ –x

ÇÇ ÇÇ ÇÇ
x z y
+z +y +x

ÇÇ ÇÇ ÇÇ
Fig. 2-24 Tool length

Table 2-56 The values of the following variables are evaluated for measurement
type 10:
Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1
$AC_MEAS_P1_COORD Coordinate system of measuring point *
$AA_MEAS_SETPOINT[axis] Set position z0
$AC_MEAS_SET_COORD Coordinate system of setpoint *
$AC_MEAS_DIR_APPROACH 0: +x, 1: –x, 2: +y, 3: –y, 4: +z, 5: –z
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_TYPE 10

* optional

Table 2-57 The following output variables are written for measurement type 10:
Output variable Meaning

$AC_MEAS_TOOL_LENGTH Tool length

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-61
Measurement (M5) 06.05
2.3 Zero setting, workpiece and tool measuring

Measure tool Programming example


length
DEF INT RETVAL ;

T0 D0 ;
g0 x0 y0 z0 f10000 ;

$AC_MEAS_VALID = 0 ; Invalidate all input values

g1 z10 ; Move tool to reference part


$AC_MEAS_LATCH[0] = 1 ; Pick up measuring point 1

$AC_MEAS_DIR_APPROACH = 5 ; Set approach direction –z

; Set reference position


$AA_MEAS_SETPOINT[x] = 0 ;
$AA_MEAS_SETPOINT[y] = 0 ;
$AA_MEAS_SETPOINT[z] = 0 ;

$AC_MEAS_ACT_PLANE = 0 ; G17 is the measurement plane

; No tool is selected
$AC_MEAS_T_NUMBER = 1 ;
$AC_MEAS_D_NUMBER = 1 ;

$AC_MEAS_TYPE = 10 ; Set measurement type to tool length

; Perform calculation
RETVAL = MEASURE() ;

if RETVAL <> 0
setal(61000 + RETVAL)
endif

if $AC_MEAS_TOOL_LENGTH <> 10 ; Scan known tool length


setal(61000 + $AC_MEAS_TOOL_LENGTH)
endif

m30

Copyright © Siemens AG, 2005.


2/M5/2-62 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.03
06.05 Measurement (M5)
2.3 Zero setting, workpiece and tool measuring

Measurement of Tool diameter ($AC MEAS TYPE = 11)


The tool diameter can be measured on a reference part that has already been
measured. Depending on the position of the tool, it is possible to select plane
G17 for tool position in the z direction, G18 for tool position in the y direction and
G19 for tool position in the x direction.

z G17 z G17

ÇÇ ÇÇÇÇ ÇÇÇ
ÇÇ
ÇÇ+x
ÇÇÇÇ
ÇÇÇÇ
–x +y
ÇÇÇ
ÇÇÇ –y

x0 x y0 x
y G18 y G18

ÇÇ
ÇÇ ÇÇÇÇ
ÇÇÇÇ ÇÇÇ
ÇÇÇ
+x –x +z –z

x0 x z0 z
x G19 x G19

ÇÇ
ÇÇ ÇÇ
ÇÇÇÇ
ÇÇ ÇÇÇ
ÇÇÇ
ÇÇ+y ÇÇÇÇ
–y +z ÇÇÇ –z

y0 y z0 z

Fig. 2-25 Tool diameter for selected planes G17, G18 and G19

Table 2-58 The values of the following variables are evaluated for measurement
type 10:

Input variable Meaning

$AC_MEAS_VALID Validity bits for input variables


$AA_MEAS_POINT1[axis] Measuring point 1
$AA_MEAS_SETPOINT[axis] Set position x0
$AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise speci-
fied *
$AC_MEAS_TYPE 11

* optional

Table 2-59 The following output variables are written for measurement type 11:
Output variable Meaning

$AC_MEAS_TOOL_DIAMETER Tool diameter

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-63
Measurement (M5) 06.05
2.4 Axial measurement (option)

2.4 Axial measurement (option)


A measuring operation can be initiated from both the part program and
synchronized actions. A measuring mode, the encoder and up to four trigger
events are programmed, the trigger events comprising the probe number
(1 or 2) and the activation criterion (rising/falling signal edge).
If the measured values are to be stored from encoder 1 and 2 for each trigger
event, then only two trigger events can be programmed.

2.4.1 Supplementary conditions

Mode change Measuring job from part program


A measuring job activated by a part program is not affected by a change in
operating mode. However, it is deleted immediately the program advances to a
new block.
RESET aborts the measuring jobs.
Measuring job from synchronized actions
A measuring job activated by a modal synchronized action is not affected by a
changeover in operating mode. The job is modally active beyond block limits.

Block search Measuring job from part program


The job is not started. No measurement check-back signals are supplied.
Measuring job from synchronized actions
Modal measuring jobs are not activated until the programmed conditions are
fulfilled.

Repos Measuring job from part program


If a measuring job is currently in progress, it is aborted and restarted again after
the REPOS block. If the job had already been completed, it is not started again.
Measuring job from synchronized actions
Activated jobs remain unaffected.

2.4.2 Measuring mode

The measuring mode specifies whether trigger events must be activated in


parallel or sequentially in ascending sequence and defines the number of
measurements to be taken.

Copyright © Siemens AG, 2005.


2/M5/2-64 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.4 Axial measurement (option)

Measuring mode 1 The user can program up to four different trigger events in the same position
control cycle.
The measuring signal edges are evaluated in chronological sequence.

S Up to two probes with two measuring signal edges each can be


programmed for each measurement job. If 2 encoders are used, the number
of programmed trigger events is halved.

S Where six-axis modules are installed, measuring mode 1 is imaged on


measuring mode two internally in the control.

S The traversing velocity must be lower or equal to the shortest distance


between two identical trigger events in each position control clock cycle.

Note
With this mode, the compensation value which was present when the last
measuring signal edge was received is calculated for all measured values.

Measuring mode 2 The user can program up to four different trigger events one after the other in
the configured sequence.
Evaluation of measuring signal edges is activated for one trigger event at a time
and takes place in the programmed sequence.

S Trigger events are detected only in the programmed sequence.


S The traversing velocity must be lower or equal to the shortest distance
between two trigger events in each position control clock cycle.

Note
Measurement does not work on simulated axes!

Measuring probe It is possible to scan the probe status directly in the part program and in
status synchronized actions.
$A_PROBE[n] with n=probe
$A_PROBE[n]==1: probe deflected
$A_PROBE[n]==0: probe not deflected

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-65
Measurement (M5) 06.05
2.4 Axial measurement (option)

2.4.3 Programming

Programming Axial measurements can be programmed with and without deletion of


distance-to-go.
MEASA with deletion of distance-to-go
MEAWA without deletion of distance-to-go
MEASA[Achse] = (mode, trigger event1, trigger event2,
trigger event3, trigger event4)
Parameter description:
S Axis : Channel axis name (X, Y, ...)

S Mode: Ones decade


0 = Abort measurement job (e.g. for synchronized actions)
1 = Up to four trigger events that can be activated simultaneously
2 = Up to four trigger events that can be activated sequentially
Error output if the first trigger event is already active
3 = Up to four trigger events that can be activated sequentially
NONE Error output if the first trigger event is already
active, alarms 21700/21703 are suppressed

Tens decade (= encoder selection)


0/not set = Use active measuring system
1 = 1st measuring system
2 = 2nd measuring system (If installed. Otherwise
the first measuring system is used, no
alarm is output)
3 = 1st and 2nd measuring system
If the measurement is taken using two measuring systems, a maximum of
two trigger events may be programmed. The measured values of both
encoders are recorded for each of the two trigger events.

S Trigger event 1 = rising edge of probe 1


–1 = falling edge of probe 1
2 = rising edge of probe 2
–2 = falling edge of probe 2

Copyright © Siemens AG, 2005.


2/M5/2-66 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.4 Axial measurement (option)

Note
MEASA and MEAWA can be programmed in the same block.
MEASA cannot be programmed in synchronized actions.
The axes for which MEASA has been programmed are not decelerated until all
programmed trigger events have arrived.
Measurement jobs started from a parts program are aborted by RESET or
when the program advances to a new block.
If MEASA/MEAWA are programmed in the same block as MEAS/MEAW, the
configuration is rejected with alarm 21701.
If a geometry axis is used in a measurement, the measured values are only
made available in the workpiece coordinate system if all geometry axes are
programmed with the same measurement task. If a geometry axis is missing
from the measurement task, the measured values are stored only in the
machine coordinate system and alarm 21702 is output. The same applies to
axes that are involved in a transformation.
If the measurement must start on the probe signal edge (with the position of the
probe unknown at the instant measurement commences), the customer must
evaluate the probe in the parts program. By scanning the probe status, it is
generally possible to ensure that the next probe signal edge (positive or
negative) detected in the hardware will initiate the measurement job.
if $A_PROBE [1] =1 ; Probe deflected ?
MEAC [X] = (1,1,–1,1) ; Starts on the first detected negative edge.
else
MEAC [X] =(1,1,1,–1) ; Starts on the first detected positive edge.
endif .
The alarms are described in the online help or in
References /DA/ Diagnostic Guide

2.4.4 Measurement results

Measurement The results of the measurement commands are stored in system data of the
results NCK and can be read via system variables in the parts program.

S System variable $AC_MEA[No]


Scan status signal of measurement job.
<No.> stands for probe (1 or 2)

The variable is deleted at the beginning of a measurement. The variable is


set as soon as the probe fulfills the activation criterion (rising or falling edge).
Execution of the measurement job can thus be checked in the part program.

S System variable $AA_MM1[axis] to $AA_MM4[axis]


Access to measurement result of trigger signal in machine coordinate
system. Read in part program and in synchronized actions.
<Axis> stands for the name of the measurement axis (X, Y, ...).

S System variable $AA_MM1[axis] to $AA_MM4[axis]


Access to measurement result of trigger signal in machine coordinate
system. Read in part program and in synchronized actions.
<Axis> stands for the name of the measurement axis (X, Y, ...).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-67
Measurement (M5) 06.05
2.4 Axial measurement (option)

Programming If two measuring systems are used to take the measurement, a maximum of two
trigger events may be programmed. The measured values of both encoders are
recorded for each of the two trigger events.

One trigger event


$AA_MM1[axis] = trigger event 1, measured value from encoder 1
$AA_MM2[axis] = trigger event 1, measured value from encoder 2

Two trigger events


$AA_MM1[axis] = trigger event 1, measured value from encoder 1
$AA_MM2[axis] = trigger event 1, measured value from encoder 2
$AA_MM3[axis] = trigger event 2, measured value from encoder 1
$AA_MM4[axis] = trigger event 2, measured value from encoder 2

PLC service The functional test for the probe is conducted via an NC program.
display
The measuring signal can be checked at the end of the program in the
diagnostic menu “PLC status”.

Table 2-60 Status display for measuring signal

Status display

Probe 1 deflected DB10 DB B107.0


Probe 2 deflected DB10 DB B107.1

References: /PAZ/, Programming Guide Cycles


/BNM/, User’s Guide Measuring Cycles

Copyright © Siemens AG, 2005.


2/M5/2-68 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.4 Axial measurement (option)

2.4.5 Continuous measurement (cyclic measurement)

All measurements are written to a previously defined FIFO variable. The


number of measured values is defined in machine data.

S Correct operation of the function can only be relied upon with an


IPO/position control ratio of  8 : 1.

S The contents of the FIFO memory can be read only once. When
measurement results are used more than once, the read-out values must be
buffered in the user data.

MEAC Continuous, axial measurements without deletion of distance-to-go


MEAC[axis] = (mode, measurement memory, trigger event 1,
trigger event 2, trigger event 3,
trigger event 4)
Parameter description:
S Axis : Channel axis name (X, Y, ...)

S Mode : Ones decade


0 = Abort measurement job (for synchronized actions)
1 = Up to four trigger events that can be simultaneously
activated (a maximum of four signals can be triggered
simultaneously in one position controller cycle, but
the correct order must be observed)
2 = Up to four trigger events that can be activated
sequentially (only one signal can be triggered
per position controller cycle)

Tens decade (= encoder selection)


0/not enabled = active measuring system
1 = 1st measuring system
2 = 2nd measuring system (if installed, the first measuring
system is otherwise used, no alarm is generated)
3 = 1st and 2nd measuring system

If the measurement is taken using two measuring systems, a maximum of


two trigger events may be programmed.

S Measurement memory: Number of FIFO


S Trigger event 1 = rising edge of probe 1
–1 = falling edge of probe 1
2 = rising edge of probe 2
–2 = falling edge of probe 2
The axial measurement values are available in the machine coordinate system
(MCS). They are written to a FIFO variable defined by the user, e.g.
$AC_FIFO1. When two probes are configured to take the measurement, the
measured values from the second probe are stored separately in the following
FIFO.
The number of measured values is limited by MD 28264: LEN_AC_FIFO.
Variables $AC_MEA and $AA_MM are therefore irrelevant.
The values can be read from the FIFO both in the parts program and from
synchronized actions.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-69
Measurement (M5) 06.05
2.4 Axial measurement (option)

The measurement is active until

S MEAC[“axis”]=(0) is programmed
S a FIFO is full
S RESET is pressed or end of program M02/M30 is detected

Endless In order to implement endless measuring, FIFO values must be read cyclically
measuring from the part program. The frequency at which measured values are read from
the FIFO memory and processed must correspond to the write rate of the NC.
The number of valid entries can be read in a FIFO variable.
In order to achieve a defined number of measured values, the measuring
function must be explicitly deselected by the program.

FIFO variables For definition of FIFO variables, see


References /FB2/, S5, Synchronized Actions

Copyright © Siemens AG, 2005.


2/M5/2-70 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
2.5 Measurement accuracy and functional testing

2.5 Measurement accuracy and functional testing

2.5.1 Measuring accuracy

Accuracy The propagation time of the measuring signal is determined by the hardware
used. The delay times when using SIMODRIVE 611D are in the 3.625µ ...
9.625µ range plus the reaction time of the probe.
The measurement uncertainty is calculated as follows:
Measurement uncertainty = measuring signal propagation time x traversing
velocity
The permissible traversing velocities depend on the number of programmed
measuring signal edges and the ratio between the IPO clock cycle and position
control cycle.
Accurate measuring results are obtained only at traversing velocities at which
no more than 1 identical and no more than 4 different trigger signals arrive in
each position control cycle.

2.5.2 Probe functional test

Example of %_N_TEST_PROBE_MPF
functional test ;$PATH=/_N_MPF_DIR
;Testing program probe connection
N05 DEF INT MTSIGNAL ;Flag for trigger status

N10 DEF INT ME_NR=1 ;Measuring input number


N20 DEF REAL MEASVALUE_IN_X
N30 G17 T1 D1 ;Preselect tool
;Preselect probe
N40 _ANF: G0 G90 X0 F150 ;Start position and
;measuring velocity
N50 MEAS=ME_NR G1 X100 ;Measurement at measuring
;input 1 in X axis
N60 STOPRE
N70 MTSIGNAL=$AC_MEA[1] ;Read software switching signal
;at 1st measuring input
N80 IF MTSIGNAL == 0 GOTOF _FEHL1 ;Evaluate signal
N90 MEASVALUE_IN_X=$AA_MW[X] ;Read measured value
;in workpiece coordinates
N95 M0
N100 M02
N110 _FEHL1: MSG (“Probe not switching!”)
N120 M0
N130 M02
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/2-71
Measurement (M5) 06.05
2.5 Measurement accuracy and functional testing

Notes

Copyright © Siemens AG, 2005.


2/M5/2-72 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
3 Supplementary Conditions

Supplementary Conditions 3
Axial measurement functionality is available with SW package 4 and higher.
The function is not contained in the export version SINUMERIK 840DE/810DE.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/3-73
Measurement (M5) 06.05
3 Supplementary Conditions

Notes

Copyright © Siemens AG, 2005.


2/M5/3-74 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
4 Data Descriptions (MD, SD)

Data Descriptions (MD, SD) 4


13200 MEAS_PROBE_LOW_ACTIVE
MD number Switching characteristics of probe
Default setting: FALSE Minimum input limit: FALSE Maximum input limit: TRUE
When using measurement cycles:
FALSE
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: BOOLEAN Applies from SW: SW 2.2
Meaning: Value 0: (default setting)
non–deflected state 0V (Low)
deflected state 24 V (High)
Value 1: non–deflected state 24 V (High)
deflected state 0V (Low)

13201 MEAS_PROBE_SOURCE
MD number Measurement pulse simulation via digital output
Default setting: 0 Minimum input limit: 0 Maximum input limit: 8
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: BYTE Applies from SW: SW 6.1
Meaning: Function value on host only
Value > 0: Measurement pulse simulation starts with the digital output.
Value = 1: Measurement pulse simulation starts immediately after the measurement
job.

13210 MEAS_TYPE
MD number Type of measurement for PROFIBUS–DP drives
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: BYTE Applies from SW: SW 6.1
Meaning: This machine data is used to set the measurement function for distributed drives. This ma-
chine data is currently only functional for PROFIBUS–DP drives.

MD13210: MEAS_TYPE
Value = 0: A centralized probe connected to the NC is used.
However, since only cyclic position values are supplied by the encoders,
the actual measurement position is determined by interpolation.

MD13210: MEAS_TYPE
Value = 1: A distributed probe must be connected to ALL drives.
The measurement functionality of the drives is then used.
The actual encoder values in the hardware at the time
of the measuring signal edge are stored.
This method is more accurate than MD 13210: MEAS_TYPE = 0,
but requires additional wiring and drives which support
this measurement functionality, such as SIMODRIVE 611 universal.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/4-75
Measurement (M5) 06.05
4 Data Descriptions (MD, SD)

28264 LEN_AC_FIFO
MD number Length of $AC_FIFO ... FIFO variables
Default setting: 0 Minimum input limit: 0 Maximum input limit: 10000
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: SW 4.1
Meaning: Length of FIFO variables $AC_FIFO1 to $AC_FIFO10.
All FIFO variables are equal in length.

Copyright © Siemens AG, 2005.


2/M5/4-76 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
5 Signal Descriptions

Signal Descriptions 5
DB31, ... Measuring status
DBX62.3
Data block Signal(s) from axis/spindle (NCK ! PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 4
Signal state 1 or signal The “Measuring” function is active.
transition 0 –––> 1
This signal is used during measuring and displays the current measuring status of the axis.
Signal state 0 or signal The “Measuring” function is not active.
transition 1 –––> 0

DB10, ... Probe actuated


DBX107.0 and 107.1
Data block Signal(s) from axis/spindle (drive → PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal Probe 1 or 2 is actuated.
transition 0 –––> 1
Signal state 0 or signal Probe 1 or 2 is not actuated.
transition 1 –––> 0
References /PHD/, “NCU 571 – 573 Manual”
/PHF/, “NCU 570 Manual”
Note With SW 3.2 and earlier, the signal is active only while the NC block containing the measu-
ring operation is being processed.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/5-77
Measurement (M5) 06.05
5 Signal Descriptions

Notes

Copyright © Siemens AG, 2005.


2/M5/5-78 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
6.1 Measuring mode 1

Example 6
6.1 Measuring mode 1
Measurement with one encoder
– Single measurement
– One probe
– Trigger signals are the rising and falling edges
– Actual value from current encoder
N2 MEASA[X] = (1, 1, –1) G01 X100 F100
N3 STOPRE
N4 IF $AC_MEA[1]==FALSE gotof END
N5 R10=$AA_MM1[X]
N6 R11=$AA_MM2[X]
N7 END:

Measurement with two encoders


– Single measurement
– One probe
– Trigger signals are the rising and falling edges
– Actual values from two encoders
N2 MEASA[X]=(31, 1, –1) G01 X100 F100
N3 STOPRE
N4 IF $AC_MEA[1]==FALSE gotof END
N5 R10=$AA_MM1[X]
N6 R11=$AA_MM2[X]
N7 R12=$AA_MM3[X]
N8 R13=$AA_MM4[X]
N9 END:

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/6-79
Measurement (M5) 06.05
6.3 Continuous measurement

6.2 Measuring mode 2


– Two probes
– Trigger signals are the rising and falling edges
– Actual value from current encoder
N2 MEASA[X] = (2, 1, –1, 2, –2) G01 X100 F100
N3 STOPRE
N4 IF $AC_MEA[1]==FALSE gotof PROBE2
N5 R10=$AA_MM1[X]
N6 R11=$AA_MM2[X]
N7 PROBE2
N8 IF $AC_MEA[2]==FALSE gotof END
N9 R12=$AA_MM3[X]
N10 R13=$AA_MM4[X]
N11 END:

6.3 Continuous measurement

6.3.1 Cont. measurement on completion of progr. traversing motion

– The measurement is taken in measuring mode 1


– Measurement with 100 values
– One probe
– Trigger signal is the falling edge
– Actual value from current encoder
N1 DEF REAL MEASVALUE[100]
N2 DEF INT INDEX=0
N3 MEAC[x]=(1, 1, –1) G01 X1000 F100
N4 MEAC[X]=(0) ;Abort
N5 R1=$AC_FIFO1[4] ;No. of measured values
N6 FOR INDEX=0 TO R1
N7 MEASVALUE[INDEX]=$AC_FIFO1[0] ;Read out measured values
N8 ENDFOR:

Copyright © Siemens AG, 2005.


2/M5/6-80 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
6.3 Continuous measurement

6.3.2 Continuous measurements with deletion of distance-to-go

– Delete distance-to-go after last measurement


– The measurement is taken in measuring mode 1
– Measurement with 100 values
– One probe
– Trigger signal is the falling edge
– Actual value from current encoder
N1 DEF INT NUMBER=100
N2 DEF REAL MEASVALUE[NUMBER]
N3 DEF INT INDEX=0
N4 WHEN $AC_FIFO1[4]==NUMBER DO DELDTG (X) MEAC[X] =(0)
N5 MEAC[X]=(1, 1, –1) G01 X1000 F100 ;Start measurement
N6 R1=$AC_FIFO1[4] ;No. of measured values
N7 FOR INDEX=0 TO R1
N8 MEASVALUE[INDEX]=$AC_FIFO1[0] ;Read out measured values
N9 ENDFOR:

6.3.3 Continuous measurements modally over several blocks

– The measurement is taken in measuring mode 1


– Measurement with 100 values
– One probe
– Trigger signal is the falling edge
– Actual value from current encoder
N1 DEF INT NUMBER=100
N2 DEF REAL MEASVALUE[NUMBER]
N3 DEF INT INDEX=0
N4 ID=1 MEAC[X]=(1, 1, –1) ;Start measurement
N5 ID=2 WHEN $AC_FIFO1[4]==NUMBER DO MEAC[X]=(0) CANCEL(2)
N6 G01 X1000 Y100
N7 X100 Y100
N8 R1=$AC_FIFO1[4] ;Number of measured values
N9 FOR INDEX=0 TO R1
N10 MEASVALUE[INDEX]=$AC_FIFO1[0] ;Read out measured values
N11 ENDFOR:

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/6-81
Measurement (M5) 06.05
6.4 Functional test and repeat accuracy

6.4 Functional test and repeat accuracy

Function test %_N_TEST_PROBE_MPF


;$PATH=/_N_MPF_DIR
;Testing program probe connection
N05 DEF INT MTSIGNAL ;Flag for trigger status

N10 DEF INT ME_NR=1 ;Measuring input number


N20 DEF REAL MEASVALUE_IN_X
N30 G17 T1 D1 ;Preselect tool
;Preselect probe
N40 _ANF: G0 G90 X0 F150 ;Start position and
;measuring velocity
N50 MEAS=ME_NR G1 X100 ;Measurement at measuring
;input 1 in X axis
N60 STOPRE
N70 MTSIGNAL=$AC_MEA[1] ;Read software switching signal
;at 1st measuring input
N80 IF MTSIGNAL == 0 GOTOF _FEHL1 ;Evaluate signal
N90 MEASVALUE_IN_X=$AA_MW[X] ;Read measured value
;in workpiece coordinates
N95 M0
N100 M02
N110 _FEHL1: MSG (“Probe not switching!”)
N120 M0
N130 M02

Copyright © Siemens AG, 2005.


2/M5/6-82 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
6.4 Functional test and repeat accuracy

Repeat accuracy This program allows the measuring scatter (repeat accuracy) of the entire
measuring system (machine-probe-signal transmission to NC) to be calculated.
In the example, ten measurements are taken in the X axis and the measured
value recorded in the workpiece coordinates.
It is therefore possible to determine the so-called random dimensional
deviations which are not subject to any trend.
%_N_TEST_ACCUR_MPF;
$PATH=/_N_MPF_DIR
N05 DEF INT SIGNAL, II ;Variable definition
N10 DEF REAL MEASVALUE_IN_X[10]
N15 G17 T1 D1 ;Initial conditions,
;Preselect tool
;offset for probe
N20 _ANF: G0 X0 F150 ← ;Preposition in measurement axis
N25 MEAS=+1 G1 X100 ← ;Measurement at 1st measuring
;input with switching signal not
;deflected, deflected in the X axis
N30 STOPRE ← ;Stop decoding for subsequent
;evaluation of result
N35 SIGNAL= $AC_MEA[1] ;Read software switching signal at
;1st measuring input
N37 IF SIGNAL == 0 GOTOF_FEHL1 ;Check switching signal
N40 MEASVALUE_IN_X[II]=$AA_MW[X] ;Read measured value into
;workpiece coordinates
N50 II=II+1
N60 IF II<10 GOTOB_ANF :Repeat ten times
N65 M0
N70 M02
N80 _FEHL1: MSG (“Probe is not switching”)
N90 M0
N95 M02

After the parameter display (user-defined variables) has been selected, the
measurement results can be read in field MEASVALUE_IN_X[10] provided that
the program is still being processed.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/6-83
Measurement (M5) 06.05
6.4 Functional test and repeat accuracy

Notes

Copyright © Siemens AG, 2005.


2/M5/6-84 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
7.1 System variable

Data Fields, Lists 7


Number Names Name Refe-
rence
General ($MN_ ...)
13200 MEAS_PROBE_LOW_ACTIVE Switching characteristics of probe
13201 MEAS_PROBE_SOURCE Measurement pulse simulation via digital output
13210 MEAS_TYPE Type of measurement for PROFIBUS DP
drives
Channel-specific ($MC_...)
20360 TOOL_PARAMETER_DEF_MASK Definition of tool parameters W1
28264 MM_LEN_AC_FIFO Length of $AC_FIFO ... FIFO variables

7.1 System variable


Table of all the input values:

Type System variable name Values Description PGA 1


INT $AC_MEAS_SEMA 0: Unas- Interface assignment Measu-
signed ring
1: Assigned
to the cycle
INT $AC_MEAS_VALID Bit mask Validity bits for input values Measur.
REAL $AA_MEAS_POINT1[axis] mm 1. Measuring point for all channel axes Repos
REAL $AA_MEAS_POINT2[axis] Inch 2. Measuring point for all channel axes Repos
REAL $AA_MEAS_POINT3[axis] 3. Measuring point for all channel axes Repos
REAL $AA_MEAS_POINT4[axis] 4. Measuring point for all channel axes Repos
REAL $AA_MEAS_SETPOINT[axis] Setpoint position for all channel axes Repos
REAL $AA_MEAS_SETANGLE[axis] Degrees Setpoint angle for all channel axes Repos
INT $AC_MEAS_P1_COORD 0: WCS Coord. system for the 1st measuring point Measur.
INT $AC_MEAS_P2_COORD 1: BCS Coord. system for the 2nd measuring point Measur.
INT $AC_MEAS_P3_COORD 2: MCS Coord. system for the 3rd measuring point Measur.
INT $AC_MEAS_P4_COORD Coord. system for the 4th measuring point Measur.
INT $AC_MEAS_SET_COORD Coordinate system of setpoint Measur.
INT $AC_MEAS_LATCH[0..3] 0: Invalid Pick up measuring points in the WCS Measur.
INT $AA_MEAS_P1_VALID[axis] 1: Pickup 1. Pick up measuring point in the WCS Repos
INT $AA_MEAS_P2_VALID[axis] 2. Pick up measuring point in the WCS Repos
INT $AA_MEAS_P3_VALID[axis] 3. Pick up measuring point in the WCS Repos
INT $AA_MEAS_P4_VALID[axis] 4. Pick up measuring point in the WCS Repos

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/7-85
Measurement (M5) 06.05
7.1 System variable

Type System variable name Values Description PGA 1


INT $AA_MEAS_SP_VALID[axis] 0: Invalid Set setpoint position of axis as valid Repos
1: Valid
REAL $AC_MEAS_WP_SETANGLE [ –90, 90 ] Setpoint workpiece position angle Measu-
ring
REAL $AC_MEAS_CORNER_SETANGLE [ 0, 180 ] Setpoint cutting angle of corner Measu-
ring
INT $AC_MEAS_DIR_APPROACH 0: +x Approach direction Measu-
1: –x ring

2: +y
3: –y
4: +z
5: –z
INT $AC_MEAS_ACT_PLANE 0: G17 G17 working plane x/y infeed direction z Measu-
1: G18 G18 working plane z/x infeed direction y ring

2: G19 G19 working plane y/z infeed direction x


INT $AC_MEAS_SCALEUNIT 0: configured Unit of measurement INCH / METRIC Measu-
1: act. G code ring

INT $AC_MEAS_FINE_TRANS 0: coarse Corrections in fine displacement Measu-


1: fine ring

INT $AC_MEAS_FRAME_SELECT 0 $P_SETFRAME Measu-


10 .. 25 $P_CHBFRAME[0..15] ring

50 .. 65 $P_NCBFRAME[0..15]
100 .. 199 $P_IFRAME
1010 .. 1065 $P_CHBFRAME[0..15] / G500
1050 .. 1065 $P_NCBFRAME[0..15] / G500
2000 $P_SETFR
2010 .. 2025 $P_CHBFR[0..15]
2050 .. 2065 $P_NCBFR[0..15]
2100 .. 2199 $P_UIFR[0..99]
3010 .. 3025 $P_CHBFR[0..15] / G500
3050 .. 3065 $P_NCBFR[0..15] / G500
INT $AC_MEAS_CHSFR 0 .. 7F Frame chain setting: System frames Measu-
ring
INT $AC_MEAS_NCBFR 0 .. FFFF Frame chain setting: Measu-
Global basic frames ring
INT $AC_MEAS_CHBFR 0 .. FFFF Frame chain setting: Measu-
Channel basic frames ring
INT $AC_MEAS_UIFR 0 .. 99 Frame chain setting: Measu-
Settable frames ring
INT $AC_MEAS_PFRAME 0: in Frame chain setting: Measu-
1: out Prog. frame ring
INT $AC_MEAS_T_NUMBER Tool selection Measur.
INT $AC_MEAS_D_NUMBER Cutting edge selection Measur.
INT $AC_MEAS_TOOL_MASK Bit mask Tool settings Measur.
INT $AC_MEAS_TYPE Measuring type Measur.

Copyright © Siemens AG, 2005.


2/M5/7-86 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Measurement (M5)
7.1 System variable

Table of all the output values:

Type System variable name Values Description PGA 1


FRAME $AC_MEAS_FRAME Result frame Measu-
ring
REAL $AC_MEAS_WP_ANGLE Calculated workpiece position angle Measu-
ring
REAL $AC_MEAS_CORNER_ANGLE Calculated angle of intersection Measu-
ring
REAL $AC_MEAS_DIAMETER Calculated diameter Measu-
ring
REAL $AC_MEAS_TOOL_LENGTH Calculated tool length Measu-
ring
REAL $AC_MEAS_RESULTS[10] Calculation results (type-dependent) Measu-
ring

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/M5/7-87
Measurement (M5) 06.05
7.1 System variable

Notes

Copyright © Siemens AG, 2005.


2/M5/7-88 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Software Cams, Position Switching Signals


(N3)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/2-5
2.1 General, applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/2-5
2.2 Cam signals and cam positions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/2-6
2.2.1 Generation of cam signals for separate output . . . . . . . . . . . . . . . . . 2/N3/2-6
2.2.2 Generation of cam signals with gated output . . . . . . . . . . . . . . . . . . . 2/N3/2-10
2.2.3 Cam positions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/2-14
2.2.4 Lead/delay times (dynamic cam) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/2-15
2.3 Output of cam signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/2-17
2.3.1 Output of cam signals to PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/2-17
2.3.2 Output of cam signals to NCK I/Os in position control cycle . . . . . . 2/N3/2-18
2.3.3 Timer-controlled cam signal output . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/2-19
2.3.4 Independent, timer-controlled output of cam signals
(SW 6.2 and higher) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/2-20
2.4 Position-time cam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/2-22
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/3-25
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/4-27
4.1 General machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/4-27
4.2 General setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/4-35
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/5-43
5.1 Signal overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/5-43
5.2 General signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/5-44
5.2.1 Signals from NCK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/5-44
5.3 Axis/spindle-specific signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/5-45
5.3.1 Signals to axis/spindle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/5-45
5.3.2 Signals from axis/spindle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/5-45

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/i
06.05

6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/7-47
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/7-47
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/7-47
7.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/7-47
7.3 Setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/7-48
7.4 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N3/7-49
J

Copyright © Siemens AG, 2005.


2/N3/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
1 Brief Description

Brief Description 1
The “Software cams” function can be used to output position-dependent cam
signals to the PLC and to the NCK I/O devices in the position control cycle or
according to a timer.
The position values at which the signal outputs are set can be defined and
altered via setting data.
Thirty-two software cam pairs are available. These can be used, for example:

S As reversing signals for hydraulically controlled oscillation axes


S As limit switches
As of SW 6.3:

S Provision of a pulse of a defined duration when a cam position is crossed


(position-time cam) for optional evaluation

S Settable signal inversion for modulo rotary axes in cases where:


Plus cam – minus cam > 180 degrees.

S Gated output to the NCK I/O devices


S Timer-controlled cam signal output independent of interpolation cycle,
without output priority for the onboard outputs (more precise resolution of
cam edges within interpolation cycle).

Note
Software cams can be applied for linear axes and modulo rotary axes.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/1-3
Software Cams, Position Switching Signals (N3) 06.05
1 Brief Description

Notes

Copyright © Siemens AG, 2005.


2/N3/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
2.1 General, applications

Detailed Description 2
2.1 General, applications

General The “Software cams” function (see Chapter 3) generates position-dependent


switching signals for axes that supply an actual position value (machine axes)
and for simulated axes. The cam signals can be output to the PLC as well as to
the NCK I/Os.
The cam positions at which signal outputs are set can be defined and altered
via setting data. The setting data can be read and written via MMC, PLC and
part program.

Activation The “Software cams” function can be activated and used in all operating modes.
The function remains active in the event of RESET or EMERGENCY STOP.

Applications Examples of cam signal applications are as follows:

S To activate protection zones


S To initiate additional movements as a function of position
S As reversing signals for hydraulically controlled oscillation axes

Axis types Software cams can be used on linear and modulo rotary axes that are defined
as machine axes.

Cam range/cam Cams are always assigned in pairs to axes. A pair consists of a plus and a
pair minus cam. 32 cam pairs are available.
The plus and minus cams each simulate a mechanical cam which is actuated at
a defined point (cam position) in a specific approach direction when the axis
reaches the cam position.
Cam ranges are assigned to the plus and minus cams as follows:

Cam range plus: All positions  plus cam


Cam range minus: All positions  minus cam

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/2-5
Software Cams, Position Switching Signals (N3) 06.05
2.2 Cam signals and cam positions

2.2 Cam signals and cam positions

2.2.1 Generation of cam signals for separate output

General Both cam signals can be output to the PLC and to the NCK I/Os. Separate
output of the plus and minus cam signals makes it easy to detect whether the
axis is within or outside the plus or minus cam range.

Linear axes The switching edges of the cam signals are generated as a function of the axis
traversing direction:

S The minus cam signal switches from 1 to 0 when the axis traverses the
minus cam in the positive axis direction.

S The plus cam signal switches from 0 to 1 when the axis traverses the plus
cam in the positive direction.

Machine axis[m]

Cam position Cam position Machine axis[n]


Machine zero
(minus cam) (plus cam) [mm, inch]

Plus cam signal


0

Minus cam signal


0
Cam Cam
range range
minus plus

Fig. 2-1 Software cams for linear axis (minus cam < plus cam)

Copyright © Siemens AG, 2005.


2/N3/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
2.2 Cam signals and cam positions

Note
Position switching signals:
If the axis is positioned exactly on the cam, plus or minus, the defined output
flickers. If the axis moves one increment further, the output becomes a definite
zero or one.
Flickering of the actual position causes the signals to flicker in this manner. The
actual position is evaluated.

Machine axis[m]

Cam position Cam position Machine axis[n]


Machine zero
(plus cam) (minus cam) [mm, inch]

1
Plus cam signal
0

Minus cam signal


0
Cam Cam
range range
minus plus

Fig. 2-2 Software cams for linear axis (plus cam < minus cam)

Modulo rotary The switching edges of the cam signals are generated as a function of the
axes rotary axis traversing direction:

S The plus cam signal switches from 0 to 1 when the axis traverses the minus
cam in a positive axis direction and from 1 back to 0 when it traverses the
plus cam.

S The minus cam signal changes level in response to every positive edge of
the plus cam signal.

Note
The plus cam response applies under the following condition:
Plus cam – minus cam < 180 degrees

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/2-7
Software Cams, Position Switching Signals (N3) 06.05
2.2 Cam signals and cam positions

< 180
Machine axis[m]

Minus Plus Minus Plus


cam cam cam cam

Machine zero 0 120 180 0 120 180 Machine axis[n]


(modulo rotary
axis) [degrees]

Plus cam 1
signal

Minus cam 1
signal

Fig. 2-3 Software cams for modulo rotary axis (plus cam – minus cam < 180 degrees)

The signal change of the minus cam makes it possible to detect traversal of the
cam even if the cam range is set so small that the PLC cannot detect it reliably.
Both cam signals can be output to the PLC and to the NCK I/Os. Separate
output of the plus and minus cam signals makes it easy to detect whether the
axis is within or outside the plus or minus cam range.
If this condition (plus cam – minus cam < 180 degrees) is not fulfilled or if the
minus cam is set to a greater value than the plus cam, then the response of the
plus cam signal is inverted. The response of the minus cam signal remains
unchanged.

Copyright © Siemens AG, 2005.


2/N3/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
2.2 Cam signals and cam positions

Machine axis[m] > 180

Minus Plus Minus Plus


cam cam cam cam

Machine zero 0 90 290 0 90 290 Machine


axis[n]
(modulo rotary
axis) [degrees]

Plus cam 1
signal

Minus cam 1
signal

Fig. 2-4 Software cams for modulo rotary axis (plus cam – minus cam > 180 degrees)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/2-9
Software Cams, Position Switching Signals (N3) 06.05
2.2 Cam signals and cam positions

2.2.2 Generation of cam signals with gated output

General The plus and minus cam output signals are gated in the case of:

S Timer-controlled cam signal output (Subsection 2.3.3) to the four onboard


outputs on the NCU

S Output to the NCK I/O devices if the 2nd byte in MD 10470 to MD 10473 has
not been specified (= “0”)

Linear axes

Machine axes

Machine zero Cam position Cam position Machine axis


(minus cam) (plus cam) [mm, inch]

Plus cam signal:


1

0
Minus cam signal:
1

0
Cam range Cam range plus
minus

1
Digital output
0

Fig. 2-5 Position switching signals for linear axis (minus cam < plus cam)

Copyright © Siemens AG, 2005.


2/N3/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
2.2 Cam signals and cam positions

Machine axes

Machine zero Cam position Cam position Machine axis


(plus cam) (minus cam) [mm, inch]

Plus cam signal: 1

0
Minus cam signal:
1

0
Cam range Cam range plus
minus

1
Digital output
0

Fig. 2-6 Position switching signals for linear axis (plus cam < minus cam)

Modulo rotary axis The default signal response for modulo rotary axes is dependent on the cam
width:

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/2-11
Software Cams, Position Switching Signals (N3) 06.05
2.2 Cam signals and cam positions

< 180
Machine axis[m]

Minus Plus Minus Plus


cam cam cam cam

0 120 180 0 120 180 Machine axis[n]


Machine zero (modulo rotary
axis) [degrees]

Plus cam 1
signal

Minus cam 1
signal

Digital output
0

Fig. 2-7 Software cams for modulo rotary axis (plus cam – minus cam < 180 degrees)

Machine axis[m] > 180

Minus Plus Minus Plus


cam cam cam cam

Machine zero 0 90 290 0 90 290 Machine


axis[n]
(modulo rotary
axis) [degrees]

Plus cam 1
signal

Minus cam 1
signal

Digital output
0

Fig. 2-8 Software cams for modulo rotary axis (plus cam – minus cam > 180 degrees)

Copyright © Siemens AG, 2005.


2/N3/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
2.2 Cam signals and cam positions

Suppression of In SW version 6.3 and higher, MD 10485: SW_CAM_MODE Bit 1=1 can be set
signal inversion to suppress the signal inversion for plus cam – minus cam > 180 degrees.

Machine axis[m] > 180

Minus Plus Minus Plus


cam cam cam cam

Machine zero 0 90 290 0 90 290 Machine


axis[n]
(modulo rotary
axis) [degrees]

Plus cam 1
signal

Minus cam 1
signal

Digital output
0

Fig. 2-9 Software cams for modulo rotary axis (plus cam – minus cam > 180 degrees) and suppression of signal
inversion

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/2-13
Software Cams, Position Switching Signals (N3) 06.05
2.2 Cam signals and cam positions

2.2.3 Cam positions

Setting cam The cam positions of the plus and minus cams are defined via the following
positions general setting data:
SD 41500: SW_CAM_MINUS_POS_TAB_1[n] Position of minus cams 1 – 8
SD 41501: SW_CAM_PLUS_POS_TAB_1[n] Position of plus cams 1 – 8
SD 41502: SW_CAM_MINUS_POS_TAB_2[n] Position of minus cams 9 –16
SD 41503: SW_CAM_PLUS_POS_TAB_2[n] Position of plus cams 9 – 16
In addition, from SW 4.1:
SD 41504: SW_CAM_MINUS_POS_TAB_3[n] Position of minus cams 17 –24
SD 41505: SW_CAM_PLUS_POS_TAB_3[n] Position of plus cams 17 – 24
SD 41506: SW_CAM_MINUS_POS_TAB_4[n] Position of minus cams 25 – 32
SD 41507: SW_CAM_PLUS_POS_TAB_4[n] Position of plus cams 25 – 32

Note

Owing to the grouping of cam pairs (eight in each group), it is possible to assign
different access authorization levels (e.g. for machine-related and
workpiece-related cam positions).
The positions are entered in the machine coordinate system. No check is made
with respect to the maximum traversing range.

System of units From SW 5 and MD 10260: CONVERT_SCALING_SYSTEM=1 (see/G2/) the


metric/inch cam positions no longer refer to the basic system that is set but to the
measuring system set in MD 10270: POS_TAB_SCALING_SYSTEM.
MD 10270: POS_TAB_SCALING_SYSTEM=0: metric
MD 10270: POS_TAB_SCALING_SYSTEM=1: inch
The MD 10270 thus defines the measuring system for position specifications
from SD 41500 to SD 41507.
A switchover with G70/G71 or G700/G710 has no effect.

Sensing of cam To set the cam signals, the actual position of the axes is compared to the cam
positions position.

Writing/reading The setting data can be accessed for reading and writing via the MMC, PLC
of cam positions and part program.
Access operations from the part program are not synchronized with block
processing. Synchronization can only be achieved by means of a programmed
block preprocessing stop (STOPRE command).
It is possible to read and write the cam positions with FB 2 and FB 3 in the PLC
user program.

Copyright © Siemens AG, 2005.


2/N3/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
2.2 Cam signals and cam positions

Axis/cam An assignment between a cam pair and a machine axis is made via the general
assignment MD 10450: SW_CAM_ASSIGN_TAB[n] (assignment of software cams to
machine axes).

Note

Changes to an axis assignment take effect after the next NCK power-up.
Cam pairs to which no axis is assigned are not active.
A cam pair can only be assigned to one machine axis at a time.
Several cam pairs can be defined for one machine axis.

2.2.4 Lead/delay times (dynamic cam)

Times To compensate for any delays, it is possible to assign two lead or delay times
with additive action to each minus and plus cam for the cam signal output.
The two lead or delay times are entered in a machine data and a setting data.

Note
The input of negative time values causes a delay in output of cam signals.

Input in The first lead or delay time is entered in the following general machine data:
machine data
MD 10460: SW_CAM_MINUS_LEAD_TIME[n]
lead or delay time on minus cams
MD 10461: SW_CAM_PLUS_LEAD_TIME[n]
lead or delay time on plus cams
For example, the following entries can be made in these machine data:

S Constant internal delay times between actual-value sensing and cam signal
output (e.g. as determined by an oscilloscope) or

S Constant external delay times.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/2-15
Software Cams, Position Switching Signals (N3) 06.05
2.2 Cam signals and cam positions

Input in The second lead or delay time is entered in the following general setting data:
setting data
SD 41520: SW_CAM_MINUS_TIME_TAB_1[n]
lead or delay time on minus cams 1 – 8
SD 41521: SW_CAM_PLUS_TIME_TAB_1[n]
lead or delay time on plus cams 1 – 8
SD 41522: SW_CAM_MINUS_TIME_TAB_2[n]
lead or delay time on minus cams 9 – 16
SD 41523: SW_CAM_PLUS_TIME_TAB_2[n]
lead or delay time on plus cams 9 – 16
SD 41524: SW_CAM_MINUS_TIME_TAB_3[n]
lead or delay time on minus cams 17 – 24
SD 41525: SW_CAM_PLUS_TIME_TAB_3[n]
lead or delay time on plus cams 17 – 24
SD 41526: SW_CAM_MINUS_TIME_TAB_4[n]
lead or delay time on minus cams 25 – 32
SD 41527: SW_CAM_PLUS_TIME_TAB_4[n]
lead or delay time on plus cams 25 – 32
Delay times which may change during machining must, for example, be
entered in these setting data.

Copyright © Siemens AG, 2005.


2/N3/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
2.3 Output of cam signals

2.3 Output of cam signals


The cam status, i.e. cam signals, can be output to the PLC as well as to the
NCK I/Os.

Activation of cam The output of cam signals for an axis is activated via axis-specific IS “Cam
signal output activation” (DB31, ... ; DBX2.0).

Check-back signal Successful activation of all cams for an axis is signaled back to the PLC via
to PLC axis-specific IS “Cams active” (DB31, ... ; DBX62.0).

Note
Activation can also be linked to other conditions (e.g. axis referenced, RESET
effective) by the PLC user.

2.3.1 Output of cam signals to PLC

The status of the cam signals for all machine axes with activated software cams
is output to the PLC.
The status is output in the IPO cycle and is transferred to the PLC
asynchronously.

Minus cam signals The status of the minus cam signals is entered in the general IS “Minus cam
signal 1 to 32” (DB10, DBX110.0 to 113.7).

Plus cam signals The status of the plus cam signals is entered in the general IS “Plus cam
signal 1 to 32” (DB10, DBX114.0 to 117.7).

Note

If there is ... then ...


no measuring system is se- the following IS are set to “0”:
lected –Minus cam signals 1–32 (DB10, DBX110.0–113.7)
or –Plus cam signals 1–32 (DB10, DBX114.0–117.7)
IS “Cam activation” (DB31, ... –Cam active (DB31, ... ; DBX62.0)
; DBX2.0) = “0”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/2-17
Software Cams, Position Switching Signals (N3) 06.05
2.3 Output of cam signals

2.3.2 Output of cam signals to NCK I/Os in position control cycle

The signals for the cams assigned via MD 10470 to MD 10473 to a HW byte are
output in the position control cycle. Details about switching accuracy are given
further below.

The 4 onboard outputs on the NCU and a total of 32 optional external NCK
outputs are available as the digital outputs of the NCK I/Os.
References: /FB/, A4, “Digital and Analog NCK I/Os”

Hardware The assignment to the hardware bytes used is made for each eight cam pairs in
assignment both the common machine data items
MD 10470: SW_CAM_ASSIGN_FASTOUT_1 Hardware assignment for
output of cams 1 – 8 to NCK I/Os
MD 10471: SW_CAM_ASSIGN_FASTOUT_2 Hardware assignment for
output of cams 9 – 16 to NCK I/Os
MD 10472: SW_CAM_ASSIGN_FASTOUT_3 Hardware assignment for
output of cams 17 – 24 to NCK I/Os
MD 10473: SW_CAM_ASSIGN_FASTOUT_4 Hardware assignment for
output of cams 25 – 32 to NCK I/Os

Note
It is possible to define one HW byte for the output of eight minus cam signals
and one HW byte for the output of eight plus cam signals in each machine
data.
In addition, the output of the cam signals can be inverted with the two machine
data.
If the 2nd byte is not specified (= “0”), then the 8 cams are output as a logic
operation of the minus and plus cam signals via the 1st HW byte using the 1st
inversion screen form. The signal generation for the logic operation is shown in
Figs. 2-5 to 2-9.

Status query in the The status of the HW outputs can be read in the parts program with main run
parts program variable $A_OUT[n] (n = no. of output bit).

Switching Signals are output to the NCK I/Os or onboard outputs in the position control
accuracy cycle. Owing to the time grid of the position control cycle, the switching
accuracy of the cam signals is limited as a function of velocity.
In this case: Delta pos = Vact * position control cycle

Copyright © Siemens AG, 2005.


2/N3/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
2.3 Output of cam signals

Parameters Delta pos: Switching accuracy (governed by position control cycle)


Vact: Current axis velocity

Example Vact = 20 m/min, pos. contr. cycle = 4 ms Delta pos = 1.33 mm


Vact = 2000 rev/min, pos. contr. cycle = 2 ms Delta pos = 24 degrees

2.3.3 Timer-controlled cam signal output

Timer-controlled A significantly higher degree of accuracy can be achieved by outputting the cam
output signals independently of the position control cycle using a timer interrupt.
General MD 10480: SW_CAM_TIMER_FASTOUT_MASK (mask for the output
of cam signals via timer interrupts on NCU) can be set to select timer-controlled
output to the 4 NCU onboard outputs for 4 cam pairs.
In this case, the minus and plus signals of a cam pair are gated for output as
one signal. The signal generation for the logic operation is shown in Figs. 2-5
to 2-9.

Signal generation MD 10485: SW_CAM_MODE bit 1 must first be set to define the method of
generation of the signals to be gated. If the bit is not set, the signals are
generated according to 2.2.1:
Inversion of signal response of plus cam when
plus cam – minus cam >= 180 degrees
If the bit is set, then the signal response shown in 2.2.2 is selected:
No inversion of signal response of plus cam when
plus cam – minus cam >= 180 degrees
The setting option is available in SW version 6.2 and higher. In earlier software
versions without MD 10485: SW_CAM_MODE the variant with inversion shown
in 2.2.1 is always set.

Note
This function works independently of the assignment set in
MD 10470: SW_CAM_ASSIGN_FASTOUT_1 or
MD 10471: SW_CAM_ASSIGN_FASTOUT_2 or
MD 10472: SW_CAM_ASSIGN_FASTOUT_3 or
MD 10473: SW_CAM_ASSIGN_FASTOUT_4.

The onboard byte may not be used more than once at any one time.

Restrictions The following applies to the mutual position of the cam positions:

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/2-19
Software Cams, Position Switching Signals (N3) 06.05
2.3 Output of cam signals

Only one signal is output on a timer-controlled basis per IPO cycle. If there are
signal changes for more than one cam pair in an IPO cycle, then the signals are
output on a priority basis:
The cam pair with the lowest number (1 ... 32) determines the instant at which
all pending signals are output, i.e. the signal change of the other cam pairs
takes place at the same instant in time.

PLC interface The NCK image of the onboard outputs and the status of the plus and minus
cams is displayed on the PLC interface.
These signals are irrelevant, however, or correspondingly inaccurate with the
timer-controlled cam output variant, as described in the following paragraphs.
The signals for plus and minus cams are generated synchronously (once) in the
interpolation cycle and passed together to the PLC.
Pulses shorter than one interpolation cycle are thus not visible in the PLC. The
onboard outputs are set and reset by interrupt asynchronously to the
interpolation cycle.
The status of the onboard outputs are acquired in synchronism with the update
of the PLC interface and transferred to the PLC.
Depending on the current status at the moment the PLC interface is updated,
pulses shorter than one interpolation cycle are not visible or are displayed
stretched by one or several IPO cycles.

Further settings General MD 10485: SW_CAM_MODE is available in SW version 6.2 and


higher. If the signal response described here is to be selected, then bit 0 must
be set to 0 in this MD. This MD does not exist in older SW versions. The
described response is implicitly selected if MD 10480:
SW_CAM_FASTOUT_MASK is set accordingly.

2.3.4 Independent, timer-controlled output of cam signals


(SW 6.2 and higher)

Each switching edge is output separately per interrupt due to the


timer-controlled, independent (of interpolation cycle) cam output. The interaction
between cam signals described in 2.3.3 as a result of:
– single output per interpolation cycle
– output time determined by highest priority cam pair (lowest cam pair
number)
does not take place.
A total of eight timer-controlled cam outputs per interpolation cycle can be
configured for setting/resetting the four onboard outputs. The signal states of
the plus and minus cams are also made available as standard on the PLC
interface for the timer-controlled variant, but they are not relevant or accurate
with a timer-controlled output.

Copyright © Siemens AG, 2005.


2/N3/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
2.3 Output of cam signals

Signal generation MD 10485: SW_CAM_MODE bit 1 must first be set to define the method of
generation of the signals to be gated. The signal generation for the logic
operation is shown in Figs. 2-5 to 2-9. If the bit is not set, the signals are
generated according to 2.2.1:
Inversion of signal response of plus cam when
plus cam – minus cam >= 180 degrees
If the bit is set, then the signal response shown in 2.2.2 is selected:
No inversion of signal response of plus cam when
plus cam – minus cam >= 180 degrees

Settings The assignment of cams pair to onboard outputs is parameterized, as with


2.3.3, in MD 10480: SW_CAM_TIMER_FASTOUT_MASK (screen form for
output of cam signals via timer interrupts on NCU). This processing method
must also be selected explicitly via general MD 10485: SW_CAM_MODE
bit 0=1.

Note
This function works independently of the assignment set in
MD 10470: SW_CAM_ASSIGN_FASTOUT_1 or
MD 10471: SW_CAM_ASSIGN_FASTOUT_2 or
MD 10472: SW_CAM_ASSIGN_FASTOUT_3 or
MD 10473: SW_CAM_ASSIGN_FASTOUT_4.

The onboard byte may not be used more than once at any one time.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/2-21
Software Cams, Position Switching Signals (N3) 06.05
2.4 Position-time cam

2.4 Position-time cam

Definition The term “Position-time cam” refers to a pair of software cams that can supply a
pulse of a certain duration at a defined axis position.

Solution The position is defined by a pair of software cams. The pulse duration is defined
by the lead/delay time of the plus cam. MD can be parameterized to select that
cam pairs with
minus cam position = plus cam position
must be processed as position-time cams.

Properties of
position-time cams
S The pulse duration is independent of the axis velocity and travel direction
reversal.

S The pulse duration is independent of changes in the axis position (Preset).


S The cam is activated (ON edge) only when the cam position is crossed.
Moving the axis position (e.g. Preset) does not activate the cam.

S A lead/delay time is operative for the minus cam and causes a time
displacement of the pulse.

S Activation (ON edge) and pulse duration are independent of the travel
direction.

S The cam is not deactivated if the cam position is crossed again when the
cam is active (direction reversal).

S The cam time (pulse width) is not interrupted and the cam time not restarted
when the cam position is crossed again.
This behavior is particularly relevant with respect to modulo axes, i.e. if the
cam time is greater than the modulo range crossing time, the cam is not
switched in every revolution.

Settings The following settings must be made to program a position-time cam:


Position:
The position must be defined by a cam pair with which the minus cam position =
the plus cam position. The position is parameterized according to 2.2.3 by
setting data 41500 to 41507.
Pulse duration:
The pulse duration is the product of the associated entries for the cam pair in:
MD10461: SW_CAM_PLUS_LEAD_TIME[n] and
SD 41521: SW_CAM_PLUS_TIME_TAB_1[n]...
SD 41527: SW_CAM_PLUS_TIME_TAB_4[n]

Copyright © Siemens AG, 2005.


2/N3/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.01
06.05 Software Cams, Position Switching Signals (N3)
2.4 Position-time cam

Displacement:
The time displacement of the position-time cam is the product of the associated
entries for the cam pair in:
MD10460: SW_CAM_MINUS_LEAD_TIME[n] and
SD 41520: SW_CAM_MINUS_TIME_TAB_1[n]...
SD 41526: SW_CAM_MINUS_TIME_TAB_4[n]
Mode:
Bit 2 = 1 must be set in MD 10485: to ensure that all cam pairs with the same
values for minus cam and plus cam positions are treated as position-time cams.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/2-23
Software Cams, Position Switching Signals (N3) 06.05
2.4 Position-time cam

Notes

Copyright © Siemens AG, 2005.


2/N3/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)

Supplementary Conditions 3
Availability of The function is an option and is available for
function “Software
cams, position
S SINUMERIK 840D with NCU 572/573, SW2 and higher
switching signals” S SINUMERIK 810D, SW 3.2 and higher

Extensions The extension:

S 32 instead of 16 cam pairs


is available in SW 4.1and higher.
The extensions:

S Independent, timer-controlled output (see 2.3.4)


S Position-time cam (see 2.4)
S Suppression of signal inversion for timer-controlled outputs
(see 2.2.2)
are available in SW 6.3 and higher
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/3-25
Software Cams, Position Switching Signals (N3) 06.05

Notes

Copyright © Siemens AG, 2005.


2/N3/3-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
4.1 General machine data

Data Descriptions (MD, SD) 4


4.1 General machine data

10450 SW_CAM_ASSIGN_TAB[n]
MD number Assignment of software cams to machine axes
Default setting: 0 Minimum input limit: 0 Maximum input limit: 8 or 31
Changes effective after POWER ON Protection level: 2/4 Unit: –
Data type: BYTE Applies from SW: 2.1 or 4.1
Meaning: This machine data allows one machine axis to be assigned to each of the 32 (16) possible
cam pairs (comprising one minus and one plus cam).
When a “0” is entered, the appropriate cam is not processed.
The cam signal output is activated via the axial IS “Cam activation” (DB31, ... ;, DBX2.0).
Index [n] of the machine data addresses the cam pair:
n = 0, 1, ... , 31 corresponds to cam pair 1, 2, ... , 32
Application example(s) Cam pair 1 must be assigned to machine axis 3 and cam pair 3 to machine axis 4. Cam
pair 2 is not to be assigned to any axis.
⇒MD: SW_CAM_ASSIGN_TAB[0]= 3
MD: SW_CAM_ASSIGN_TAB[1]= 0
MD: SW_CAM_ASSIGN_TAB[2]= 4
Related to .... IS “Cam activation” (DB31–48, DBX2.0)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/4-27
Software Cams, Position Switching Signals (N3) 06.05
4.1 General machine data

10460 SW_CAM_MINUS_LEAD_TIME[n]
MD number Lead or delay time on minus cams 1 – 16
Default setting: 0.0 Minimum input limit: *** Maximum input limit: ***
Changes effective after POWER ON Protection level: 2/4 Unit: s
Data type: DOUBLE Applies as of SW 2.1
Meaning: A lead or delay time can be assigned to each minus cam 1–16 in this machine data to
compensate for delay times.
The switching edge of the associated cam signal is advanced or delayed by the time value
entered.
Positive value:  Lead time
Negative value:  Delay time
Index [n] of the machine data addresses the cam pair:
n = 0, 1, ... , 15 corresponds to cam pair 1, 2, ... , 16
This machine data is added to setting data
SW_CAM_MINUS_TIME_TAB_1[n] and SW_CAM_MINUS_TIME_TAB_2[n].
Related to .... SD: SW_CAM_MINUS_TIME_TAB_1[n] (lead or delay time on minus cams 1 – 8)
SD: SW_CAM_MINUS_TIME_TAB_2[n] (lead or delay time on minus cams 9 – 16)

10461 SW_CAM_PLUS_LEAD_TIME[n]
MD number Lead or delay time on plus cams 1 – 16
Default setting: 0.0 Minimum input limit: *** Maximum input limit: ***
Changes effective after POWER ON Protection level: 2/4 Unit: s
Data type: DOUBLE Applies as of SW 2.1
Meaning: A lead or delay time can be assigned to each plus cam 1–16 in this machine data to com-
pensate for delay times.
The switching edge of the associated cam signal is advanced or delayed by the time value
entered.
Positive value:  Lead time
Negative value:  Delay time
Index [n] of the machine data addresses the cam pair:
n = 0, 1, ... , 15 corresponds to cam pair 1, 2, ... , 16
This machine data is added to setting data SW_CAM_PLUS_TIME_TAB_1[n] and
SW_CAM_PLUS_TIME_TAB_2[n].
Related to .... SD: SW_CAM_PLUS_TIME_TAB_1[n] (lead or delay time on plus cams 1 – 8)
SD: SW_CAM_PLUS_TIME_TAB_2[n] (lead or delay time on plus cams 9 – 16)

Copyright © Siemens AG, 2005.


2/N3/4-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
4.1 General machine data

10470 SW_CAM_ASSIGN_FASTOUT_1
MD number Hardware assignment for output of cams 1 – 8 to NCK I/Os
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after POWER ON Protection level: 2/4 Unit: HEX
Data type: DWORD Applies as of SW 2.1
Meaning: The cam signal status can be output to the NCK I/Os as well as to the PLC.
The hardware assignment of the minus and plus cam signals to the digital output bytes
used can be made in this machine data for cam pairs 1 – 8.
In addition, the assigned output signals can be inverted with this machine data.
The MD is coded as follows:
Bit 0–7: Number of 1st HW byte used with digital outputs
Bit 8–15: Number of 2nd HW byte used with digital outputs
Bit 16–23: Inversion screen form for writing 1st HW byte used
Bit 24–31: Inversion screen form for writing 2nd HW byte used
Bit=0: Do not invert
Bit=1: Invert
If both HW bytes are specified, the 1st byte contains the minus cam signals and the 2nd
byte the plus cam signals.
If the 2nd byte is not specified (= “0”), then the 8 cams are output as an AND operation of
the minus and plus cam signals via the 1st HW byte using the 1st inversion screen form.
The status of the non-inverted output signal for linear axes and for rotary axes with “plus
cam – minus cam < 180 degrees” is:
“1” between minus and plus cams
“0” outside this range

The status of the non-inverted output signal for rotary axes with “plus cam – minus cam 
180 degrees”:
“0” between minus and plus cams
“1” outside this range
The following must be specified as the byte address for the digital outputs:
1: for onboard byte
2 – 5: for external bytes
Application example(s) The minus cam signals must be output via the onboard byte.
The plus cam signals must be output via byte address 3 on the NCU terminal block.
The following must also be inverted:
Minus cam signal 2, 4, 5 (corresponds to bits 1, 3, 4 of 1st HW byte)
Plus cam signal 1, 3, 4 (corresponds to bits 0, 2, 3 or 2nd HW byte)
 MD: SW_CAM_ASSIGN_FASTOUT_1=‘H0D1A0301’

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/4-29
Software Cams, Position Switching Signals (N3) 06.05
4.1 General machine data

10471 SW_CAM_ASSIGN_FASTOUT_2
MD number Hardware assignment for output of cams 9 – 16 to NCK I/Os
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after POWER ON Protection level: 2/4 Unit: HEX
Data type: DWORD Applies as of SW 2.1
Meaning: The cam signal status can be output to the NCK I/Os as well as to the PLC.
The hardware assignment of the minus and plus cam signals to the digital output bytes
used can be made in this machine data for cam pairs 9 – 16.
In addition, the assigned output signals can be inverted with this machine data.
The MD is coded as follows:
Bit 0–7: Number of 1st HW byte used with digital outputs
Bit 8–15: Number of 2nd HW byte used with digital outputs
Bit 16–23: Inversion screen form for writing 1st HW byte used
Bit 24–31: Inversion screen form for writing 2nd HW byte used
Bit=0: Do not invert
Bit=1: Invert
If both HW bytes are specified, the 1st byte contains the minus cam signals and the 2nd
byte the plus cam signals.
If the 2nd byte is not specified (= “0”), then the 8 cams are output as an AND operation of
the minus and plus cam signals via the 1st HW byte using the 1st inversion screen form.
The status of the non-inverted output signal for linear axes and for rotary axes with “plus
cam – minus cam < 180 degrees” is:
“1” between minus and plus cams
“0” outside this range

The status of the non-inverted output signal for rotary axes with “plus cam – minus cam 
180 degrees”:
“0” between minus and plus cams
“1” outside this range
The following must be specified as the byte address for the digital outputs:
1: for onboard byte
2 – 5: for external bytes
Application example(s) See MD: SW_CAM_ASSIGN_FASTOUT_1

Copyright © Siemens AG, 2005.


2/N3/4-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
4.1 General machine data

10472 SW_CAM_ASSIGN_FASTOUT_3
MD number Hardware assignment for output of cams 17 – 24 to NCK I/Os
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after POWER ON Protection level: 2/7 Unit: HEX
Data type: DWORD Applies as of SW 4.1
Meaning: The cam signal status can be output to the NCK I/Os as well as to the PLC.
The hardware assignment of the minus and plus cam signals to the digital output bytes
used can be made in this machine data for cam pairs 17 – 24.
In addition, the assigned output signals can be inverted with this machine data.
The MD is coded as follows:
Bit 0–7: Number of 1st HW byte used with digital outputs
Bit 8–15: Number of 2nd HW byte used with digital outputs
Bit 16–23: Inversion screen form for writing 1st HW byte used
Bit 24–31: Inversion screen form for writing 2nd HW byte used
Bit=0: Do not invert
Bit=1: Invert
If both HW bytes are specified, the 1st byte contains the minus cam signals and the 2nd
byte the plus cam signals.
If the 2nd byte is not specified (= “0”), then the 8 cams are output as an AND operation of
the minus and plus cam signals via the 1st HW byte using the 1st inversion screen form.
The status of the non-inverted output signal for linear axes and for rotary axes with “plus
cam – minus cam < 180 degrees” is:
“1” between minus and plus cams
“0” outside this range

The status of the non-inverted output signal for rotary axes with “plus cam – minus cam 
180 degrees”:
“0” between minus and plus cams
“1” outside this range
The following must be specified as the byte address for the digital outputs:
1: for onboard byte
2 – 5: for external bytes
Application example(s) See MD: SW_CAM_ASSIGN_FASTOUT_1

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/4-31
Software Cams, Position Switching Signals (N3) 06.05
4.1 General machine data

10473 SW_CAM_ASSIGN_FASTOUT_4
MD number Hardware assignment for output of cams 25 – 32 to NCK I/Os
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after POWER ON Protection level: 2/7 Unit: HEX
Data type: DWORD Applies as of SW 4.1
Meaning: The cam signal status can be output to the NCK I/Os as well as to the PLC.

The hardware assignment of the minus and plus cam signals to the digital output bytes
used can be made in this machine data for cam pairs 25 – 32.
In addition, the assigned output signals can be inverted with this machine data.
The MD is coded as follows:
Bit 0–7: Number of 1st HW byte used with digital outputs
Bit 8–15: Number of 2nd HW byte used with digital outputs
Bit 16–23: Inversion screen form for writing 1st HW byte used
Bit 24–31: Inversion screen form for writing 2nd HW byte used
Bit=0: Do not invert
Bit=1: Invert
If both HW bytes are specified, the 1st byte contains the minus cam signals and the 2nd
byte the plus cam signals.
If the 2nd byte is not specified (= “0”), then the 8 cams are output as an AND operation of
the minus and plus cam signals via the 1st HW byte using the 1st inversion screen form.
The status of the non-inverted output signal for linear axes and for rotary axes with “plus
cam – minus cam < 180 degrees” is:
“1” between minus and plus cams
“0” outside this range

The status of the non-inverted output signal for rotary axes with “plus cam – minus cam 
180 degrees”:
“0” between minus and plus cams
“1” outside this range
The following must be specified as the byte address for the digital outputs:
1: for onboard byte
2 – 5: for external bytes
Application example(s) See MD: SW_CAM_ASSIGN_FASTOUT_1

Copyright © Siemens AG, 2005.


2/N3/4-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
4.1 General machine data

10480 SW_CAM_TIMER_FASTOUT_MASK
MD number Screen form for output of cam signals via timer interrupts to NCU
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after POWER ON Protection level: 2/4 Unit: HEX
Data type: DWORD Applies as of SW 2.1
Meaning: A timer-controlled output to the 4 onboard outputs of the NCK I/Os can be selected in this
machine data for four cam pairs.
In this case, the minus and plus signals of a cam pair are “EXCLUSIVE ORed” for output
as one signal.
Meaning for set bit:
Associated cam (minus and plus cam signals EXCLUSIVE ORed) is output via a timer
interrupt at one of the four onboard outputs of the NCU.
The onboard outputs are allocated in ascending order of machine axis numbers (with as-
signed cam pairs).
Example 1:
Machine axis 3 = Cam pair 1 ––> Onboard output 3
Machine axis 1 = Cam pair 2 ––> Onboard output 1
Machine axis 7 = Cam pair 3 ––> Onboard output 4
Machine axis 2 = Cam pair 4 ––> Onboard output 2
If several cam pairs are set for a machine axis, the allocation for this axis
is in ascending order of cam pairs.
Example 2:
Machine axis 3 = Cam pair 1 ––> Onboard output 2
Machine axis 3 = Cam pair 2 ––> Onboard output 3
Machine axis 7 = Cam pair 3 ––> Onboard output 4
Machine axis 2 = Cam pair 4 ––> Onboard output 1
This function works independently of the assignment set in MD: SW_CAM_AS-
SIGN_FASTOUT_1 or MD: SW_CAM_ASSIGN_FASTOUT_2.
Note: The onboard byte may not be used more than once at any one time.
If there is more than one signal change in the IPO cycle for the cam pairs specified in the
MD, then the cam pair with the lowest number determines the instant of output. The other
signal changes take place at the same time.
SW 6.3 and higher If MD 10485 bit 0 = 1, independent, timer-controlled output, up to 8 cam
signals per interpolation cycle can be output differentially to the onboard outputs.
(see 2.3.4)
Application example(s) The signals of cam pairs 2, 5 and 7 must be output on a timer-controlled basis:
 MD: SW_CAM_TIMER_FASTOUT_MASK= ‘H52’
 Signal for cam pair 2 to onboard output 1 of NCK
Signal for cam pair 5 to onboard output 2 of NCK
Signal for cam pair 7 to onboard output 3 of NCK
Related to .... MD 10485: SW_CAM_MODE

10485 SW_CAM_MODE
MD number Response of SW cams
Default setting: 0 Minimum input limit: 0 Maximum input limit: 7
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies as of SW 6.3

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/4-33
Software Cams, Position Switching Signals (N3) 06.05
4.1 General machine data

10485 SW_CAM_MODE
MD number Response of SW cams
Meaning: Definition of response of SW cams:

Bit 0:(LSB) Independent timer-controlled cam output


Bit 1: Suppression of signal inversion for timer-controlled
cam output
Bit 2: Position-time cam
Bit 3: Reserved
Bit 4: Unassigned
Meaning of individual bits:
Bit 0 = 0: If there is more than 1 signal change in the IPO cycle
for the cam specified in MD SW_CAM_TIMER_FAST-
OUT_MASK, then the cam with the lowest number
determines the time of output. The other signal
changes take place at the same time, i.e.
a maximum of one interrupt-driven output
takes place in each interpolation cycle.
Bit 0 = 1: Every cam specified in MD SW_CAM_TIMER_FAST
OUT_MASK is output at exactly the right time in the
interpolation cycle. No output priorities apply to the
cams.
A maximum of eight interrupt-driven outputs take place
in each interpolation cycle.

Bit 1 = 0: Inversion of the signal response of the plus cam when


plus cam – minus cam >= 180 deg.
Bit 1 = 1: No inversion of signal response of
plus cam when
plus cam – minus cam >= 180 deg.

Signal response onboard output:


Overtraveling:

Minus cam Plus cam


Travel direction:
Positive
0–>1 1–>0
Negative
1–>0 0–>1

Bit 2 = 0: Not a position-time cam


Bit 2 = 1: Position-time cam for cams with
minus position = plus position
The applied lead/delay time (plus cam)
is operative irrespective of:
– the axis velocity
– the axis position
– a reversal in the direction of travel

The cam is activated only when the cam position is


crossed.
A lead/delay time for the minus cam is
effective and results in displacement of the entire cam

Bit 3 Reserved

Bit 4 = 0: and following unassigned

Related to .... MD 10480: SW_CAM_TIMER_FASTOUT_MASK


References FM 357–2 multi-axis module

Copyright © Siemens AG, 2005.


2/N3/4-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
4.2 General setting data

4.2 General setting data

41500 SW_CAM_MINUS_POS_TAB_1[n]
SD number Position of minus cams 1 – 8
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: mm, degrees
Data type: DOUBLE Applies as of SW 2.1
Meaning: The cam position of minus cams 1 – 8 is entered in this machine data.
The positions are entered in the machine coordinate system.
The response when the cam positions are overtraveled by linear and modulo rotary axes is
described in Subsection 2.2.1.
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 1, 2, ... , 8
The cam positions refer to the configured system of units:
MD 10270: POS_TAB_SCALING_SYSTEM=0: metric
MD 10270: POS_TAB_SCALING_SYSTEM=1: inch

41501 SW_CAM_PLUS_POS_TAB_1[n]
SD number Position of plus cams 1 – 8
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: mm, degrees
Data type: DOUBLE Applies as of SW 2.1
Meaning: The cam position of plus cams 1 – 8 is entered in this machine data.
The positions are entered in the machine coordinate system.
The response when the cam positions are overtraveled by linear and modulo rotary axes is
described in Subsection 2.2.1.
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 1, 2, ... , 8
The cam positions refer to the configured system of units:
MD 10270: POS_TAB_SCALING_SYSTEM=0: metric
MD 10270: POS_TAB_SCALING_SYSTEM=1: inch

41502 SW_CAM_MINUS_POS_TAB_2[n]
SD number Position of minus cams 9 – 16
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: mm, degrees
Data type: DOUBLE Applies as of SW 2.1
Meaning: The cam position of minus cams 9 – 16 is entered in this machine data.
The positions are entered in the machine coordinate system.
The response when the cam positions are overtraveled by linear and modulo rotary axes is
described in Subsections 2.2.1 and 2.2.2.
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 9, 10, ... , 16
The cam positions refer to the configured system of units:
MD 10270: POS_TAB_SCALING_SYSTEM=0: metric
MD 10270: POS_TAB_SCALING_SYSTEM=1: inch

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/4-35
Software Cams, Position Switching Signals (N3) 06.05
4.2 General setting data

41503 SW_CAM_PLUS_POS_TAB_2[n]
SD number Position of plus cams 9 – 16
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: mm, degrees
Data type: DOUBLE Applies as of SW 2.1
Meaning: The cam position of plus cams 9 – 16 is entered in this machine data.
The positions are entered in the machine coordinate system.
The response when the cam positions are overtraveled by linear and modulo rotary axes is
described in Subsections 2.2.1 and 2.2.2.
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 9, 10, ... , 16
The cam positions refer to the configured system of units:
MD 10270: POS_TAB_SCALING_SYSTEM=0: metric
MD 10270: POS_TAB_SCALING_SYSTEM=1: inch

41504 SW_CAM_MINUS_POS_TAB_3[n]
SD number Position of minus cams 17 – 24
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: mm, degrees
Data type: DOUBLE Applies as of SW 4.1
Meaning: The cam position of minus cams 17 – 24 is entered in this machine data.
The positions are entered in the machine coordinate system.
The response when the cam positions are overtraveled by linear and modulo rotary axes is
described in Subsections 2.2.1 and 2.2.2.
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 17, 18, ... , 24
The cam positions refer to the configured system of units:
MD 10270: POS_TAB_SCALING_SYSTEM=0: metric
MD 10270: POS_TAB_SCALING_SYSTEM=1: inch

41505 SW_CAM_PLUS_POS_TAB_3[n]
SD number Position of plus cams 17 – 24
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: mm, degrees
Data type: DOUBLE Applies as of SW 4.1
Meaning: The cam position of plus cams 17 – 24 is entered in this machine data.
The positions are entered in the machine coordinate system.
The response when the cam positions are overtraveled by linear and modulo rotary axes is
described in Subsections 2.2.1 and 2.2.2.
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 17, 18, ... , 24
The cam positions refer to the configured system of units:
MD 10270: POS_TAB_SCALING_SYSTEM=0: metric
MD 10270: POS_TAB_SCALING_SYSTEM=1: inch

Copyright © Siemens AG, 2005.


2/N3/4-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
4.2 General setting data

41506 SW_CAM_MINUS_POS_TAB_4[n]
SD number Position of minus cams 25 – 32
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: mm, degrees
Data type: DOUBLE Applies as of SW 4.1
Meaning: The cam position of plus cams 25 – 32 is entered in this machine data.
The positions are entered in the machine coordinate system.
The response when the cam positions are overtraveled by linear and modulo rotary axes is
described in Subsections 2.2.1 and 2.2.2.
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 25, 26, ... , 32
The cam positions refer to the configured system of units:
MD 10270: POS_TAB_SCALING_SYSTEM=0: metric
MD 10270: POS_TAB_SCALING_SYSTEM=1: inch

41507 SW_CAM_PLUS_POS_TAB_4[n]
SD number Position of plus cams 25 – 32
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: mm, degrees
Data type: DOUBLE Applies as of SW 4.1
Meaning: The cam position of plus cams 25 – 32 is entered in this machine data.
The positions are entered in the machine coordinate system.
The response when the cam positions are overtraveled by linear and modulo rotary axes is
described in Subsections 2.2.1 and 2.2.2.
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 25, 26, ... , 32
The cam positions refer to the configured system of units:
MD 10270: POS_TAB_SCALING_SYSTEM=0: metric
MD 10270: POS_TAB_SCALING_SYSTEM=1: inch

41520 SW_CAM_MINUS_TIME_TAB_1[n]
SD number Lead or delay time on minus cams 1 – 8
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: s
Data type: DOUBLE Applies as of SW 2.1
Meaning: A lead or delay time can be assigned to each minus cam 1 – 8 in this setting data to com-
pensate for delay times.
The switching edge of the associated cam signal is advanced or delayed by the time value
entered.
Positive value: Lead time
Negative value: Delay time
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 1, 2, ... , 8
This setting data is added to MD: SW_CAM_MINUS_LEAD_TIME[n].
SW 6.3 and higher: The time settings act as a displacement in the trigger position on posi-
tion-time cams.
Related to .... MD: SW_CAM_MINUS_LEAD_TIME[n] (lead or delay time on minus cams 1 – 32)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/4-37
Software Cams, Position Switching Signals (N3) 06.05
4.2 General setting data

41521 SW_CAM_PLUS_TIME_TAB_1[n]
SD number Lead or delay time on plus cams 1 – 8
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: s
Data type: DOUBLE Applies as of SW 2.1
Meaning: A lead or delay time can be assigned to each plus cam 1 – 8 in this setting data to com-
pensate for delay times.
The switching edge of the associated cam signal is advanced or delayed by the time value
entered.
Positive value: Lead time
Negative value: Delay time
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 1, 2, ... , 8
This setting data is added to MD: SW_CAM_PLUS_LEAD_TIME[n].
SW 6.3 and higher: The time settings act as the pulse duration on position–time cams.
Related to .... MD: SW_CAM_PLUS_LEAD_TIME[n] (lead or delay time on plus cams 1 – 32)

41522 SW_CAM_MINUS_TIME_TAB_2[n]
SD number Lead or delay time on minus cams 9 – 16
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: s
Data type: DOUBLE Applies as of SW 2.1
Meaning: A lead or delay time can be assigned to each minus cam 9 – 16 in this setting data to com-
pensate for delay times.
The switching edge of the associated cam signal is advanced or delayed by the time value
entered.
Positive value: Lead time
Negative value: Delay time
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 9, 10, ... , 16
This setting data is added to MD: SW_CAM_MINUS_LEAD_TIME[n+8].
SW 6.3 and higher: The time settings act as a displacement in the trigger position on posi-
tion-time cams.
Related to .... MD: SW_CAM_MINUS_LEAD_TIME[n] (lead or delay time on minus cams 1 – 32)

41523 SW_CAM_PLUS_TIME_TAB_2[n]
SD number Lead or delay time on plus cams 9 – 16
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: s
Data type: DOUBLE Applies as of SW 2.1

Copyright © Siemens AG, 2005.


2/N3/4-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
4.2 General setting data

41523 SW_CAM_PLUS_TIME_TAB_2[n]
SD number Lead or delay time on plus cams 9 – 16
Meaning: A lead or delay time can be assigned to each plus cam 9 – 16 in this setting data to com-
pensate for delay times.
The switching edge of the associated cam signal is advanced or delayed by the time value
entered.
Positive value: Lead time
Negative value: Delay time
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 9, 10, ... , 16
This setting data is added to MD: SW_CAM_PLUS_LEAD_TIME[n+8].
SW 6.3 and higher: The time settings act as the pulse duration on position-time cams.
Related to .... MD: SW_CAM_PLUS_LEAD_TIME[n] (lead or delay time on plus cams 1 – 32)

41524 SW_CAM_MINUS_TIME_TAB_3[n]
SD number Lead or delay time on minus cams 17 – 24
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: s
Data type: DOUBLE Applies as of SW 4.1
Meaning: A lead or delay time can be assigned to each minus cam 17 – 24 in this setting data to
compensate for delay times.
The switching edge of the associated cam signal is advanced or delayed by the time value
entered.
Positive value: Lead time
Negative value: Delay time
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 17, 18, ... , 24
This setting data is added to MD: SW_CAM_MINUS_LEAD_TIME[n+16].
SW 6.3 and higher: The time settings act as a displacement in the trigger position on posi-
tion-time cams.
Related to .... MD: SW_CAM_MINUS_LEAD_TIME[n] (lead or delay time on minus cams 1 – 32)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/4-39
Software Cams, Position Switching Signals (N3) 06.05
4.2 General setting data

41525 SW_CAM_PLUS_TIME_TAB_3[n]
SD number Lead or delay time on plus cams 17 – 24
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: s
Data type: DOUBLE Applies as of SW 4.1
Meaning: A lead or delay time can be assigned to each plus cam 17 – 24 in this setting data to com-
pensate for delay times.
The switching edge of the associated cam signal is advanced or delayed by the time value
entered.
Positive value: Lead time
Negative value: Delay time
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 17, 18, ... , 24
This setting data is added to MD: SW_CAM_PLUS_LEAD_TIME[n+16].
SW 6.3 and higher: The time settings act as the pulse duration on position-time cams.
Related to .... MD: SW_CAM_PLUS_LEAD_TIME[n] (lead or delay time on plus cams 1 – 32)

41526 SW_CAM_MINUS_TIME_TAB_4[n]
SD number Lead or delay time on minus cams 25 – 32
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: s
Data type: DOUBLE Applies as of SW 4.1
Meaning: A lead or delay time can be assigned to each minus cam 25 – 32 in this setting data to
compensate for delay times.
The switching edge of the associated cam signal is advanced or delayed by the time value
entered.
Positive value: Lead time
Negative value: Delay time
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 7 corresponds to cam pair 25, 26, ... , 32
This setting data is added to MD: SW_CAM_MINUS_LEAD_TIME[n+24].
SW 6.3 and higher: The time settings act as a displacement in the trigger position on posi-
tion-time cams.
Related to .... MD: SW_CAM_MINUS_LEAD_TIME[n] (lead or delay time on minus cams 1 – 32)

Copyright © Siemens AG, 2005.


2/N3/4-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
4.2 General setting data

41527 SW_CAM_PLUS_TIME_TAB_4[n]
SD number Lead or delay time on plus cams 25 – 32
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective immediately Protection level: 7/7 Unit: s
Data type: DOUBLE Applies as of SW 4.1
Meaning: A lead or delay time can be assigned to each plus cam
25 – 32 in this setting data to compensate for delay times.
The switching edge of the associated cam signal is advanced or delayed by the time value
entered.
Positive value: Lead time
Negative value: Delay time
Index [n] of the setting data addresses the cam pair:
n = 0, 1, ... , 32 corresponds to cam pair 25, 26, ... , 32
This setting data is added to MD: SW_CAM_PLUS_LEAD_TIME[n+24].
SW 6.3 and higher: The time settings act as the pulse duration on position-time cams.
Related to .... MD: SW_CAM_PLUS_LEAD_TIME[n] (lead or delay time on plus cams 1 – 32)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/4-41
Software Cams, Position Switching Signals (N3) 06.05
4.2 General setting data

Notes

Copyright © Siemens AG, 2005.


2/N3/4-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
5.1 Signal overview

Signal Descriptions 5
5.1 Signal overview

Signals from NCK

Minus cam signal 1 (DB10, DBX110.0)


Software cam : : :
Minus cam signal 32(DB10, DBX113.7)

Plus cam signal 1 (DB10, DBX114.0)


: : :
Plus cam signal 32 (DB10, DBX117.7)

Axis/spindle n

Signal to Signal from


axis/spindle Axis/spindle 3 axis/spindle
Axis/spindle 2
Axis/spindle 1

Cam activation
(DB31, ... ; DBX2.0) Software cam Cam active (DB31–62, DBX62.0)

Fig. 5-1 PLC interface signals for “Software cams, position switching signals”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/5-43
Software Cams, Position Switching Signals (N3) 06.05
5.2 General signals

5.2 General signals

5.2.1 Signals from NCK

DB10 Minus cam signals 1–32


DBX110.0–113.7
Data Block Signal(s) from NCK (NCK ! PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The switching edge of the minus cam signal 1–32 is generated as a function of the travers-
transition 0 –––> 1 ing direction of the (rotary) axis and transferred to the PLC interface in the IPO cycle.
Linear axis:
– The minus cam signal switches from 0 to 1 if the axis overtravels the minus cam in
the negative axis direction.
Modulo rotary axis:
– The minus cam signal changes level in response to every positive edge of the plus
cam signal.
Signal state 0 or signal Linear axis:
transition 1 –––> 0 – The minus cam signal switches from 1 to 0 when the axis traverses the minus cam
in the positive axis direction.
Modulo rotary axis:
– The minus cam signal changes level in response to every positive edge of the plus
cam signal.

DB10 Plus cam signals 1–32


DBX114.0–117.7
Data Block Signal(s) from NCK (NCK ! PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The switching edge of the plus cam signal 1–32 is generated as a function of the traversing
transition 0 –––> 1 direction of the (rotary) axis and transferred to the PLC interface in the IPO cycle.
Linear axis:
– The plus cam signal switches from 0 to 1 when the axis traverses the plus cam in
the positive direction.
Modulo rotary axis:
– The plus cam signal switches from 0 to 1 when the minus cam is overtraveled in
the positive axis direction.
The described response of the plus cam applies under the condition:
Plus cam – minus cam < 180 degrees
If this condition is not fulfilled or if the minus cam is set to a greater value than the plus cam,
then the response of the plus cam signal is inverted. The response of the minus cam signal
remains unchanged.
Signal state 0 or signal Linear axis:
transition 1 –––> 0 – The plus cam signal switches from 1 to 0 if the axis overtravels the plus cam in the
negative direction.
Modulo rotary axis:
– The plus cam signal switches from 1 back to 0 if the plus cam is overtraveled in the
positive axis direction.
The described response of the plus cam applies under the condition:
Plus cam – minus cam < 180 degrees
If this condition is not fulfilled or if the minus cam is set to a greater value than the plus cam,
then the response of the plus cam signal is inverted. The response of the minus cam signal
remains unchanged.

Copyright © Siemens AG, 2005.


2/N3/5-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
5.3 Axis/spindle-specific signals

5.3 Axis/spindle-specific signals

5.3.1 Signals to axis/spindle

DB31–62 Cam activation


DBX2.0
Data Block Signal(s) to axis/spindle (PLC ! NCK)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal Output of the minus and plus cam signals of an axis to the general PLC interface is acti-
transition 0 –––> 1 vated.
The activation takes effect immediately after processing of IS “Cam activation” in the NCK.
Signal state 0 or signal The minus and plus cam signals of an axis are not output to the general PLC interface.
transition 1 –––> 0
Related to .... IS “Minus cam signal 1–32” (DB10, DBX110.0–113.7)
IS “Plus cam signal 1–32” (DB10, DBX114.0–117.7)

5.3.2 Signals from axis/spindle

DB31–62 Cams active


DBX62.0
Data Block Signal(s) from axis/spindle (NCK ! PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal All cams of the axis selected via IS “Cam activation” (DB31–48, DBX2.0) have been acti-
transition 0 –––> 1 vated successfully.
Signal state 0 or signal The cams of the axis are not activated.
transition 1 –––> 0
Related to .... IS “Cam activation” (DB31–62, DBX2.0)
IS “Minus cam signal 1–32” (DB10, DBX110.0–113.7)
IS “Plus cam signal 1–32” (DB10, DBX114.0–117.7)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/5-45
Software Cams, Position Switching Signals (N3) 06.05
5.3 Axis/spindle-specific signals

Notes

Copyright © Siemens AG, 2005.


2/N3/5-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
7.2 Machine data

Example 6
– None –
J

Data Fields, Lists 7


7.1 Interface signals

DB number Bit, byte Name Refer-


ence
General
10 110.0...110.7 Minus cam signal 1...8
10 111.0...111.7 Minus cam signal 9...16
10 112.0...112.7 Minus cam signal 17...24
10 113.0...113.7 Minus cam signal 25...32
10 114.0...114.7 Plus cam signal 1...8
10 115.0...115.7 Plus cam signal 9...16
10 116.0...116.7 Plus cam signal 17...24
10 117.0...117.7 Plus cam signal 25...32
Axis-specific
31, ... ; 2.0 Cam activation
31, ... ; 62.0 Cams active

7.2 Machine data

Number Names Name Refer-


ence
General ($MN_ ... )
10260 CONVERT_SCALING_SYSTEM Basic system switchover active G2
10270 POS_TAB_SCALING_SYSTEM System of measurement of position tables T1
10450 SW_CAM_ASSIGN_TAB[n] Assignment of software cams to machine axes

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/7-47
Software Cams, Position Switching Signals (N3) 06.01
06.05
7.3 Setting data

General ($MN_ ... )


10460 SW_CAM_MINUS_LEAD_TIME[n] Lead or delay time on minus cams 1 – 16
10461 SW_CAM_PLUS_LEAD_TIME[n] Lead or delay time on plus cams 1 – 16
10470 SW_CAM_ASSIGN_FASTOUT_1 Hardware assignment for output of cams 1 – 8
to NCK I/Os
10471 SW_CAM_ASSIGN_FASTOUT_2 Hardware assignment for output of cams 9 –
16 to NCK I/Os
10472 SW_CAM_ASSIGN_FASTOUT_3 Hardware assignment for output of cams 17 –
24 to NCK I/Os
10473 SW_CAM_ASSIGN_FASTOUT_4 Hardware assignment for output of cams 25 –
32 to NCK I/Os
10480 SW_CAM_TIMER_FASTOUT_MASK Screen form for output of cam signals via timer
interrupts to NCU
10485 SW_CAM_MODE Response of SW cams

7.3 Setting data

Number Names Name Refer-


ence
General ($SN_ ...)
41500 SW_CAM_MINUS_POS_TAB_1[n] Position of minus cams 1 – 8
41501 SW_CAM_PLUS_POS_TAB_1[n] Position of plus cams 1 – 8
41502 SW_CAM_MINUS_POS_TAB_2[n] Position of minus cams 9 – 16
41503 SW_CAM_PLUS_POS_TAB_2[n] Position of plus cams 9 – 16
41504 SW_CAM_MINUS_POS_TAB_3[n] Position of minus cams 17 – 24
41505 SW_CAM_PLUS_POS_TAB_3[n] Position of plus cams 17 – 24
41506 SW_CAM_MINUS_POS_TAB_4[n] Position of minus cams 25 – 32
41507 SW_CAM_PLUS_POS_TAB_4[n] Position of plus cams 25 – 32
41520 SW_CAM_MINUS_TIME_TAB_1[n] Lead or delay time on minus cams 1 – 8
41521 SW_CAM_PLUS_TIME_TAB_1[n] Lead or delay time on plus cams 1 – 8
41522 SW_CAM_MINUS_TIME_TAB_2[n] Lead or delay time on minus cams 9 – 16
41523 SW_CAM_PLUS_TIME_TAB_2[n] Lead or delay time on plus cams 9 – 16
41524 SW_CAM_MINUS_TIME_TAB_3[n] Lead or delay time on minus cams 17 – 24
41525 SW_CAM_PLUS_TIME_TAB_3[n] Lead or delay time on plus cams 17 – 24
41526 SW_CAM_MINUS_TIME_TAB_4[n] Lead or delay time on minus cams 25 – 32
41527 SW_CAM_PLUS_TIME_TAB_4[n] Lead or delay time on plus cams 25 – 32

Copyright © Siemens AG, 2005.


2/N3/7-48 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Software Cams, Position Switching Signals (N3)
7.4 Interrupts

7.4 Interrupts
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, Diagnostics Guide
or in the Online help.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N3/7-49
Software Cams, Position Switching Signals (N3) 06.05
7.4 Interrupts

Notes

Copyright © Siemens AG, 2005.


2/N3/7-50 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Punching and Nibbling (N4)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-5
2.1 Stroke control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-5
2.1.1 High-speed signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-5
2.1.2 Criteria for stroke initiation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-7
2.1.3 Axis start after punching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-9
2.1.4 PLC signals specific to punching and nibbling . . . . . . . . . . . . . . . . . . 2/N4/2-10
2.1.5 Punching and nibbling-specific reactions to standard PLC signals 2/N4/2-10
2.1.6 Signal monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-10
2.2 Activation and deactivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-11
2.2.1 Language commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-11
2.2.2 Expansions to punching and nibbling functions . . . . . . . . . . . . . . . . . 2/N4/2-15
2.2.3 Compatibility with earlier systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-18
2.3 Automatic path segmentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-19
2.3.1 Operating characteristics with path axes . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-20
2.3.2 Response in connection with single axes . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-24
2.4 Rotatable tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-27
2.4.1 Coupled motion of punch and die . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-28
2.4.2 Tangential control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-28
2.5 Protection zones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/2-32
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/4-33
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/4-33
4.1 Channelspecific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/4-33
4.2 Channelspecific setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/4-39
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/5-41
5.1 Signal overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/5-41
5.2 Signals to channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/5-42
5.3 Signals from channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/5-44

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/i
06.05

6 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/6-45
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/7-51
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/7-51
7.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/7-51
7.3 Setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/7-52
7.4 Language commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/7-52
7.5 Alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/N4/7-53


Copyright © Siemens AG, 2005.


2/N4/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
1 Brief Description

Brief Description 1
The functions specific to punching and nibbling operations comprise the
following

 Stroke control
 Automatic path segmentation
 Rotatable punch and die
 Clamp protection
including their activation and deactivation via language commands.


Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/1-3
Punching and Nibbling (N4) 06.05
1 Brief Description

Notes

Copyright © Siemens AG, 2005.


2/N4/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.1 Stroke control

Detailed Description 2
2.1 Stroke control
The stroke control is used in the actual machining of the workpiece. The punch
is activated via an NC output signal when the position is reached. The punching
unit acknowledges its punching motion with an input signal to the NC. No axis
may move within this time period. Repositioning takes place after the punching
operation.

High-speed “High-speed signals” are used for direct communication between the NC and
signals punching unit. Combined with the punch, they allow a large number of holes to
be punched per minute since the punch positioning times are interpreted as
machining delays.

PLC signals PLC interface signals are used for non-time-critical functions such as enabling
and monitoring.

2.1.1 High-speed signals

High-speed signals are used to synchronize the NC and punching unit. On the
one hand, they are applied via a high-speed output to ensure that the punch
stroke is not initiated until the metal sheet is stationary. On the other, they are
applied via a high-speed input to ensure that the sheet remains stationary while
the punch is active. The high-speed digital inputs and outputs on the control are
used to operate the punching unit.
The following diagram shows the signal sequence.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-5
Punching and Nibbling (N4) 06.05
2.1 Stroke control

(a)



(b)
A0

 
E0
(c)

t1 t2 t3 t4 t

Fig. 2-1 Signal chart

Note
The diagram illustrates the following
(a) Axis motion of the machine as a v(t) function
(b) “Stroke activation” signal
(c) “Stroke active” signal
The “Stroke active” signal is high-active for reasons relating to open-circuit
monitoring.

The chronological sequence of events for punching and nibbling is controlled by


the two signals A0 and E0.
A0 is set by the NCK and is identical to stroke initiation.
E0 defines the status of the punching unit and is identical to the “Stroke active”
signal.
The signal states characterize and define times t1 to t4 in the following way:

t1 The motion of the workpiece (metal sheet) in relation to the punch is completed
at instant t1. Depending on the criterion defined for stroke activation (see
following section “Criteria for stroke initiation”), high-speed output A0 is set for
punch initiation .

t2 The punching unit signals a punch movement via high-speed input E0 at instant
t2. This is triggered by signal A0 .
For safety reasons, signal E0 is high-active (in the case of an open circuit,
“Stroke active” is always set and the axes do not move).
The “Stroke active” signal is not reset again until the tool has moved away from
the metal sheet (t4).

Copyright © Siemens AG, 2005.


2/N4/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.1 Stroke control

t3 The NC reacts to the “Stroke active” signal at instant t3 by canceling the “Stroke
activation” signal . From this point in time onwards, the NC is in a waiting
state. It simply waits for cancellation of the “Stroke active” signal so it can initiate
the next axis motion. The next stroke can be initiated only after signal A0 has
disappeared.

t4 The punching operation is complete at instant t4, i.e. the punch has exited from
the metal sheet again. The NC reacts to a signal transition in signal E0 by
starting an axis motion . The reaction of the NC to a signal edge change  is
described in the section headed “Axis start after punching” below.

Note
The stroke time is determined by the period Dth = t4 – t1. Reaction times at
instant t4 between the signal transition of E0 and the start of the axis motion
must also be added.

2.1.2 Criteria for stroke initiation

Initiate a stroke The stroke initiation must be set, at the earliest, for the point in time at which it
can be guaranteed that the axes have reached a standstill. This ensures that at
the instant of punching, there is absolutely no relative movement between the
punch and the metal sheet in the machining plane.
The following diagram shows the various criteria that can be applied to stroke
initiation.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-7
Punching and Nibbling (N4) 06.05
2.1 Stroke control

End of interpolation

Exact stop coarse

Exact stop fine

A0

E0

t
t’’1 t’1 t1 t2

Fig. 2-2 Signal chart: Criteria for stroke initiation

The time interval between t1 and t2 is determined by the reaction of the


punching unit to setting of output A0. This cannot be altered, but can be utilized
as a lead time for minimizing dead times. The diagram above shows the default
setting with which the output is set when the “Exact stop fine window” is
reached (default setting of G group 12 G601). The punch initiation times t’’1 and
t’1 are programmed by means of G602 and G603 (see table below).

If then Description
G603 Sop the interpolation The interpolation reaches the block end. In this case, the axes continue
is programmed, to move until the overtravel has been traversed, i.e. the signal is output
at an appreciable interval before the axes have reached zero speed
(see t1).
G602 Reach the coarse in- The signal is output once the axes have reached the coarse in-position
is programmed, position window window. If this criterion is selected for stroke initiation output, then the
instant of stroke initiation can be varied through the size of interpolation
window (see t’1).
G601 Reach the fine in-posi- In this case, it can always be ensured that the machine will have
is programmed, tion window reached a standstill at the instant of punching provided that the axis
data are set well.
However, this variant also results in a maximum dead time (see t1).
Note:
The initial setting of the G group with G601, G602 and G603 (G group 12) is defined via MD:
GCODE_RESET_VALUES[11] (G601 is the default setting)

G603 Depending on velocity and machine dynamics, approximately 3 – 5 interpolation


cycles are processed at the end of interpolation before the axes reach zero
speed.
In combination with machine data 26018: NIBBLE_PRE_START_TIME, it is
possible to delay, and therefore optimize, the instant between reaching the end
of interpolation and setting the high-speed output for “Stroke ON”.

Copyright © Siemens AG, 2005.


2/N4/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.1 Stroke control

Apart from MD 26018: NIBBLE_PRE_START_TIME, SD 42402


NIB_PUNCH_PRE_START_TIME is also available. This can be altered from the
parts program and thus adapted to the punching process depending on the
processing status of the parts program.
The following delay times apply depending on the value programmed for the
setting data:
MD 26018 + 0 ³ SD 42402 is active.
MD 26018 0 0 ³ MD 26018 is active.
If the “Punching with dwell time, PDELAYON” is active, then the dwell time
programmed in connection with this function is active. Both MD 26018 and
SD42402 are inoperative.

2.1.3 Axis start after punching

The start of an axis motion after stroke initiation is controlled via input signal
“Stroke ON”.

A0

E0

t4 t’4 t

Fig. 2-3 Signal chart: Axis start after punching

In this case, the time interval between t4 and t’4 acts as a


switching-time-dependent reaction time. It is determined by the interpolation
sampling time and the programmed punching/nibbling mode.

PON/SON When the punching unit is controlled by means of PON/SON, the maximum
delay time is calculated as |t’4 – t4| = 3 x interpolation cycle.

PONS/SONS If the punch is controlled by means of PONS/SONS, then the delay time is
determined by |t’4 – t4| v 3 x position control cycle.
(Precondition: Stroke time (t4 – t2) > 4 interpolation cycles.)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-9
Punching and Nibbling (N4) 06.05
2.1 Stroke control

2.1.4 PLC signals specific to punching and nibbling

In addition to the signals used for direct stroke control, channel-specific PLC
interface signals are also available. These are used both to control the
punching process and to display operational states.
The “No stroke enable” signal prevents the NC from initiating any punching
operation. The NC waits until the enable signal is available before continuing
the parts program. The “Stroke suppression” signal allows the parts program to
be processed without initiating a punching operation (dry run). With active path
segmentation, the axes traverse in “Stop and go” mode. The “Delayed stroke”
signal activates a delayed stroke output such as that programmable with
PDELAYON. The “Manual stroke initiation” signal allows the operator to initiate
a punching process (controlled via PLC), even when the parts program is not
being processed. This signal is acknowledged by the “Acknowledge manual
stroke initiation” signal.

Note
The signals from/to channel are described in Chapter 5 and are listed in
Chapter 7.

2.1.5 Punching and nibbling-specific reactions to standard PLC


signals

“Feed stop” In the case of a “Feed stop” signal, the NC reacts as follows with respect to the
interface signal stroke control:
If the signal is detected before instant t1, then stroke initiation is suppressed.
The next stroke is not initiated until the next start or until the “Feed stop” signal
has been canceled. Machining is then continued as if there had been no
interruption. If the signal is detected at instant t1, then the current stroke is
completed and the NC then rests in the state characterized by t4. To allow it to
respond in this manner, time monitoring of the “Stroke active” and “Stroke
initiation” signals is dispensed with.

2.1.6 Signal monitoring

Owing to aging of the punch hydraulics, overshooting of the punch may cause
the “Stroke active” signal to oscillate at the end of a stroke. In such cases, an
alarm may be generated depending on machine data 26020:
NIBBLE_SIGNAL_CHECK (alarm 22054 “distorted punch signal”).

Reset response In the case of an NC RESET, the “Stroke initiation” signal is canceled
immediately even if the acknowledgement via the high-speed input has not
arrived. A currently activated stroke cannot be suppressed.

Copyright © Siemens AG, 2005.


2/N4/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.2 Activation and deactivation

2.2 Activation and deactivation

2.2.1 Language commands

Punching and nibbling functions are activated and deactivated via configurable
language commands. These replace the special M functions that were used in
earlier systems.
References: /PA/, Programming Guide

Groups The language commands are arranged in groups as follows:


Group 35
The actual punching and nibbling functions are activated and deactivated by
means of the following language commands:
PON = Punching ON
SON = Nibbling ON
PONS = Punching ON, activation in position controller
SONS = Nibbling ON, activation in position controller
SPOF = Punching/nibbling OFF
Group 36
This group includes the commands which have only a preparatory character
and which determine the real nature of the punching function. These language
commands are as follows:
PDELAYON = Punching with delay ON
PDELAYOF = Punching with delay OFF
Since the PLC normally needs to perform some preliminary tasks with respect
to these preparatory functions, they are programmed before the activating
commands.
Group 38
This group contains the commands for switching over to a second punch
interface. It can be used, for example, for a second punching unit or set of
hammer shears. A second I/O pair which can be used for punching functionality
is defined via machine data.
SPIF1 = First interface is active
SPIF2 = Second interface is active

Note
Only one function at a time can be active within a G code group (similar, for
example, to the various interpolation modes G0, G1, G2, G3, etc., which are
also mutually exclusive).

SPOF Punching and nibbling OFF


The SPOF function terminates all punching and nibbling functions. In this state,
the NCK responds neither to the “Stroke active” signal nor to the PLC signals
specific to punching and nibbling functions.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-11
Punching and Nibbling (N4) 06.05
2.2 Activation and deactivation

If SPOF is programmed together with a travel command in one block (and in all
further blocks if punching/nibbling is not activated with SON or PON), the
machine approaches the programmed position without the initiation of a
punching operation. SPOF deselects SON, SONS, PON and PONS and is
equivalent to a RESET state.
Programming example:
:
:
N20 G90 X100 SON Activate punching
N25 X50 SPOF Deactivate punching,
: Positioning without stroke initiation
:

SON Nibbling ON
SON activates the nibbling function and deselects the other functions in G
group 35 (e.g. PON).
In contrast to punching, the first stroke is made at the start point of the block
with the activating command, i.e. before the first machine motion. SON has a
modal action, i.e. it remains active until either SPOF or PON is programmed or
until the program end is reached. The stroke initiation is suppressed in blocks
without traversing information relating to the axes designated as punching or
nibbling axes (typically those in the active plane). If a stroke still needs to be
initiated, then one of the punching/nibbling axes must be programmed with a 0
traversing path. If the first block with SON is a block without traversing
information of the type mentioned, then only one stroke takes place in this block
since the start and end points are identical.
Programming example:
:
:
N70 X50 SPOF Positioning without punch initiation
N80 X100 SON Activate nibbling, initiate a stroke
: before motion (X=50) and at end of
: programmed motion (X=100)

SONS Nibbling ON (in position control cycle)


SONS acts in the same way as SON. The function is activated in the position
control cycle, thus allowing time-optimized stroke initiation and an increase in
the punching rate per minute.

PON Punching ON
PON activates the punching function and deactivates SON.
Like SON, PON also has a modal action.
In contrast to SON, however, a stroke is not executed until the end of the block
or, in the case of automatic path segmentation, at the end of a path segment.
PON has an identical action to SON in the case of blocks which contain no
traversing information.
Programming example:
:
:
N100 Y30 SPOF Positioning without punch initiation
N110 Y100 PON Activate punching, initiate punch
: at end of positioning operation (Y=100)
:

Copyright © Siemens AG, 2005.


2/N4/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.2 Activation and deactivation

PONS Punching ON (in position controller)


PONS acts in the same way as PON. For explanation, please refer to SONS.

PDELAYON Punching with delay ON


PDELAYON is a preparatory function. This means that PDELAYON is generally
programmed before PON. The punch stroke is output with a delay when the
programmed end position is reached. The delay time can be defined in seconds
by setting data 42400: PUNCH_DWELLTIME. If the defined value cannot be
divided as an integer into the interpolation clock cycle, then it is rounded to the
next divisible integer value. The function has a modal action.

PDELAYOF Punching with delay OFF


PDELAYOF deactivates punching with delay function, i.e. the punching process
continues normally. PDELAYON and PDELAYOF form a G code group.
Programming example: SPIF2 activates the second punch interface, i.e. the
stroke is controlled via the second pair of high-speed I/Os (see machine data
26004: NIBBLE_PUNCH_OUTMASK and MD 26006:
NIBBLE_PUNCH_INMASK):
:
N170 PDELAYON X100 SPOF Positioning without stroke initiation,
: activate delayed punch
: initiation
N180 X800 PON Activate punching. When end
: position is reached, a punch stroke
: is output with a delay.
N190 PDELAYOF X700 Deactivate delayed
: punching, activate normal
: punch initiation. End of
: programmed motion.

SPIF1 Activation of first punch interface


SPIF1 activates the first punch interface, i.e. the stroke is controlled via the first
pair of high-speed I/Os (see machine data 26004:
NIBBLE_PUNCH_OUTMASK and MD 26006: NIBBLE_PUNCH_INMASK). The
first punch interface is always active after a reset or control system power up. If
only one interface is used, then it need not be programmed.

SPIF2 Activation of second punch interface


SPIF2 activates the second punch interface, i.e. the stroke is controlled via the
second pair of high-speed I/Os (see machine data 26004:
NIBBLE_PUNCH_OUTMASK and MD 26006: NIBBLE_PUNCH_INMASK).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-13
Punching and Nibbling (N4) 06.05
2.2 Activation and deactivation

Programming example:
:
:
N170 SPIF1 X100 PON At the end of the block
: a stroke is initiated at the
: first high-speed output. The “Stroke
: active” signal is monitored at the first
: output.
N180 X800 SPIF2 The second stroke is initiated at
: the second high-speed output.
: The “Stroke active” signal is
: monitored at the second input.
N190 SPIF1 X700 The first interface is used to
: control all further strokes.

Copyright © Siemens AG, 2005.


2/N4/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.2 Activation and deactivation

2.2.2 Expansions to punching and nibbling functions

Alternate interface Machines that alternately use a second punching unit or a comparable medium
in SW 3.2 and can be switched over to a second I/O pair. The second I/O pair can be defined
higher via machine data
MD 26004: NIBBLE_PUNCH_OUTMASK and
MD 26006: NIBBLE_PUNCH_INMASK.
The alternate interfaces can be selected via commands SPIF1 and SPIF2. Full
punching/nibbling functionality is available on both interfaces.
Example:

Hardware assignment for stroke control


Define the fast byte in each case on the CPU as a fast punching interface:
$MC_PUNCHNIB_ASSIGN_FASTIN = ’H00030001’ →byte 1
$MC_PUNCHNIB_ASSIGN_FASTOUT = ’H00000001’
Note: From SW 3.2 First and second bit inverted
Inverted directly by the software in SW version 3.1 and earlier.
Mask for fast output and input bits
First interface output bit
MD 26004: NIBBLE_PUNCH_OUTMASK[0] = 1 → Bit 1 SPIF1
Second interface output bit
MD 26004: NIBBLE_PUNCH_OUTMASK[1] = 2 → Bit 2 SPIF2
First interface output bit
MD 26006: NIBBLE_PUNCH_INMASK[0] = 1 → Bit 1 SPIF1
Second interface output bit
MD 26006: NIBBLE_PUNCH_INMASK[1] = 2 → Bit 2 SPIF2

Automatically Dead times due to the reaction time of the punching unit can be minimized if the
activated stroke can be initiated before the interpolation window of the axes is reached.
pre-initiation time The reference time for this is the interpolation end. The stroke is automatically
in SW 3.1 and initiated with G603 and delayed by the set value in relation to the time that the
end of interpolation is reached.
higher
The machine data MD 26018: NIBBLE_PRE_START_TIME.
A value of 0.010 s is selected to initiate a stroke, for example, 2 cycles after the
end of interpolation with an interpolation cycle of 5 ms.
The pre-initiation time can be set in SD 42402:
NIBPUNCH_PRE_START_TIME. This setting becomes operative only if
MD 26018: NIBBLE_PRE_START_TIME is set to 0. This then gives higher
priority to the pre-initiation time in MD 26018: NIBBLE_PRE_START_TIME.

Monitoring of the If the “stroke active” signal is fluctuating between strokes due to plunger
input signal in overshoots, for example, the message “undefined punching signal” is output
SW 3.1 and higher and interpolation halted. This message is generated as a function of machine
data MD 26020: NIBBLE_SIGNAL_CHECK.
MD 26020: NIBBLE_SIGNAL_CHECK = 0 No alarm.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-15
Punching and Nibbling (N4) 06.05
2.2 Activation and deactivation

Minimum time Setting data SD 42404: MINTIME_BETWEEN_STROKES can be


between two parameterized to set a minimum time interval between two consecutive strokes.
strokes in SW 5.2 If, for example, an interval of at least 1.3 seconds must elapse between two
and higher stroke initiations, irrespective of physical distance, then
SD 42404: MINTIME_BETWEEN_STROKES must be set to 1.3.
If a punching dwell time (PDELAYON) is also programmed, then the two times
are applied additively. If a pre-initiation time at G603 is programmed, it will be
effective only if the end of interpolation is reached before the time set in
SD 42404: MINTIME_BETWEEN_STROKES has elapsed.
The programmed time becomes operative immediately. Depending on the size
of the block buffer, strokes that have already been programmed can be
executed with this minimum interval. The following programming measures can
be taken to prevent this:
Example:
N...
N100 STOPRE
N110 $SC_ MINTIME_BETWEEN_STROKES = 1.3
The function is not active when $SC_MINTIME_BETWEEN_STROKES = 0.

Path-dependent An acceleration characteristic can be defined by means of language command


acceleration in PUNCHACC(Smin, Amin, Smax, Amax). This command can be used to define
SW 5.2 and higher different acceleration rates depending on the distance between holes.
The characteristic shown in Fig. 2-4 defines the following acceleration rate:
 Distance between holes less than 2 mm:
The axis accelerates at a rate corresponding to 50% of maximum
acceleration.
 Distance between holes from 2 mm to 10 mm:
The acceleration rate is increased to 100% as a proportion of distance.
 Distance between holes more than 10 mm:
The axis accelerates at a rate corresponding to 100% of maximum
acceleration.

A [%]

100

PUNCHACC(2, 50, 10, 100)


50

S [mm]
2 10

Fig. 2-4 Proportional increase in acceleration from 50% with a distance between holes of 2 mm to 10 mm

Copyright © Siemens AG, 2005.


2/N4/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.2 Activation and deactivation

The characteristic shown in Fig. 2-5 defines the following acceleration rate:

 Distance between holes less than 3 mm:


The axis accelerates at a rate corresponding to 75% of maximum
acceleration.

 Distance between holes from 3 mm to 8 mm:


The acceleration rate is reduced to 25% as a proportion of distance.

 Distance between holes more than 8mm:


The axis accelerates at a rate corresponding to 25% of maximum
acceleration.

A [%]

100

75

PUNCHACC(3, 75, 8, 25)


50

25

S [mm]
2 3 8 10

Fig. 2-5 Proportional reduction in acceleration from 75% with a distance between holes of 3 mm to 8 mm

If a reduced acceleration rate has already been programmed via ACC, then the
acceleration limits defined with PUNCHACC refer to the reduced acceleration
rate.
The function is deselected with Smin = Smax =0. The existing acceleration
programming with ACC remains operative.

Note
For further details, please refer to:

Chapter 4 4.1 “Channel-specific machine data” and


4.2 “Channel-specific setting data”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-17
Punching and Nibbling (N4) 06.05
2.2 Activation and deactivation

2.2.3 Compatibility with earlier systems

Use of M functions As in earlier versions, macro technology allows special M functions to be used
instead of language commands (compatibility).
The following assignments corresponding to those used in earlier systems
apply:

M20, M23 8 SPOF


M22 8 SON
M25 8 PON
M26 8 PDELAYON

Note
The M functions can be configured via machine data.
As regards the assignments between the M functions and language
commands, it must be noted that the M functions are divided into auxiliary
function groups.

Examples DEFINE M20 AS SPOF or Punching/nibbling OFF


DEFINE M20 AS SPOF M=20 Punching with auxiliary function output
DEFINE M20 AS SPOF PDELAYOF Punching/nibbling OFF and
delayed punching OFF
DEFINE M22 AS SON or Nibbling ON
DEFINE M22 AS SON M=22 Nibbling ON with auxiliary function
output
DEFINE M25 AS PON or Punching ON
DEFINE M25 AS PON M=25 Punching ON with auxiliary function
output
DEFINE M26 AS PDELAYON or Delayed punching
DEFINE M26 AS PDELAYON M=26 Punching and auxiliary function output

Programming example:
:
:
N100 X100 M20 Positioning without punch initiation
N110 X120 M22 Activate nibbling, stroke initiation before
: and after motion
N120 X150 Y150 M25 Activate punching,
: stroke initiation at end of motion.
:

Copyright © Siemens AG, 2005.


2/N4/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.3 Automatic path segmentation

2.3 Automatic path segmentation


One of the following two methods can be applied to automatically segment a
programmed traversing path

 Path segmentation with maximum path feed value programmed via


language command SPP and

 Path segmentation with a number of segments programmed via language


command SPN.
Both functions generate sub-blocks independently. In earlier systems, language
command SPP <number> corresponds to E <number> and SPN <number> to
H <number>. Since addresses E and H now represent auxiliary functions,
language commands SPP and SPN are used to avoid conflicts. The new
procedure is therefore not compatible with those implemented in earlier
systems. Both language commands (SPP and SPN) can be configured.

Note

The values programmed with SPP are either mm or inch settings depending on
the initial setting (analogous to axes).
The automatic path segmentation function ensures that the path is divided into
equidistant sections with linear and circle interpolation.
When the program is interrupted and automatic path segmentation is active
(SPP/SPN), the contour can be reentered only at the beginning of the
segmented block. The first punching stroke is made at the end of this sub-block.

SPP and SPN can be activated only if geo axes are configured.

SPP  The automatic path segmentation function SPP divides the programmed
traversing path into sections of equal size as a function of the programmed
feed path.

 Path segmentation is active only when SON or PON is active.


(Exception: MD 26014: PUNCH_PATH_SPLITTING = 1).

 SPP is modally active, i.e. the programmed feed value remains valid until it
is programmed again, but it can be suppressed on a block-by-block
(non-modal) basis by means of SPN.

 The path segments are rounded off by the control system if required so that
a total programmed distance can be divided into an integral number of path
sections.

 The feed value unit is either mm/stroke or inch/stroke (depending on axis


settings).

 If the programmed SPP value is greater than the traversing distance, then
the axis is positioned on the programmed end position without path
segmentation.

 SPP = 0, reset or program end delete the programmed SPP value. SPP is
not deleted when punching/nibbling is deactivated.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-19
Punching and Nibbling (N4) 06.05
2.3 Automatic path segmentation

SPN  The automatic path segmentation function SPN divides the traversing path
into the programmed number of path segments.

 SPN is active non-modally and is activated if SON or PON has already been
activated.
(Exception: MD 26014: PUNCH_PATH_SPLITTING = 1).

 Any previously programmed SPP value is suppressed for the block


containing SPN, but is re-activated again in the following blocks.

Supplementary  Path segmentation is active for linear and circular interpolation.


conditions The interpolation mode remains valid, i.e. circles are traversed in the case of
circular interpolation.

 If a block contains both SPN (number of strokes) and SPP (stroke path),
then the number of blocks is activated in the current block while the stroke
path is activated in all blocks that follow.

 Path segmentation is active only in conjunction with punching or nibbling


functions.
(Exception: MD PUNCH_PATH_SPLITTING = 1).

 Any programmed auxiliary functions are output before, during the first or
after the last sub-block.

 In the case of blocks without traversing information, the same rules apply to
programmed SPP and SPN commands as defined for SON and PON, i.e. a
stroke is initiated only if an axis motion has been programmed.

2.3.1 Operating characteristics with path axes

All axes defined and programmed via machine data PUNCHNIB_AXIS_MASK


(26010) are traversed along path sections of identical size with SPP and SPN
until the programmed end point is reached. This also applies to rotatable tool
axes if programmed. The response can be adjusted for single axes (see below).

Example of SPP N1 G01 X0 Y0 SPOF Position without punch initiation


N2 X75 SPP=25 SON Nibble at feed value 25 mm;
: Initiate punch before first
: motion and after each path segment.
N3 Y10 Position with reduced SPP value
: because traversing distance <
: SPP value and initiate punch after
: motion.
N4 X0 Reposition with initiation of punch
: after every path segment.

Copyright © Siemens AG, 2005.


2/N4/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.3 Automatic path segmentation

SPP

1 2

SPP

4 3

Fig. 2-6

If the programmed path segmentation is not an integral multiple of the total path,
then the feed path is reduced (see following diagram).

Y2

SPP’

SPP

X
X2

Fig. 2-7 Path segmentation

X2/Y2 Programmed traversing path


SPP Programmed SPP value
SPP’ Automatically rounded offset path

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-21
Punching and Nibbling (N4) 06.05
2.3 Automatic path segmentation

Example of SPN The number of path segments per block is programmed via SPN.
command
A value programmed via SPN takes effect on a non-modal basis for both
punching and nibbling applications. The only difference between the two modes
is with respect to the first stroke. In the case of nibbling operations, this is
executed at the beginning of the first segment. This means that when n
segments are programmed, n strokes are executed with punching operations
but n+1 with nibbling. Furthermore, where no travel information is available, only
a single stroke is executed, even if several are programmed. Should it be
necessary to generate several strokes at one position, then the corresponding
number of blocks without traversing information must be programmed.
N1 G01 X0 Y0 SPOF Position without initiation of punch,
N2 X75 SPN=3 SON Activate nibbling, the whole path
: is divided into three segments.
: Since nibbling is active, a stroke
: is initiated before the first motion
: and at the end of each segment.
N3 Y10 SPOF Position without initiation of punch
N4 X0 SPN=2 PON Activate punching, the whole path
: is divided into two segments.
: Since punching is active, the first
: stroke is initiated at the end of the
: first segment.

SPN = 3

1 2

4 3

SPN = 2

Fig. 2-8

Copyright © Siemens AG, 2005.


2/N4/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.3 Automatic path segmentation

Example

 
X

62.5
75 75
Y

v4
62.5
v3

125

v3 250

 525 210  130


365

Fig. 2-9 Workpiece

Extract from N100 G90 X130 Y75 F60 SPOF Position at start point 
program of vertical nibble paths
N110 G91 Y125 SPP=4 SON End point coordinates
(incremental); feedrate value:
4 mm, activate nibbling
N120 G90 Y250 SPOF Absolute dimensioning,
Position at start point 
of horizontal nibble path
N130 X365 SPP=4 SON End point coordinates, 4
segments, activate nibbling
N140 X525 SPOF Position at start point 
of inclined nibble path
N150 X210 Y75 SPP=3 SON End point coordinates
feedrate value: 4 mm,
Activate nibbling
N160 X525 SPOF Position at start point 
of nibble path on
pitch circle path
N170 G02 G91 X–62.5 Y62.5 Incremental circular interpolation
I0 J62.5 SON with interpolation parameters,
Activate nibbling
N180 G00 G90 Y300 SPOF Positioning

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-23
Punching and Nibbling (N4) 06.05
2.3 Automatic path segmentation

2.3.2 Response in connection with single axes

The path of single axes programmed in addition to path axes is distributed


evenly among the generated intermediate blocks as standard. In the following
example, the additional rotary axis C is defined as a synchronous axis in the
system. If this axis is programmed as a “Punch-nibble axis” (via
PUNCHNIB_AXIS_MASK = 1 for this axis), then the behavior of the
synchronous axis can be varied as a function of machine data
PUNCH_PARTITION_TYPE.

Example N10 G1 PON X10 Y10 C0


N20 SPP=5 X25 C45
N30 SPN=3 X35 Y20 I10 J10 C90

PUNCH_PARTITION_TYPE=0 (default setting)


In the above example, the axes behave as standard, i.e. the programmed
special axis motions are distributed among the generated intermediate blocks of
the active path segmentation function in all interpolation modes. In block N20,
the C axis is rotated through 15 in each of the three intermediate blocks. The
axis response is the same in block N30, in the case of circular interpolation
(three sub-blocks, each with 15 (axis rotation).

35

30

25

20
90 
15
75 
10 60 

N10 N20
5 0 15 30  45 

0
0 5 10 15 20 25 30 35 x
C = 0

Copyright © Siemens AG, 2005.


2/N4/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.3 Automatic path segmentation

PUNCH_PARTITION_TYPE=1
In contrast to the behavior described above, here the synchronous axis travels
the entire programmed rotation path in the first sub-block of the selected path
segmentation function. Applied to the above example, the C axis already
reaches the programmed end position (C=45) when it reaches X position X=15.
It behaves in the same way in the circular interpolation block below.

35

30

25

20
90 
15
90 
10 90 

N10 N20 N30


5 0 45 45  45 

0
0 5 10 15 20 25 30 35 x
C = 0

PUNCH_PARTITION_TYPE=2
MD=2 is set in cases where the axis must behave as described above
(PUNCH_PARTITION_TYPE=1) in linear interpolation mode, but according to
the default setting in circular interpolation mode (see 1st case). Given the above
example, the axis then behaves as follows: In block N20, the C axis is rotated to
C=45 in the first sub-block. The following circular block rotates the C axis
through 15 in every sub-block.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-25
Punching and Nibbling (N4) 06.05
2.3 Automatic path segmentation

35

30

25

20
90 
15
75 
10 60 

N10 N20 N30


5 0 45 45  45 

0
0 5 10 15 20 25 30 35 x
C = 0

The axis response illustrated in the diagram above can be particularly useful
when applied to the axis of a rotatable tool in cases where it is used to place the
tool in a defined direction (e.g. tangential) in relation to the contour, but where
the tangential control function must not be applied. However, it is not a
substitute for the tangential control function since the start and end positions of
the rotary axis must always be programmed.

Note
Additional offset motions of special axes (in this case, rotary axis C) are
implemented via a zero offset.

If the C axis is not defined as a “Punch-nibble axis”, then the C axis motion path
is not segmented in block N30 in the above example nor is a stroke initiated at
the block end.
If the functionality described above is to be implemented in a variant not specific
to nibbling applications, but with alignment of the special axis, then stroke
initiation can be suppressed by PLC interface signal (stroke suppression).
(Application: e.g. alignment of electron beam during welding).
Similar axis operating characteristics can be obtained by setting
MD 26014 PUNCH_PATH_SPLITTING to “1”.
In this case, the path is segmented irrespective of punching or nibbling
functions.

Copyright © Siemens AG, 2005.


2/N4/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.4 Rotatable tool

2.4 Rotatable tool


The functions

 “Coupled motion” for synchronous rotation of punch and die and


 “Tangential control” for normal alignment of rotary axes for punching tools in
relation to workpiece
can be used on nibbling/punching machines with rotatable punching tool and
die to achieve a wide variety of applications for the punch.

Tool rotary axis

ÉÉÉÉ
ÉÉÉÉ ÉÉÉÉ
ÉÉÉÉ
ÉÉÉÉ ÉÉÉÉ
Stamp

Die

Fig. 2-10 Illustration of a rotatable tool axis

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-27
Punching and Nibbling (N4) 06.05
2.4 Rotatable tool

2.4.1 Coupled motion of punch and die

Using the standard function “Coupled motion”, it is possible to assign the axis of
the die as a coupled motion axis to the rotary axis of the punch.

Activation The “Coupled motion” function is activated or deactivated with language


commands TRAILON or TRAILOF.
References: /FB/, M3 “Coupled Motion”

Example Example of a typical nibbling machine with rotatable punching tools where C is
the punch axis and C1 the die axis
:
:
TRAILON (C, C1, 1); Switch on coupled motion grouping
G01 X100 Y100 C0 PON Initiate stroke with C axis and
C1 axis position C=0=C1
X150 C45 Initiate stroke with C axis/C1 axis
: position C=45=C1
:
M30

Initial setting No coupled motion groupings are active after power-up. Once the two tool axes
have approached the reference point, the coupled-axis grouping is not generally
separated again. This can be achieved by activating the coupled-axis grouping
once (see above example) and setting machine data 20110
RESET_MODE_MASK, bit 8=1. In this way, the coupled-axis grouping remains
active after RESET/parts program start or end.

2.4.2 Tangential control

The rotary tool axes on punching/nibbling machines are aligned tangentially to


the programmed path of the master axes by means of the tangential control
function.

Activation The “Tangential control” function is activated and deactivated with language
commands TANGON or TANGOF respectively.
References: /PA/, Programming Guide, Fundamentals

Operating The tangential axis is coupled to the interpolation of the master axes. It is
principle therefore not possible to position the axis at the appropriate punching position
tangentially to the path independently of velocity. This may lead to a reduction in
machining velocity if the dynamics of the rotary axis are unfavorable in relation
to those of the master axes. Additional offset angles can be programmed
directly via language command TANGON.

Copyright © Siemens AG, 2005.


2/N4/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.4 Rotatable tool

Note
If the tool (punch and die) is positioned by two separate drives, then the
functions “Tangential control” and “Coupled axes” can be used.
The tangential control function must be activated first followed by coupled axes.

The tangential control function automatically aligns the punch vertically to the
direction vector of the programmed path. The tangential tool is positioned before
the first punching operation is executed along the programmed path. The
tangential angle is always referred to the positive X axis. A programmed
additional angle is added to the calculated angle.
The tangential control function can be used in the linear and circular
interpolation modes.

Example Linear interpolation


The punching/nibbling machine has a rotatable punch and die with separate
drives.
:
:
N2 TANG (C, X, Y, 1, “B”)
N5 G0 X10 Y5
N8 TRAILON (C, C1, 1)
N10 Y10 C225 PON F60
N15 X20 Y20 C45
N20 X50 Y20 C90 SPOF
N25 X80 Y20 SPP=10 SON
N30 X60 Y40 SPOF
N32 TANGON (C, 180)
N35 X30 Y70 SPP=3 PON
N40 G91 C45 X–10 Y–10
N42 TANGON (C, 0)
N45 G90 Y30 SPP=3 SON
N50 SPOF TANGOF
N55 M2

Explanations

Table 2-1

Set Remarks
N2 Definition of master and slave axes, C is slave axis for X and Y in the
base coordinate system.
N5 Start position
N8 Activation of coupled motion of rotatable tool axes C/C1.
N10
C/C1 axis rotates to 225 stroke
N15
C/C1 axis rotates to 45 stroke

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-29
Punching and Nibbling (N4) 06.05
2.4 Rotatable tool

N20 C/C1 axis rotates to 90, no stroke initiation


N25 Path segmentation: four strokes are executed with tool rotated to 90.
N30 Position
N32 Activate tangential control, offset angle of rotatable tool axes 180
N35 Path segmentation: three strokes with active tangential control and an
offset angle of 180
N40 C–/C1 rotates to 225 (180 + 45 INC) tangential control deactivated
because path is not segmented stroke
N42 Tangential control without offset
N45 Path segmentation: three strokes with active tangential control but with-
out offset angle
N50 Deactivation of stroke initiation + tangential control

X 80 70 60 50 40 30 20 10

Mounting
N5 position
10
N10

20 Position
N25 N15
N20
Punching
30
N45
N30
40

50
N40
60

N35 Y

Fig. 2-11 Illustration of programming example in XY plane

Example Circular interpolation


In circular interpolation mode, particularly when path segmentation is active, the
tool axes rotate along a path tangentially aligned to the programmed path axes
in each sub-block.

Copyright © Siemens AG, 2005.


2/N4/2-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
2.4 Rotatable tool

:
:
N2 TANG (C, X, Y, 1, “B”)
N5 G0 F60 X10 Y10
N8 TRAILON (C, C1, 1)
N9 TRAILON (C, –90)
N10 G02 X30 Y30 I20 J0 SPN=2 PON
N15 G0 X70 Y10 SPOF
N17 TANGON (C, 90)
N20 G03 X35,86 Y24,14 CR=20 SPP=16 SON
N25 G0 X74,14 Y35,86 C0 PON
N27 TANGON (C, 0)
N30 G03 X40 Y50 I–14,14 J14,14 SPN =5 SON
N35 G0 X30 Y65 C90 SPOF
N40 G91 X–10 Y–25 C180
N43 TANGOF
N45 G90 G02 Y60 I0 J10 SPP=2 PON
N50 SPOF
N55 M2

Explanations

Table 2-2

Set Remarks
N2 Definition of master and slave axes, C is slave axis for X and Y in the
base coordinate system.
N5 Start position
N8 Activate coupled motion of rotatable tool axes C/C1 for punch and die.
N9 Activate tangential control with offset 270.
N10 Circular interpolation with path segmentation, 2 strokes are executed
with 270 offset angle and tangential alignment along circular path.
N15 Positioning.
N17 Activate tangential control with offset 90.
N20 Circular interpolation with path segmentation, four strokes are executed
with 90 offset angle and tangential alignment along circular path.
N25 Rotation of tool axes to 0, stroke.
N27 Activate tangential control with offset 0.
N30 Circular interpolation with path segmentation, five strokes with offset
angle 0 and tangential alignment along circular path.
N32 Activate tangential control, offset angle of rotatable tool axes 180
N35 Position without active tangential control.
N40 Positioning, C axis rotates to 270
N43 Deactivate tangential control.
N45 Circular interpolation with path segmentation, two strokes without tan-
gential control where C=270.
N50 Punching OFF.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/2-31
Punching and Nibbling (N4) 06.05
2.5 Protection zones

X 80 70 60 50 40 30 20 10

Mounting
N15 N5 position
10

N20
20 Position

Punching
30
N25 N10 N40
40

N30
50

60
N45
N35
Y

Fig. 2-12 Illustration of programming example in XY plane

2.5 Protection zones


The “clamping protection zone” function is contained as a subset in the
“Protection zones” function. Its purpose is to simply monitor whether clamps and
tool could represent a mutual risk.

Note
No by-pass strategies are implemented for cases where the clamp protection is
violated.

References: /FB/, A3, “Axis Monitoring Functions, Protection Zones”




Copyright © Siemens AG, 2005.


2/N4/2-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
4.1 Channelspecific machine data

Supplementary Conditions 3
Availability of The function is an option and is available for
function
“Punching and
 SINUMERIK 840D with NCU 572 and 573, SW 3 and higher
nibbling” 

Data Descriptions (MD, SD) 4


4.1 Channelspecific machine data

26000 PUNCHNIB_ASSIGN_FASTIN
MD number Hardware assignment for input byte with stroke control
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 3.1
Meaning: This data defines which input byte is to be used for the signal “Stroke active”.
= 1: On-board inputs (4 high-speed NCK inputs) are used
= 2, 3, 4, 5 The external digital NCK inputs are used
Example:
Value “0000 0001” Stroke active is HIGH active
Value “0001 0001” Stroke active is LOW active

Note:
This MD is not compatible with earlier SW versions. The HIGH word now acts as an inver-
sion mask. In earlier SW versions (< 3.2), the “Stroke active” signal was always LOW ac-
tive.
Related to .... NIBBLE_PUNCH_INMASK[n]
References /FB/, A4, Digital and Analog NCK I/Os
The signal is high-active as standard with SW 3.2 and higher, i.e. open-circuit monitoring is
implemented. If the signal needs to be low-active, the MD must be set, for example,
to a value of “H 0001 0001” for the outboard inputs.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/4-33
Punching and Nibbling (N4) 06.05
4.1 Channelspecific machine data

26002 PUNCHNIB_ASSIGN_FASTOUT
MD number Hardware assignment for output byte with stroke control
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 3
Meaning: This data defines which output byte is to be used for the stroke control.
= 1: On-board outputs (4 high-speed NCK outputs) are used
= 2, 3, 4, 5 The external digital NCK outputs are used
Related to .... NIBBLE_PUNCH_OUTMASK[n]
References /FB/, A4, Digital and Analog NCK I/Os

26004 NIBBLE_PUNCH_OUTMASK[n]
MD number Screen form for high-speed output bits
Default setting: see below Minimum input limit: 0 Maximum input limit: 128
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: BYTE Applies from SW: 3
Meaning: A total of 8 byte screen forms for the output of high-speed bits can be defined with this
data. Two of these are used at the current time.
The default setting for this data is as follows:
NIBBLE_PUNCH_OUTMASK[0] = 1: 20 = first bit for the first punch interface (SPIF1)
NIBBLE_PUNCH_OUTMASK[1] = 0: Second punch interface (SPIF2), not available
by default
NIBBLE_PUNCH_OUTMASK[2] = 0
...
NIBBLE_PUNCH_OUTMASK[7] = 0

Note:
The significance of the bit to be defined must be input.
Bit: 7 6 5 4 3 2 1 0
Signifi-
cance:
27=128 26=64 25=32 24=16 23=8 22=4 21=2 20=1

Example:
“8” must be entered in the machine data in order to define bit 3.
Application example(s) NIBBLE_PUNCH_OUTMASK[0] = 1 ––> The first bit (bit 0) is defined
NIBBLE_PUNCH_OUTMASK[0] = 4 ––> The third bit (bit 2) is defined
Special cases, errors, ...... Only NIBBLE_PUNCH_OUTMASK[0] is relevant. This is used to define the output bit for
the signal “Initiate stroke”.
Related to .... PUNCHNIB_ASSIGN_FASTOUT

26006 NIBBLE_PUNCH_INMASK[n]
MD number Screen form for high-speed input bits
Default setting: see below Minimum input limit: 0 Maximum input limit: 128
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: BYTE Applies from SW: 3

Copyright © Siemens AG, 2005.


2/N4/4-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
4.1 Channelspecific machine data

26006 NIBBLE_PUNCH_INMASK[n]
MD number Screen form for high-speed input bits
Meaning: A total of 8 byte masks for the output of high-speed bits can be defined with this data.
The default setting for this data is as follows:
NIBBLE_PUNCH_INMASK[0]=1: 20 = first bit for the first punch interface (SPIF1)
NIBBLE_PUNCH_INMASK[1]=4: Second punch interface (SPIF2), not available by
default
NIBBLE_PUNCH_INMASK[2]=0
...
NIBBLE_PUNCH_INMASK[7]=0

Note:
The significance of the bit to be defined must be input (refer to MD 26004:
NIBBLE_PUNCH_OUTMASK[n]).
Application example(s) NIBBLE_PUNCH_INMASK[0] = 1 ––> The first bit (bit 0) is defined
NIBBLE_PUNCH_INMASK[0] = 4 ––> The third bit (bit 2) is defined
Special cases, errors, ...... Only NIBBLE_PUNCH_INMASK[0] is relevant. This is used to define the input bit for the
signal “Stroke active”.
Related to .... PUNCHNIB_ASSIGN_FASTIN

26010 PUNCHNIB_AXIS_MASK
MD number Definition of punching and nibbling axes
Default setting: 7 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 3
Meaning: This data is used to define which channel axes shall be treated as punching/nibbling axes.
This data setting determines above all the response of synchronous axes in stroke control
mode and with automatic path segmentation.
When the axes are defined, the bit significance must be entered according to the following
diagram:
Bit: 7 6 5 4 3 2 1 0
Signifi-
cance:
27=128 26=64 25=32 24=16 23=8 22=4 21=2 20=1
Example:
If the first two axes are to be defined as the punching/nibbling axes, then “3” must be
entered (corresponds to setting of bits 1 and 0).
PUNCHNIB_AXIS_MASK = 3
The first two axes – typically x and y – are punching/nibbling axes.

PUNCH_NIB_AXIS_MASK = 11
The first two axes (typically x and y) and the third axis (e.g. an axis for the rotatable tool)
are punching/nibbling axes. In this case, the response of the 3rd axis with automatic path
segmentation can be defined via PUNCH_PARTITION_TYPE.

Independently of the above, this MD also defines whether the path of the A axis must be
segmented by means of SPN=<value> if it is programmed without path axes.
In addition, this data also allows single path axes to be treated differently in stroke control
mode and with path segmentation. To illustrate this option, let us assume that we have a
machine with path axes x, y and rotary axis A. However, we do not want the Z axis
traversing paths to be segmented into individual sections nor do we want a stroke to be
initiated at the end of a block which contains only a Z axis movement.
It is possible to achieve the desired response by setting PUNCHNIB_AXIS_MASK = 11.
In this case, pure Z movements are not taken into account by the path segmentation
function.
Related to .... PUNCH_PARTITION_TYPE

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/4-35
Punching and Nibbling (N4) 06.05
4.1 Channelspecific machine data

26012 PUNCHNIB_ACTIVATION
MD number Activation of punching and nibbling functions
Default setting: 1 Minimum input limit: 0 Maximum input limit:
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 3
Meaning: This MD defines in what way punching and nibbling functions can be activated:
PUNCHNIB_ACTIVATION = 0
None of the punching or nibbling functions can be activated. The automatic path segmenta-
tion is the only exception if it is enabled via MD: PUNCH_PATH_SPLITTING.
PUNCHNIB_ACTIVATION = 1
The functions are activated via language commands. If M functions are to be used, then
they must be programmed using macros.
PUNCHNIB_ACTIVATION = 2
The M functions are interpreted directly by the software. Language commands can still be
used.
Note: This option is intended only as a temporary solution.
Related to .... PUNCH_PATH_SPLITTING
NIBBLE_PUNCH_CODE[n]

26014 PUNCH_PATH_SPLITTING
MD number Activation of automatic path segmentation
Default setting: 0 Minimum input limit: 0 Maximum input limit:
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 3
Meaning: This machine data defines whether it should be possible to activate the automatic path
segmentation function, even if punching-specific functionality is not available.
PUNCH_PATH_SPLITTING = 0
Automatic path segmentation can only be activated if punching mode is active and is deac-
tivated as soon as punching mode is deactivated.
PUNCH_PATH_SPLITTING = 1
In this case, automatic path segmentation can be activated for geometry axes even when
punching mode is not active.

Copyright © Siemens AG, 2005.


2/N4/4-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
4.1 Channelspecific machine data

26016 PUNCH_PARTITION_TYPE
MD number Behavior of single axes with active automatic path segmentation
Default setting: 0 Minimum input limit: 0 Maximum input limit:
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 3
Meaning: This machine data determines how single axes, which are also nibbling axes according to
MD: PUNCHNIB_AXIS_MASK, should respond. It is assumed that rotary axis A is defined
as the 4th and nibbling axis in addition to the three path axes X, Y, Z. In this case, there are
the following options for defining its response with automatic path segmentation and in
stroke control mode:
PUNCH_PARTITION_TYPE = 0
No special response in the case of automatic path segmentation. If the single axis is pro-
grammed together with path axes in one block, then its total traversing path is segmented
in accordance with the path axes, i.e. the purely geometric relationship between single axis
and path axes is identical to that for non-segmented movements. If the single axis is pro-
grammed without path axes, but with SPN=<value>, then the path is segmented according
to the programmed SPN value.
PUNCH_PARTITION_TYPE = 1
In this case, the path of the single axis is generally (i.e. regardless of the currently active
interpolation mode) traversed in the first segment if the axis is programmed together with
path axes.
PUNCH_PARTITION_TYPE = 2
In this case, the single axis responds to linear interpolation in the same way as described
under
PUNCH_PARTITION_TYPE = 1,
and to all other interpolation modes as described under PUNCH_PARTITION_TYPE = 0.
Related to .... PUNCHNIB_AXIS_MASK

26018 NIBBLE_PRE_START_TIME
MD number Automatic prestart time
Default setting: 0 Minimum input limit: 0 Maximum input limit:
Changes effective after POWER ON Protection level: Unit: –
Data type: Applies from SW: 3.1
Meaning: To minimize any dead times due to the reaction time of the punching unit, it is possible to
release the stroke before reaching the in-position window of the axes. The reference time
for this is the interpolation end. Since there is normally a delay of some interpolation cycles
after reaching the interpolation end (depending on the machine dynamics) until the axes
reach their true position, the prestart time is a delay time with respect to reaching the inter-
polation end. The function is therefore coupled to G603 (block change at the end of inter-
polation). The time can be set via the machine data NIBBLE_PRE_START_TIME. Exam-
ple: With an interpolation cycle of 5msec, a stroke shall be released two cycles after reach-
ing the interpolation end. In this case, the value 0.010 s must be selected for
NIBBLE_PRE_START_TIME. If a value that is not integrally divisible by the set interpola-
tion time is selected, then the stroke is initiated in the interpolation cycle following the set
time.
Related to ....

26020 NIBBLE_SIGNAL_CHECK
MD number Monitoring of input signal
Default setting: 0 Minimum input limit: 0 Maximum input limit:
Changes effective after POWER ON Protection level: Unit: sec
Data type: Flowld Applies from SW: 3.1
Meaning: If for example the stroke active signal is set by punch overshoot between the cycles, the
interpolation is stopped. Furthermore, it is possible to generate the “Distorted punch signal”
message as a function of machine data
NIBBLE_SIGNAL_CHECK.
Related to ....

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/4-37
Punching and Nibbling (N4) 06.05
4.1 Channelspecific machine data

26008 NIBBLE_PUNCH_CODE[n]
MD number Definition of M functions (applies only to SW 3.1)
Default setting: see below Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies only to SW: 3.1
Meaning: This machine data defines the special M functions for punching and nibbling.

Default setting Example


NIBBLE_PUNCH_CODE[0] = 0 20 End punching, nibble with M20
NIBBLE_PUNCH_CODE[1] = 23 23 End punching, nibble with M23
NIBBLE_PUNCH_CODE[2] = 22 22 Start nibbling
NIBBLE_PUNCH_CODE[3] = 25 25 Start punching
NIBBLE_PUNCH_CODE[4] = 26 26 Activation of dwell
NIBBLE_PUNCH_CODE[5] =122 122 Start nibbling with leader, stroke control
on servo level
NIBBLE_PUNCH_CODE[6] =125 125 Start punching with leader, stroke control
on servo level
NIBBLE_PUNCH_CODE[7] = 0 0 Not used (available soon)
Special cases, errors, ... If MD: PUNCHNIB_ACTIVATION = 2 (M functions are interpreted directly by software),
... then MD: NIBBLE_PUNCH_CODE[0] = 20 must be set.
Related to .... PUNCHNIB_ACTIVATION

Copyright © Siemens AG, 2005.


2/N4/4-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
4.2 Channelspecific setting data

4.2 Channelspecific setting data

42400 PUNCH_DWELL_TIME
SD number Dwell
Default setting: 1.0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after: immediately Unit: s
Data type: DOUBLE Applies from SW: 3
Meaning: This machine data is used to set the dwell between reaching the position and initiating the
stroke movement.
The set value is rounded to whole multiples of the interpolation clock cycle (i.e. the value
set here may deviate slightly to the dwell actually applied).
Related to .... MD 10710: PROG_SD_RESET_SAVE_TAB

42402 NIBPUNCH_PRE_START_TIME
SD number Pre-start time
Default setting: 1.0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after: immediately Unit: s
Data type: DOUBLE Applies from SW: 3
Meaning: This setting data has exactly the same effect as machine data
NIBBLE_PRE_START_TIME. Its primary purpose is to allow the pre-start time to be altered
from the NC program so that it can be adapted to different metal sheet sizes and thick-
nesses. However, setting data 42402 is effective only when the machine data has been set
to zero.
Related to .... MD 26018: NIBBLE_PRESTART_TIME

42404 MINTIME_BETWEEN_STROKES
SD number Minimum time interval between two consecutive strokes
Default setting: 1.0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after: immediately Unit: s
Data type: DOUBLE Applies from SW: 5.3
Meaning: If a punching dwell time (PDELAYON) is programmed in addition to the minimum interval,
then the two times are applied additively.
If a pre-initiation time at G603 is programmed, it will be effective only if the end of interpola-
tion is reached before the time set in SD 42404: MINTIME_BETWEEN_STROKES has
elapsed.
Related to .... MD 26018: NIBBLE_PRESTART_TIME

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/4-39
Punching and Nibbling (N4) 06.05
4.2 Channelspecific setting data

Notes

Copyright © Siemens AG, 2005.


2/N4/4-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
5.1 Signal overview

Signal Descriptions 5
5.1 Signal overview

Signals to NCK Signals from NCK

Channel 2
Stroke enable (DB21-22, DBX3.0) Channel 1

Manual stroke initiation (DB21-22, Stroke initiation active


DBX3.1) Punching
and (DB21-22, DBX38.0)
Stroke suppression (DB21-22, DBX3.2)
nibbling
Delayed stroke (DB21-22, DBX3.3) Acknowledgement manual
stroke initiation
Stroke inoperative (DB21-22, DBX3.4) (DB21-22, DBX38.1)

Fig. 5-1 PLC interface signals for “Punching and nibbling”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/5-41
Punching and Nibbling (N4) 06.05
5.2 Signals to channel

5.2 Signals to channel

DB 21, 22 No stroke enable


DBX3.0
Data Block Signal(s) to channel (PLC –––> NCK)
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 3
Signal state 1 or signal This signal enables the punching strokes via the PLC.
transition 0 –––> 1 1 signal: Stroke is disabled,
the NC must not enable punching strokes
Signal state 0 or signal 0 signal: Stroke enable is present,
transition 1 –––> 0 the NC may execute a punching stroke provided the enabling signal is not set.

DB 21, 22 Manual stroke initiation


DBX3.1
Data Block Signal(s) to channel (PLC –––> NCK)
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 3
Signal state 1 or signal This signal permits a single stroke to be initiated in manual mode.
transition 0 –––> 1 1 signal: Manual stroke is executed
Signal state 0 or signal 0 signal: No effect
transition 1 –––> 0

DB 21, 22 Stroke suppression


DBX3.2
Data Block Signal(s) to channel (PLC –––> NCK)
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 3
Signal state 1 or signal This signal simply prevents execution of the stroke. The machine continues to operate.
transition 0 –––> 1 The automatic path segmentation remains active if it is already activated. Only the signal
“Stroke initiation” is suppressed. The machine traverses in “stop and go”
mode. The step length is defined by the path segmentation.
1 signal: Stroke suppression is active
Signal state 0 or signal 0 signal: Stroke suppression is not active
transition 1 –––> 0

DB 21, 22 Stroke inoperative


DBX3.3
Data Block Signal(s) to channel (PLC –––> NCK)
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 3
Signal state 1 or signal The NC reacts to this signal by initiating an immediate movement stop. An alarm is output if
transition 0 –––> 1 any other movement or action needs to be interrupted as a result of this signal.
In physical terms, the signal is identical to the signal “Stroke active” for the CNC, i.e. the
system is wired such that the two signals are taken to the same NC input via an AND gate.
1 signal: Stroke inoperative (corresponds to signal “Stroke enable”)
Signal state 0 or signal 0 signal: Stroke operative (corresponds to signal “Stroke enable”)
transition 1 –––> 0

Copyright © Siemens AG, 2005.


2/N4/5-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
5.2 Signals to channel

DB 21, 22 Delayed stroke


DBX3.4
Data Block Signal(s) to channel (PLC –––> NCK)
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 3
Signal state 1 or signal A “Delayed stroke” can be activated via this signal. This corresponds in function to the
transition 0 –––> 1 programming of PDELAYON. Other PLC signals not corresponding to the standard are not
evaluated in the NCK. With the exception of the manual stroke initiation, the evaluation of
signals is limited to PON active.
1 signal: Delayed stroke is active
Signal state 0 or signal 0 signal: Delayed stroke is not active
transition 1 –––> 0

DB 21, 22 Manual stroke initiation


DBX3.5
Data Block Signal(s) to channel (PLC –––> NCK)
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 6.4
Signal state 1 or signal This “manual stroke initiation” signal allows the operator to initiate a punching process,
transition 0 –––> 1 even when the parts program is not being processed. Thus the initiation of the punching
process is controlled from the PLC.
Successful stroke initiation is indicated to the PLC by the NCK –> PLC
Interface signal “Manual stroke initiation acknowledgement” (DB21, ... DBX38.1).
1 signal: Manual stroke initiation is active
Signal state 0 or signal 0 signal: Manual stroke initiation is not active
transition 1 –––> 0

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/5-43
Punching and Nibbling (N4) 06.05
5.3 Signals from channel

5.3 Signals from channel

DB21, 22 Stroke initiation active


DBX38.0
Data Block Signal(s) from channel (NCK –> PLC)
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 3
Signal state 1 or signal This signal indicates whether the stroke initiation is active.
transition 0 –––> 1 1 signal: Stroke initiation is active
Signal state 0 or signal 0 signal: Stroke initiation is not active
transition 1 –––> 0

DB21, 22 Acknowledgement of manual stroke initiation


DBX38.1
Data Block Signal(s) from channel (NCK –> PLC)
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 3
Signal state 1 or signal This signal indicates whether a manual stroke has been initiated.
transition 0 –––> 1 1 signal: Manual stroke has been initiated
Signal state 0 or signal 0 signal: Manual stroke has not been initiated
transition 1 –––> 0

Copyright © Siemens AG, 2005.


2/N4/5-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
6 Examples

Examples 6
Examples of defined start of nibbling operation

1. Example:
:
:
N10 G0 X20 Y120 SPP= 20 Position 1 is approached
N20 X120 SON Defined start of nibbling,
first stroke on “1”, last
stroke on “2”
N30 Y20 Defined start of nibbling,
first stroke on “3”, last
stroke on “4”
N40 X20 Defined start of nibbling,
first stroke on “5”, last
stroke on “6”
N50 SPOF
N60 M2

X 220 200 180 160 140 120 100 80 60 40 20 0

44 55 66 20

40

60

80

3 100

2 1 120

Fig. 6-1

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/6-45
Punching and Nibbling (N4) 06.05
6 Examples

2. Example: This example utilizes the “Tangential control” function. Z has been selected as
the name of the tangential axis.
:
:
N5 TANG (Z, X, Y, 1, “B”) Definition of tangential axis
N8 TANGON (Z, 0) Selection of tangential control
N10 G0 X20 Y120 Position 1 is approached
N20 X120 Z SPN=20 SON Defined start of nibbling,
tangential control
selected, first stroke on “1”,
last stroke on “2”
N30 SPOF TANGOF Deselection of nibbling mode
and deselection of tangential
control
N38 TANGON (Z, 0) Selection of tangential control
N40 Y20 Z SON Defined start of nibbling,
tangential control
selected, first stroke on “2”,
rotated through 90 degrees to
block N20, last stroke on “3”
N50 SPOF
N60 M2

X 220 200 180 160 140 120 100 80 60 40 20 0

3 20

40

60

80

100

2 1 120

Fig. 6-2

Copyright © Siemens AG, 2005.


2/N4/6-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
6 Examples

(3) Example of defined start of nibbling illustrated in diagram below:


:
:
N5 G0 X10 Y10 Position
N10 X90 SPN=20 SON Defined start of nibbling,
Five punching operations
N20 X10 Y30 SPP=1 Initiation of punching
operation at end of path
N30 X90 Four punching operations
with SPP distance=20
N40 SPOF
N50 M2

(4) Example of defined start of nibbling illustrated in diagram below:


:
:
N5 G0 X10 Y10 Position
N10 X90 SPN=4 SON Defined start of nibbling,
Five punching operations
N20 X10 Y30 PON Initiation of punching
operation at end of path
N30 X90 SPN=4 Four punching operations
N40 SPOF
N50 M2

X 100 90 80 70 60 50 40 30 20 10 0

10

ÉÉ
20

ÉÉ 30

ÉÉ
40

ÉÉ
N10 N20 N30 Y

Fig. 6-3 Example of defined start of nibbling operation

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/6-47
Punching and Nibbling (N4) 06.05
6 Examples

(5) Examples of E programming without defined start of nibbling illustrated in


diagram below:
:
:
N5 G0 X10 Y30 Position
N10 X90 SPN=20 PON No defined start of nibbling,
Four punching operations
N15 Y10 Initiation of punching
operation at end of path
N20 X10 SPP=20 Four punching operations
with distance E20
N25 SPOF
N30 M2

(6) Examples of H programming without defined start of nibbling illustrated in


diagram below:
:
:
N5 G0 X10 Y30 Position
N10 X90 SPN=4 PON No defined start of nibbling,
Four punching operations
N15 Y10 Initiation of punching
operation at end of path
N20 X10 SPN=4 Four punching operations
N25 SPOF
N30 M2

X 100 90 80 70 60 50 40 30 20 10 0

10

20

30

40

Punching Positioning, no stroke! Y

Fig. 6-4 Examples of E/H programming without defined start of nibbling

Copyright © Siemens AG, 2005.


2/N4/6-48 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
6 Examples

Application example: E value for punching

  X

150
75
Y

275
25

37.39 125
160

375 45 150 75

Fig. 6-5 Workpiece

Program extract:

N100 G90 X75 Y75 F60 PON Position at starting point  of vertical
row of holes, punch single hole
N110 G91 Y125 SPP=25 PON End point coordinates (incremental),
feedrate value: 25 mm, activate punching
N120 G90 X150 SPOF Absolute dimensioning, position at
starting point  of horizontal row of holes
N130 X375 SPP=45 PON End point coordinates, feedrate value: 45 mm
N140 X275 Y160 SPOF Position at starting point  of inclined
row of holes
N150 X150 Y75 SPP=40 PON End point coordinates, programmed
feedrate value: 40 mm, calculated
feedrate value: 37.79 mm
N160 G00 Y300 SPOF Position


Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/6-49
Punching and Nibbling (N4) 06.05
6 Examples

Notes

Copyright © Siemens AG, 2005.


2/N4/6-50 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
7.2 Machine data

Data Fields, Lists 7


7.1 Interface signals

DB number Bit, byte Name Refer-


ence
Channel-specific (signals to channel)
21–22 3.0 No stroke enable
21–22 3.1 Manual stroke initiation
21–22 3.2 Stroke suppression
21–22 3.3 Stroke inoperative
21–22 3.4 Delayed stroke
21–22 3.5 Manual stroke initiation
Channel-specific (signals from channel)
21–22 38.0 Stroke initiation active
21–22 38.1 Acknowledgement of manual stroke initiation

7.2 Machine data

Number Identifier Name Refer-


ence
Channelspecific ($MC_ ... )
20150 GCODE_RESET_VALUES[n] Reset G groups /K1/
26000 PUNCHNIB_ASSIGN_FASTIN Hardware assignment for input byte with stroke control
26002 PUNCHNIB_ASSIGN_FASTOUT Hardware assignment for output byte with stroke con-
trol
26004 NIBBLE_PUNCH_OUTMASK[n] Screen form for high-speed output bits
26006 NIBBLE_PUNCH_INMASK[n] Screen form for high-speed input bits
26008 NIBBLE_PUNCH_CODE[n] Definition of M functions (applies only to SW 3.1)
26010 PUNCHNIB_AXIS_MASK Definition of punching and nibbling axes
26012 PUNCHNIB_ACTIVATION Activation of punching and nibbling functions

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/7-51
Punching and Nibbling (N4) 06.05
7.4 Language commands

Number Identifier Name Refer-


ence
26014 PUNCH_PATH_SPLITTING Activation of automatic path segmentation
26016 PUNCH_PARTITION_TYPE Behavior of single axes with active automatic path
segmentation
26018 NIBBLE_PRE_START_TIME Automatically activated pre-initiation time
26020 NIBBLE_SIGNAL_CHECK Monitoring of the input signal

7.3 Setting data

Number Identifier Name Refer-


ence
Channelspecific ($SC_ ... )
42400 PUNCH_DWELL_TIME Dwell time
42402 NIBPUNCH_PRE_START_TIME Pre-start time
42404 MINTIME_BETWEEN_STROKES Minimum time interval between two consecu-
tive strokes (SW 5.3 and higher)

7.4 Language commands

G group Language com- Meaning


mand
35 SPOF Stroke/ Punch OFF Punching and nibbling OFF
35 SON Stroke ON Nibbling ON
35 SONS Stroke ON Nibbling ON (position controller)
35 PON Punch ON Punching ON
35 PONS Punch ON Punching ON (position controller)
36 PDELAYON Punch with Delay ON Punching with delay ON
36 PDELAYOF Punch with Delay OFF Punching with delay OFF
Path segmentation
SPP Path per stroke, modal action
SPN Number of strokes per block, non-modal action

Copyright © Siemens AG, 2005.


2/N4/7-52 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Punching and Nibbling (N4)
7.5 Alarms

7.5 Alarms
For detailed descriptions of the alarms, please refer to
References: /DA/, “Diagnostics Guide”
and the online help of MMC 101/102/103 systems.


Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/N4/7-53
Punching and Nibbling (N4) 06.05
7.5 Alarms

Notes

Copyright © Siemens AG, 2005.


2/N4/7-54 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Positioning Axes (P2)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-5
2.1 Selection of positioning axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-5
2.1.1 Separate channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-6
2.1.2 Position axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-7
2.1.3 Concurrent positioning axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-9
2.2 Motion behavior and interpolation functions . . . . . . . . . . . . . . . . . . . 2/P2/2-10
2.2.1 Path axes traverse as positioning axes with G0
(SW 6.1 and higher) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-10
2.2.2 Autonomous individual axis operations (SW 6.3 and later) . . . . . . 2/P2/2-12
2.2.3 Autonomous single axis operations with numerically controlled ESR
(SW 6.4 and higher) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-17
2.3 Block change . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-19
2.3.1 Settable block change time (SW 6.2 and higher) . . . . . . . . . . . . . . . 2/P2/2-22
2.3.2 End of motion criterion with block search (SW 6.1 and higher) . . . 2/P2/2-27
2.4 Velocity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-28
2.5 Control by PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-29
2.6 Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-30
2.6.1 Programming from external . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-31
2.7 Response with special functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-32
2.7.1 Dry run feedrate (DRY RUN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-32
2.7.2 Single block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/2-32
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/4-33
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/4-33
4.1 General machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/4-33
4.2 Channel-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/4-34
4.3 Axis/spindle-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/4-35
4.4 Axis-specific setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/4-36

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/i
06.05

5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/5-37


5.1 Axis/spindle-specific signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/5-37
5.2 Function call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/5-40
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/6-41
6.1 Motion behavior and interpolation functions . . . . . . . . . . . . . . . . . . . 2/P2/6-41
6.1.1 Path axes traverse in G0 with no interpolating (SW 6.1 and higher) 2/P2/6-42
6.2 Examples of autonomous single axis operations
(SW 6.3 and higher) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/6-42
6.2.1 PLC actions as NCK reaction (SW 6.4 and higher) . . . . . . . . . . . . . 2/P2/6-42
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/7-45
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/7-45
7.2 Machine Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/7-46
7.3 Setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/7-46
7.4 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P2/7-46
J

Copyright © Siemens AG, 2005.


2/P2/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
1 Brief Description

Brief Description 1
In addition to axes for machining, modern machine tools can also be equipped
with axes for auxiliary movements, e.g.:

S Axis for tool magazine


S Axis for tool turret
S Axis for workpiece transport
S Axis for pallet transport
S Axis for loader (also multi-axis)
S Axis for tool changer
S Axis for quill/sleeve or steady

Positioning axes The Positioning axes function allows axes for auxiliary motions to be integrated
more easily into the control system.
The integration of the positioning axes is simpler

S During programming:
The axes are programmed together with the axes for workpiece machining
in the same parts program, without having to sacrifice valuable machining
time.

S During program testing/start-up:


Program testing and start-up is performed simultaneously for all axes.

S During operation:
Operation and monitoring of the machining process commence
simultaneously for all axes.

S During PLC configuring/start-up:


No allowance has to be made on PLC or external computers (PCs) for
synchronization between axes for machining and axes for auxiliary
movements.

S During system configuration:


A second channel is not required.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/1-3
Positioning Axes (P2) 06.05
1 Brief Description

Motions and Each channel has one path interpolator and at least one axis interpolator with
interpolations the following interpolation functions:

S With a path interpolator:


Linear interpolation (G01), circular interpolation (G02/G03), spline
interpolation, etc.

S With an axis interpolator:


Each channel has an axis interpolator. When a positioning axis is
programmed, an axis interpolator is started in the control (with linear
interpolation G01).

S End of motion criterion (SW 6.1 and higher):


The programmed end position of a positioning axis is reached when the end
of motion criterion FINEA, COARSA, IPOENDA is fulfilled.

S Path axes in a rapid traverse motion (SW 6.1 and higher):


Path axes can be moved in rapid traverse (G0) either via
linear interpolation or non-linear interpolation.

S Autonomous single-axis operations (SW 6.3 and higher):


Single PLC axes, command axes started via static synchronized actions or
asynchronous reciprocating axes can be interpolated independently of the
NCK.
An axis/spindle interpolated by the main run then reacts independently of
the NC program. The channel response triggered by the program run is
decoupled so as to transfer control of a specific axis/spindle to the PLC.

S Control by the PLC:


All channel-specific signals act to the same extent on path and positioning
axes. Exceptions to this are explained in Chapter 2.
Positioning axes can be controlled via additional, axis-specific signals.
These signals are described in Chapter 2.
PLC axes are traversed by the PLC via special function blocks in the basic
program; their movements can be asynchronous to all other axes. The
travel motions are executed separate from the path and synchronized
actions.
J

Copyright © Siemens AG, 2005.


2/P2/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.1 Selection of positioning axes

Detailed Description 2
In addition to the axes required for machining, a complex modern machine tool
can be equipped with further axes for auxiliary movements. The axes for
machining a workpiece are known as path axes: Within the channel they are
guided by the interpolator such that they start simultaneously, accelerate, reach
the end point and stop together.
The auxiliary axes include:

S Axis for tool magazine


S Axis for workpiece transport
S Axis for pallet transport
S Axis for loader
S Axis for tool changer
S Axis for quill/sleeve or steady
Many of these axes were previously manipulated hydraulically and triggered by
the part program by means of an auxiliary function.
With control of the axis in the NC, the axis can be addressed by name in the
part program and the actual position displayed on the screen.
Positioning axes are traversed independently of the path axes with their own
dedicated axis-specific feedrate.
Synchronous axes and geometry axes can be traversed non-modally as
positioning axes.
Special travel instructions are provided for positioning axes
POS[...], POSA[...]

2.1 Selection of positioning axes


When axes are provided for auxiliary movements on a machine tool, the
required properties will decide whether the axis is to be:

S programmed in a separate parts program


––> see Subsection 2.1.1 “Separate channels”

S programmed in the same parts program as the machining process


––> see Subsection 2.1.2 “Positioning axes”

S triggered exclusively from the PLC during machining


––> see Subsection 2.1.3 “Concurrent positioning axes”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-5
Positioning Axes (P2) 06.05
2.1 Selection of positioning axes

2.1.1 Separate channel

A channel represents a self-contained NC which, with the aid of a parts


program, can be used to control the movement of axes, spindles and machine
functions independently of other channels.
Independence between channels is assured by means of the following
provisions:

S An active part program per channel


S Channel-specific signals such as
– IS “NC Start” (DB21, ... DBX7.1)
– IS “NC stop” interface signal (DB21, ... DBX7.3)
– IS “Reset” (DB21, ... DBX7.7)

S One feedrate override per channel


S One rapid traverse override per channel
S Channel-specific evaluation and display of alarms
S Channel-specific display e.g. for:
– Actual axis positions
– Active G functions
– Active auxiliary functions
– Current program block

S Channel-specific testing and channel-specific modification of programs:


– Single block
– Dry run (DRY RUN)
– Block search
– Program test
Please see the following for more information on channel functionality:
References: /FB/, K1, “Mode Groups, Channels, Program Operation Mode”

Copyright © Siemens AG, 2005.


2/P2/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.1 Selection of positioning axes

2.1.2 Position axis

Positioning axes are programmed together with path axes, i.e. with the axes
that are responsible for workpiece machining.
Instructions for both positioning axes and path axes can be included in the
same NC block. Although they are programmed in the same NC block, the path
and positioning axes are not interpolated together and do not reach their end
point simultaneously (no direct time relationship, see also Section 2.2).
The block change depends on the type of positioning axis programmed (see
Section 2.3).

S Type 1 The block change occurs when all path and positioning axes
have reached their programmed end point.

S Type 2 The block change occurs when all path axes have reached their
programmed end point.

S Type 3 With SW 6.2 and higher


It is possible to set the block change within the braking ramp of
the single axis interpolation if the conditions for the motion end
and the block change are fulfilled for the path interpolation.
With positioning axes of type 2, it is possible to approach the programmed end
position across several block boundaries.
Positioning axes permit movements to be activated from the same machining
program and such movements to be synchronized at block limits (type 1) or at
explicit points by means of a WAITP command (type 2).

SW 6.2 and higher Single-axis interpolation and path axes with G0 as positioning axis
For single-axis interpolation, it is also possible to set a new motion end
condition for the block change in the braking ramp. In addition, each path axis
can be traversed as positioning axis in rapid traverse movement (G0). Thus all
axes travel to their endpoint independently.
In this way, two sequentially programmed X and Z axes are treated like
positioning axes in conjunction with G0. The block change to axis Z can be
initiated by axis X as a function of the braking ramp time setting (100–0%). Axis
Z starts to move while axis X is still in motion. Both axes approach their end
point independently of one another.

Independence of The mutual independence of path and positioning axes is ensured by the
path and following measures:
positioning axes
S No shared interpolation
S Each positioning axis has a dedicated axis interpolator
S Dedicated feed override for each positioning axis
S Dedicated programmable feedrate
S Dedicated “axisspecific delete distance-to-go” interface signal.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-7
Positioning Axes (P2) 06.05
2.1 Selection of positioning axes

Dependence of Positioning axes are dependent in the following respects:


positioning axes
S A shared parts program
S Starting of positioning axes only at block boundaries in the parts program
S New end of motion condition for block change already in the braking ramp of
single-axis interpolation (SW 6.2 and higher).

S With rapid traverse movement G0, path axes traverse as positioning axes –
one of two different modes selectable (SW 6 and higher).

S No rapid traverse override


S The signals
– IS “NC Start” (DB21, ... DBX7.1)
– IS “NC stop” interface signal (DB21, ... DBX7.3)
– IS “Reset” (DB21, ... DBX7.7)
– IS “Read-in disable” (DB21, ... DBX6.1)
act on the entire channel and therefore on positioning axes.

S Program-specific and channel-specific alarms also deactivate positioning


axes.

S Program control (dry run feed, program test, DRF, ... etc.) also act on
positioning axes

S Block search and single block also act on positioning axes


S In SW 6 and higher, the last block processed in the search run with a motion
end condition serves as a container for setting all axes.

S Group 1 (modal movement commands) of the G functions (G0, G1, G2, etc.)
does not apply to positioning axes.
References: /PA/, “Programming Guide”

Applications The following are typical applications for positioning axes:

S Single-axis loaders
S Multi-axis loaders without interpolation (PTP ––> point-to-point traversing)
S Workpiece feed and transport
SW 6.2 and higher offers the following enhancements:

S With G0 workpiece delivery and workpiece transport can travel to their end
points independently of one another.

S On machines with several machining processes in sequence: significant


reduction in individual machining steps due to block change in the braking
ramp of the single-axis interpolation.
Positioning axes are not suitable for multi-axis loaders that require interpolation
between the axes (path interpolator).

Copyright © Siemens AG, 2005.


2/P2/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.1 Selection of positioning axes

2.1.3 Concurrent positioning axis

Concurrent positioning axes are positioning axes with the following attributes:

S Activation from the PLC need not take place at block limits, but can be
implemented at any time in any operating mode (even when a parts program
is already being processed in the channel).

S Program command “WAITP” is required to move a concurrent positioning


axis from the parts program immediately after power ON.

S The parts program continues to run uninhibited, even if the concurrent


positioning axis has not reached the position defined by the PLC.

S SW 4.3 and higher


Depending on the machine data AUTO_GET_TYPE, it is possible to
traverse, from the parts program, using the programming command
– “GET(axis)” or “WAITP(axis)” a concurrent positioning axis as a channel
axis again, or with
– “RELEASE (axis)” or “WAITP(axis)” a channel axis as a concurrent
positioning axis.

Activation from The concurrent positioning axis is activated via FC 15 or FC 16 from the PLC.
PLC
S Feedrate (with feedrate setting = 0, the feed set in MD 32060:
POS_AX_VELO (reset for positioning axis velocity) is applied.

S Absolute coordinates (G90), incremental coordinates (G91), absolute


coordinates along the shortest path for rotary axes (rotary axis name =
DC(value))
The following functions are defined:

S Linear interpolation (G01)


S Feedrate in mm/min or degrees/min (G94)
S Exact stop (G09)
S Settable zero offsets currently selected are valid

Applications Typical applications for concurrent positioning axes include:

S Tool magazines with manual loading and unloading during machining


S Tool magazines with tool preparation during machining

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-9
Positioning Axes (P2) 06.05
2.2 Motion behavior and interpolation functions

2.2 Motion behavior and interpolation functions

Path interpolator Every channel has a path interpolator for a wide range of interpolation modes
such as linear interpolation (G01), circular interpolation (G02/G03), spline
interpolation, etc.

Axis interpolator In addition to the path interpolator, each channel has the equivalent number of
axis interpolators up to the maximum number of available channel axes. When
a positioning axis is programmed, an axis interpolator is started in the control
(with linear interpolation G01).
This axis interpolator runs independently of the path interpolator until the
programmed end position of the positioning axis has been reached.
There is no time relationship between the path interpolator and the axis
interpolator, nor between the axis interpolators.
In SW 5 and lower, the programmed end position of a positioning axis had been
reached when the axis has reached the exact stop fine window (G09).
Continuous-path mode (G64) was not possible with positioning axes.
In SW 5 and higher, the programmed end position of a positioning axis has
been reached when the motion end condition FINEA, COARSA or IPOENDA is
fulfilled.

2.2.1 Path axes traverse as positioning axes with G0 (SW 6.1 and
higher)

Functionality Two optional modes for path axes at rapid traverse movement
With rapid traverse movement (G0), path axes can optionally be moved in two
different modes:

S Linear interpolation: The path axes are interpolated together.


The tool movement programmed with G0 is executed at the greatest
possible traversing velocity (rapid traverse). The rapid traverse velocity is
defined for each axis separately in machine data MD 32000:
MAX_AX_VELO. If the rapid traverse movement is executed simultaneously
on several axes, the rapid traverse speed is determined by the axis which
requires the most time for its section of the path. This corresponds to the
previous functionality.

S Non-linear interpolation: Each path axis interpolates as a single axis


(positioning axis) independently of the other axes at the rapid traverse
velocity defined in MD 32000: MAX_AX_VELO associated with the axis.
The channel-specific delete distance-to-go command via the PLC and
synchronized actions is applied to all positioning axes that were
programmed as path axes.
In both mode types, rapid override is channel-specific.

Copyright © Siemens AG, 2005.


2/P2/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.2 Motion behavior and interpolation functions

Linear Linear interpolation is always performed in the following cases:


interpolation
S With a G code combination with G0
that does not allow a positioning axis movement, e.g. G40, G41, G42, G96,
G961 and MD 20750: ALLOW_G0_IN_G96 == FALSE,

S with a combination of G0 and G64,


S when a compressor or transformation is active,
S in PTP (point-to-point) travel mode,
S when a contour handwheel is selected (FD=0),
S with an active frame and rotation of geometry axes,
S when nibbling is active for geometry axes.

Non-linear With non-linear interpolation, the setting for the appropriate positioning axis
interpolation BRISKA, SOFTA, DRIVEA or
MD 32420: JOG_AND_POS_JERK_ENABLE and
MD 32430: JOG_AND_POS_MAX_JERK.
The existing system variables which refer to the distance to go ($AC_PATH,
$AC_PLTBB and $AC_PLTEB) are supported.

Caution
! As traversal of another contour is possible with non-linear interpolation,
synchronized actions that refer to coordinates of the original path may not be
active.

MD 20730 and Activation of non-linear interpolation: RTLIOF


MD 20732
Definition of RTLI: Rapid Traverse Linear Interpolation
If the new machine data
MD 20730: G0_LINEAR_MODE == FALSE (Siemens mode) or
MD 20732: EXTERN_G0_LINEAR_MODE == FALSE (ISO mode) is activated,
at rapid traverse (G0) the path axes are traversed as positioning axes.
If the new machine data
MD 20730: G0_LINEAR_MODE == TRUE (Siemens mode) or
MD 20732: EXTERN_G0_LINEAR_MODE == TRUE (ISO mode) is activated,
linear interpolation can be deactivated with the NC parts program command
RTLIOF and non-linear interpolation can be activated.
Changeover to linear interpolation: RTLION
RTLION switches back to linear interpolation.
The behavior of the path axes with G0 can be scanned with system variable
$AA_G0MODE.

For an example of non-linear interpolation, see Chapter 6

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-11
Positioning Axes (P2) 06.05
2.2 Motion behavior and interpolation functions

2.2.2 Autonomous individual axis operations (SW 6.3 and later)

Functionality Single PLC axes, command axes started via static synchronized actions or
asynchronous reciprocating axes can be interpolated independently of the
NCK. An axis/spindle interpolated by the main run then reacts independently of
the NC program with respect to

S NC stop,
S Alarm handling
S Program control
S End of program
S RESET

Supplementary Axes/spindles currently operating according to the NC program are not


conditions controlled by the PLC.
Command axis movements cannot be started via non-modal or modal
synchronized actions for PLC-controlled axes/spindles. Alarm 20143 is
signaled.

Sequence The sequence of autonomous single axis functions with the respective transfers
coordinator is represented in a so-called “Use Case” overview:
NCK has control PLC wants to assume control of the axis/spindle
Use Case 1 Cancel operation of axis/spindle
Use Case 2 Stop axis/spindle
Use Case 3 Resume axis/spindle motion
Use Case 4 Reset axis/spindle
PLC has control PLC wants to relinquish control of the axis/spindle

Axis control by Accept control of axis/spindle


PLC
The channel behavior triggered by the NC program run is decoupled. Control of
the axis/spindle is transferred via the axial VDI interface with IS “PLC controls
axis” (DB31, ... DBX28.7)
Description of operational sequence:
1. PLC to NCK with IS “PLC controls axis” (DB31, ... DBX28.7) == 1
Accept control of an axis
2. NCK checks: Is the axis a main run axis or a neutral axis
3. NCK reads MD 10008: MAXNUM_PLC_CNTRL_AXES
to check whether the PLC can control another axis
4. NCK confirms the acceptance and transfers the state of the axis with
IS “PLC controls axis” (DB31, ... DBX63.1) == 1 to the PLC
System variable $AA_SNGLAX_STAT as scannable current axis status.
5. PLC has accepted control of the axis/spindle

Copyright © Siemens AG, 2005.


2/P2/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.2 Motion behavior and interpolation functions

Alternatives The channel status is “interrupted” because a channel stop signal is active. The
axis is handled analogously to the sequence description. The following two
alternatives are possible depending on the status of the axis to be controlled:

S The axis to be controlled by the PLC is not active.


The stop status is also canceled. A subsequent axis start command results
directly in an axis motion.

S The axis to be controlled by the PLC is not active.


The stop status is not canceled. Create the axis status according to use
case 2 “Stop axis”. Resume the axis motion according to use case 3
“Continue axis motion”.

S The channel executes an NC reset.


This operation is asynchronous to the takeover of control by the PLC. The
two previously mentioned alternatives can occur or the axis is assigned to
the channel and is reset.

Supplementary The NCK must have booted.


conditions
Axes/spindles currently operating according to the NC program cannot be
controlled by the PLC.
The NCK does not confirm acceptance of a program axis and outputs alarm
26072 “Channel %1 axis %2 cannot be controlled by PLC”.
If the value set in MD 10008: MAXNUM_PLC_CNTRL_AXES is exceeded, then
axis control cannot be transferred to the PLC. Alarm 26070 “Channel %1 axis
%2 cannot be controlled by PLC, max. no. exceeded” is generated.

Relinquish axis Relinquish control of axis/spindle


control by PLC
Control of the axis/spindle is transferred via the axial VDI interface with IS “PLC
controls axis” (DB31, ... DBX28.7)
Description of operational sequence:
1. PLC to NCK with IS “PLC controls axis” (DB31, ... DBX28.7) == 0 Relinquish
control of an axis
2. NCK checks whether an axial alarm is active
3. NCK checks whether a movement has been activated that is not yet ended
and stops this movement with an axial stop as per use case 2 “Stop
axis/spindle”.
4. NCK executes an axial reset in accordance with use case 4 “Reset
axis/spindle” by reading in and activating the requisite reset machine data
for a single axis.
5. NCK confirms acceptance of axis control and passes the axis status to the
PLC via axial VDI interface using
IS “PLC controls axis” (DB31, ... DBX63.1) == 0
IS “AxStop active” (DB31, ... DBB63.2) == 0
IS “AxReset done” (DB31, ... DBB63.0) == 0
Axis status with system variable $AA_SNGLAX_STAT == 0 “active”
6. The channel now has control over the axis/spindle.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-13
Positioning Axes (P2) 06.05
2.2 Motion behavior and interpolation functions

Alternatives The NCK confirms the transfer and internally sets the “stopped” channel status
for the axis/spindle if it detects that

S the axis-control channel is in the “interrupted” status owing to a stop signal,


S a stop alarm is active for the channel or
S a stop alarm is active for the mode group.

Supplementary The axis/spindle must be operating under PLC control.


conditions
The NCK confirms acceptance of an axis/spindle only if an axial alarm is not
active. If an axial alarm is active, alarm 26074 “Channel %1 Deactivation of PLC
control of axis %2 in current status not permitted” is generated.

Applications An axis/spindle interpolated by the main run can be controlled by the PLC
independently of the NC program via the following VDI interface signals:

S Cancel operation IS “Delete distance-to-go” (DB31, ... DBX6.2)

S Stop axis/spindle IS “AxStop, stop” (DB31, ... DBX28.6)

S Resume axis/spindle motion IS “AxResume” (DB31, ... DBX28.2)


S Reset axis/spindle IS “AxReset” (DB31, ... DBX28.1)

Note
The axis/spindle must be operating under PLC control. The condition basically
applies to all applications: Use cases 1 to 4.
The exchange of signals at the VDI interface during autonomous single
operations is described by means of machine axis examples in a comparison
of PLC actions as the NCK reaction in Section 6.2.
For further information about the channel-specific VDI signal, please see:
References: /FB/, A2, “Various Interface Signals”

Alarm handling for Alarms with an axis parameter are only displayed and not handled as single
single axes axis alarms. It is sufficient to acknowledge these so-called “show alarms” with
CANCEL.

Note
Only alarms that have to be cleared again with AxReset take effect on single
axes.

Use Case 1 Cancel operation of axis/spindle


The Cancel Axis/Spindle function corresponds functionally to the
channel-specific IS “Delete distance to go” (DB31, ... DBX6.2).

Copyright © Siemens AG, 2005.


2/P2/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.2 Motion behavior and interpolation functions

Use Case 2 Stop axis/spindle


All axis motions controlled by the main run are stopped, thereby interrupting the
following movements:
– Axis/spindle: PLC axis, asynchronous reciprocating axis or
command axis started via static synchronized action.
A following axis motion by the axis/spindle is not stopped.
– Overlaid motions such as:
$AA_OFF,
DRF handwheel traversal or online tool offset and
external zero offset.
Description of operational sequence:
1. PLC requests the NCK to stop the relevant axis with IS “AxStop, stop”
(DB31, ... DBX28.6) == 1.
2. NCK brakes the axis along a ramp.
3. NCK transfers the axis to the stopped state and informs the PLC of the state
change via the VDI interface (NCK→PLC) as follows:
IS “AxStop active” (DB31, ... DBX63.2) == 0,
IS “Travel command plus” (DB31, ... DBX64.7) == 0 or
IS “Travel command minus” (DB31, ... DBX64.6) == 0 and
IS “Exact stop fine” (DB31, ... DBX60.7) == 1 or
IS “Exact stop coarse” (DB31, ... DBX60.6) == 1
Axis status interrupted with system variable $AA_SNGLAX_STAT == 3.
4. NCK ends this operation

Alternatives The following scenarios for stopping the axis/spindle are possible:
1. Transfer and stop the axis/spindle simultaneously.
When PLC informs NCK: PLC wants to accept the axis/spindle and it is
simultaneously detected that the axis/spindle is to be stopped, then: NCK
flags the axis/spindle as accepted and continues at the position where the
interruption occurred.
2. The axis/spindle is executing several operating sequences:
Stop all operating sequences apart from movements resulting from following
axis motions. Following axis motion can only be stopped by stopping the
leading axis!
3. PLC requests the NCK to stop the axis/spindle, an axial stop alarm for this
axis is generated simultaneously:
NCK decelerates the axis down a ramp and confirms the braking operation
via OPI.
At the same time, an alarm is signaled to the PLC with
IS “AxAlarm” (DB31, ... DBX61.1) == 1 and the status system variable
$AA_SNGLAX_STAT == 5.
NCK switches the axis to the stop state and notifies the PLC of the change
in axis status.
4. PLC requests the NCK to stop the axis/spindle, a stop alarm is generated
simultaneously and the NC program is activated. The stop alarm is ignored
and does not take effect.
5. A retraction movement of “Extended stop and retract” cannot be stopped.
This retraction motion cannot be halted with IS “AxStop, stop” (DB31, ...
DBX28.6) on the PLC interface.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-15
Positioning Axes (P2) 06.05
2.2 Motion behavior and interpolation functions

Supplementary The PLC must already have accepted control of the axis/spindle. IS “AxStop,
conditions stop” (DB31, ... DBX28.6) is otherwise ignored.

Use Case 3 Resume axis/spindle motion


The axis/spindle motions controlled by the main run and interrupted according
to use case 2 “Stop axis” are resumed.
Description of operational sequence:
1. PLC requests the NCK to resume motion on the relevant axis with IS
“AxResume” (DB31, ... DBX28.2) == 1.
2. NCK checks whether an axis/spindle axial alarm with the cancel criterion
CANCELCLEAR or NCSTARTCLEAR is active and deletes it.
3. NCK checks whether the axis motion can be resumed – no interlocking due
to an alarm – and switches it to the active state.
4. The axis motion is continued and the PLC is informed of the state change
via the VDI interface (NCK→PLC) as follows:
IS “AxStop active” (DB31, ... DBX63.2) == 0,
IS “Travel command plus” (DB31, ... DBX64.7) == 1 or
IS “Travel command minus” (DB31, ... DBX64.6) == 1 and
IS “Exact stop fine” (DB31, ... DBX60.7) == 0 or
IS “Exact stop coarse” (DB31, ... DBX60.6) == 0
Axis status active with system variable $AA_SNGLAX_STAT == 4.
5. NCK ends this operation

Alternatives The axis/spindle is executing several operating sequences:

S Resume all operating sequences.


S Following motions are dependent on the leading axis motion.

Supplementary The NCK detects the following fault scenarios:


conditions
S When the PLC prompts the axes/spindles to continue moving and this
axis/spindle has not been accepted by the PLC, the
IS “AxResume” (DB31, ... DBX28.2) is ignored.

S If the axis/spindle is not in a stopped state, the


IS “AxResume” (DB31, ... DBX28.2) is ignored.

S If the motion of the axis/spindle must not be continued due to an active


alarm, the IS “AxResume” (DB31, ... DBX28.2) is ignored.

Copyright © Siemens AG, 2005.


2/P2/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.2 Motion behavior and interpolation functions

Use Case 4 Reset axis/spindle


An axis/spindle is reset to its initial state.
Description of operational sequence:
1. PLC requests the NCK to reset the relevant axis with IS “AxReset” (DB31, ...
DBX28.1) == 1.
2. NCK detects that the axis/spindle is active and switches it to the stopped
state.
3. The interrupted sequences are canceled and notified to the PLC as for
“Delete distance to go”.
4. The internal NCK states for the axis/spindle are reset.
5. The axial machine data effective on RESET become operative.
Note: In the case of a channel reset, no axial machine data becomes
operative for an axis controlled by the PLC.
6. If an axial reset has been executed, the following signals are set at the
interface
IS “AxReset done” (DB31, ... DBB63.0) == 1,
IS “AxStop active” (DB31, ... DBX63.2) == 0
and system variable $AA_SNGLAX_STAT == 1 “single axis in reset active”.
7. NCK ends this operation.

Alternatives The NCK detects that the relevant axis/spindle is


S in the “stopped” state Point 3 onwards of operational sequence
description
S in the “StopByAlarm” state Point 3 onwards of operational sequence
description
S not active Point 4 onwards of operational sequence
description

Supplementary The PLC must already have accepted control of the axis/spindle. Otherwise IS
conditions “AxReset” (DB31, ... DBX28.1) is ignored.

2.2.3 Autonomous single axis operations with numerically controlled


ESR (SW 6.4 and higher)

Extended stop With SW 6.4 and higher, the numerically controlled extended stop and retract
numerically function is also available for single axes and is configurable with axial machine
controlled data:
Delay time for ESR single axis with
MD 37510: AX_ESR_DELAY_TIME1
ESR time for interpolatory braking of the single axis with
MD 37511: AX_ESR_DELAY_TIME2
The values of these axial machine data are applied, however, only if the
axis/spindle is a single axis.
Numerically controlled extended stop and retraction is initiated by axial trigger
$AA_ESR_TRIGGER[axis]. It works analogously to $AC_ESR_TRIGGER and
applies exclusively to single axes.
References: /FB3/, M3, “Coupled axes and ESR”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-17
Positioning Axes (P2) 06.05
2.2 Motion behavior and interpolation functions

Extended retract For retracting single axes, the value must have been programmed via
numerically POLFA(axis, type, value) and the following conditions must be met:
controlled
S The axis must be a single axis at the time of triggering
S $AA_ESR_ENABLE[axis]=1
S POLFA(axis, type, value) for type=1 or type=2 only
POLFA(axis, , value, axis, type, ,axis, type).

Note
Numerically controlled extended stop for single axes:
The trigger is only effective if the axis is a single axis at the time of triggering,
otherwise the trigger is ignored and the axial stop for this axis is not executed.
Numerically controlled extended retraction for single axes:
The channel-specific numerically controlled extended retract function does not
work on single axes. All axes that are single axes at the time of triggering
$AC_ESR_TRIGGER will be ignored for channel-specific retraction.
This also applies when all the parameters for retraction, such as
MD 37500: ESR_REACTION, $AA_ESR_ENABLE of the axis, etc., are set.

Examples Extended stopping of a single axis:


MD 37500: ESR_REACTION[AX1]=22
MD 37510: AX_ESR_DELAY_TIME1[AX1]=0.3
MD 37511: AX_ESR_DELAY_TIME2[AX1]=0.06
...
$AA_ESR_ENABLE[AX1] = 1
$AA_ESR_TRIGGER[AX1]=1 ; the stop function starts working at this point
Extended retraction of a single axis:
MD 37500: ESR_REACTION[AX1]=21
...
$AA_ESR_ENABLE[AX1] = 1
POLFA(AX1, 1, 20.0) ; AX1 becomes the axial retraction position 20.0
; assigned (absolutely)
$AA_ESR_TRIGGER[AX1]=1 ; the retraction of AX1 starts at this point
POLFA(axis, type) ; legal short form for programming
POLFA(axis, 0/1/2) ; high-speed deactivation / activation

Warning
! If abbreviated notation is used and only the type is changed, make sure that
the value for the retraction position or retraction path in the application is
meaningful!
The abbreviated notation should only be used in exceptional circumstances.
In particular after:
A power on, the retraction path or the retraction position must be reset.
POLFA(axis, 1, $AA_POLFA[Achse]) ; causes a preprocessing stop
POLFA(axis, 1) ; does not cause a preprocessing stop

Copyright © Siemens AG, 2005.


2/P2/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.3 Block change

2.3 Block change


Positioning axes can be programmed in the NC block individually or in
combination with path axes.
Path axes and positioning axes are always interpolated separately (path
interpolator and axis interpolators) and this causes them to reach their
programmed end positions at different times.
There are two types of positioning axis, whose response differs with respect to
block change:

S Type 1 The block change occurs when all path and positioning axes
have reached their programmed end point.

S Type 2 Block change, if all path axes have reached their programmed
end points according to G601, G602, G603.

S Type 3 With SW 6.2 and higher,


it is possible to set the block change within the braking ramp of
the single axis interpolation if the conditions for the motion end
and the block change are fulfilled for the path interpolation.

Positioning axis Block change at the programmed end point of all path axes and
type 1 positioning axes

Velocity of path axes

Time
Velocity of positioning axes

Time

Path axes reach programmed end position Positioning axis reaches


programmed end position

Block change

Fig. 2-1 Block change with positioning axis type 1, example of sequence

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-19
Positioning Axes (P2) 06.05
2.3 Block change

Properties of type With SW 5 and lower, type 1 positioning axes have the following behavior:
1 positioning axis
S The block change occurs (NC block finished) when all the path and
positioning axes have reached the respective motion end condition.

S Continuous-path mode (G64) is only possible for path axes if the positioning
axes reach their motion end condition ahead of the path axes (this is not the
case in the example in Fig. 2-1).

S Programming with
POS[name] = end point FA[name] = feed
or abbreviated with
POSA[name] = end point
in which case the feed set in MD 32060: POS_AX_VELO is applied.

S The programmed instruction is effective on a non-modal basis. The


geometry and synchronous axes are separated with the instructions from
the path axis grouping and traversed at an axis-specific velocity.
With SW 5 and higher, type 1 positioning axes have the following additional
behavior:

S With continuous-path mode (G601, G602, G603) positioning axes/spindles


traverse to the positioning end if motion condition FINEA, COARSA or
IPOENDE is fulfilled.

Copyright © Siemens AG, 2005.


2/P2/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.3 Block change

Positioning axis Block change at programmed end point of all path axes
type 2

Velocity of path axes

G601 G603
Time
Velocity of positioning axes
G603 exact stop fine
G601 interpolator end

Time

Path axes reach programmed end position Positioning axis reaches


programmed end position

Block change

Fig. 2-2 Block change with positioning axis type 2, example of sequence

Properties of type With SW 5 and lower, type 2 positioning axes have the following behavior:
2 positioning axis
S The block change occurs (NC block finished) when the path axes have
reached their programmed end positions with regard to G601, G602 and
G603.

S The positioning axes can traverse across several block boundaries to their
programmed end positions.

S Since there is no time relationship between “NC block finished” and the point
at which type 2 positioning axes reach their programmed end positions,
the WAITP coordination command is provided for the synchronization of the
positioning axes (see Section 2.6).

S If a positioning axis is reprogrammed before it has reached the previous


position and before the motion end condition is fulfilled, the “axis cannot be
repositioned” alarm is issued.

S Programming with
POSA[name] = end point FA[name] = feed
or abbreviated with
POSA[name] = end point
in which case the feed set in MD 32060: POS_AX_VELO is applied.

S The programmed instruction is effective on a non-modal basis. The


geometry and synchronous axes are separated with the instructions from
the path axis grouping and traversed at an axis-specific velocity.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-21
Positioning Axes (P2) 06.05
2.3 Block change

2.3.1 Settable block change time (SW 6.2 and higher)

Positioning axis Settable block change time for single axis interpolation
type 3

Velocity of path axes Programmable motion end condition

G601 G603
Time
Velocity of positioning axes
G603 exact stop fine
G601 interpolator end

Braking ramp of a single-axis interpolation

Time

Path axes reach programmed end position Positioning axis reaches end
IPO Stop position of braking ramp

Settable block change

Fig. 2-3 Settable block change for type 3 positioning axis, example

Properties of type With type 3 positioning axes the motion end condition can always be
3 positioning axis programmed with FINEA, COARSEA or IPOENDA. The block change condition
can be set within the braking ramp of the single-axis interpolation.

S The block change occurs (NC block finished) when all the path
axes/spindles have fulfilled the programmed motion end conditions. The
positioning axis/spindle must also have met the programmed block change
condition within the braking ramp of the single-axis interpolation. The block
change can only be executed if both conditions are fulfilled.

S The position end of the positioning axes can be defined in the


programmable motion end condition by means of one of the following NC
commands
FINEA[axis]: “Exact stop fine” motion end or
COARSEA[axis]: “Exact stop coarse” motion end or
IPOENDA[axis]: End of motion when “IPO stop” is reached.

S The following syntax applies for the position end of positioning spindles:
FINEA[Sn]: “Exact stop fine” motion end or
COARSEA[Sn] “Exact stop coarse” motion end or
IPOENDA[Sn]: End of motion when “IPO stop” is reached
Sn: Spindle number, 0... max. spindle number or
axis: Axis identifier, X, Y, Z.

Copyright © Siemens AG, 2005.


2/P2/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.3 Block change

Command axes Command axes respond immediately to any reprogramming; therefore,


programming should not be changed. Each individual axis has its own axis
interpolator and its own feedrate. An axis cannot be moved by the parts
program and synchronized actions simultaneously.
The FINEA, COARSEA, IPOENDA motion end conditions are applicable for the
transition to a neutral axis. The axis can then be used via the NC program, for
example, as a PLC axis.

Reciprocating axes Reciprocating axes always brake at their reversal position and then move in the
opposite direction. Therefore, reciprocating axes do not require an expansion.

Note
The behavior of PLC axes at block change is described in Section 2.5 Control
by PLC.
For further information about block change with programmable motion end
conditions FINEA, COARESA and IPOENDA, please refer to:

References: /FB/, S1, “Spindles”, Spindle modes


/FB/, V1, “Feeds”, Programmable single-axis dynamic response

IPOBRKA When the NC command IPOBRKA is issued, the motion end condition is
activated in the braking ramp either

S in the parts program: Block change in the parts program or


S in synchronized action: Technology cycles
With SW 6.2 and higher, type 2 positioning axis behavior differs from that in
previous software versions as follows:
If POSA if programmed, then POSA again with IPOBRKA (block change in the
braking ramp), an alarm is not issued. The new POSA motion waits for the
preceding POSA motion to have reached the block change point in the braking
ramp.

Condition for If the motion end conditions for all axes/spindles to be operated in the block are
block change fulfilled in addition to the block change condition, then block change takes
place. This applies both to parts program blocks and for technology cycle
blocks.

Braking ramp The new setting data “Block change condition braking ramp”
block change SD 43600: IPOBRAKE_BLOCK_EXCHANGE
condition in SD allows the block change time to be set for single-axis interpolation from the start
43600 time of the braking ramp at 100% right up to IPO_Stop at 0%.
With 100% the block change condition of the positioning axis is already fulfilled
at the start point of the braking ramp.
With 0% the block change condition is identical to IPOENDA.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-23
Positioning Axes (P2) 11.02
06.05
2.3 Block change

Advantages of the Setting SD 43600 in percent offers the following advantages:


percent setting
S The block change condition is not dependent on a position and is therefore
dependent on the override set.

S Maximum override will result in the greatest smoothing deviation.


S A smaller override will reduce the deviation.
The braking ramp block change condition can be queried like the previous axial
motion end conditions with $AA_MOTEND[axis] = 4

Braking ramp with Additional block change condition in the braking ramp with SW 6.4 and
tolerance window higher
From SW 6.4, there will be an additional tolerance window to be selected as
well as the already existing block change condition in the braking ramp.
Release will only occur when the axis

S as before has reached the specified % value of its braking ramp and
S from SW 6.4, its current actual position or setpoint position is no further
away than an adjustable tolerance from the end position of the axis in the
block.
The latest the axis is available is when the interpolator reaches the end position.
The tolerance window is modal.
The following applies to the braking ramp with tolerance window block change
condition:
The setpoint position is notified with$AA_MOTEND[axis] = 5
The actual position is notified with $AA_MOTEND[axis] = 6

Supplementary Block change and alteration of axis status


conditions
A premature block change is not possible:

S During oscillation with partial infeed


the block-specific oscillation motion must remain active until the axis with
partial infeed has reached its end position.

S With handwheel traversal


the last set end of motion criterion is operative.
The axis for which a block change occurred within the braking ramp can only be
programmed in the following block in the same axis state.
At axis state change, e.g. from POS to SPOS, the last programmed motion end
condition FINEA, COARSEA or IPOENDA is active.
This also applies:

S if a positioning axis is changed to a path axis or


S if the program is specifically waiting for the end of the positioning motion
(WAITP, M30, technology cycle end, preprocessing stop)

S if a velocity override is activated or deactivated.

Copyright © Siemens AG, 2005.


2/P2/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
11.02
06.05 Positioning Axes (P2)
2.3 Block change

Activation and Motion end condition IPOBRKA and precise time of activation.
deactivation
For parts program execution:

S The braking ramp motion end condition can be activated via the NC
command IPOBRKA.

S The precise time of activation is defined in setting data


SD 43600: IPOBRAKE_BLOCK_EXCHANGE.

S IPOBRKA is deactivated when an axis motion end condition FINEA,


COARSEA or IPOENDA is next programmed for the axis.

S With SW 6.4 and higher


The NC command ADISPOSA can be used to program the size of the
tolerance window for the braking ramp motion end condition and this is
defined by means of setting data SD 43610: ADISPOSA_VALUE[axis].
For technology cycles:

S The braking ramp motion end condition can be activated via the
synchronous action IPOBRKA.

S IPOBRKA is deactivated when an axis motion end condition FINEA,


COARSEA or IPOENDA is next programmed for the axis in a synchronous
action.

S With SW 6.4 and higher


The size of the tolerance window for the braking ramp motion end condition
can be programmed via the synchronous action ADISPOSA.

Note
For more information on the programming of positioning axes, see:
References: /PG/, Chapter 7, “Feedrate regulation and spindle motion”
/PGA/, Chapter 5, “Special motion commands”

Examples For block change condition “Braking ramp” in the parts program:
; Default effective
N10 POS[X] = 100 ; Block change occurs if the X axis is at position 100
; and has reached exact stop fine.

N20 IPOBRKA(X,100) ; Braking ramp block change condition


N30 POS[X] = 200 ; Block change occurs as soon as the X axis starts braking
N40 POS[X] = 250 ; X axis does not brake at position 200 but continues traversing
; to position 250, as soon as the X axis starts braking
; block change occurs.

N50 POS[X] = 0 ; The X axis brakes and traverses back to position 0


; block change occurs at position 0 exact stop fine
N60 X10 F100
N70 M30

At direction reversal (N50), the axis first brakes to reach the target position, before it can be
traversed in the opposite direction.

Alternatively, IPOBRKA(X) can also be written in block N20 if the value 100 has already
been entered in SD 33500: IPOBRAKE_BLOCK_EXCHANGE[AX1].

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-25
Positioning Axes (P2) 11.02
06.05
2.3 Block change

For block change condition “Braking ramp” in synchronized action:

In the technology cycle:

FINEA ; End of motion criterion ’exact stop fine’


POS[X] = 100 ; Technology cycle block changes if the
; X axis has reached position 100 and
; exact stop fine.

IPOBRKA(X,100) ; Block change criterion ’activate braking ramp’


POS[X] = 200 ; Technology cycle block changes as soon
; as the X axis starts to brake.

POS[X] = 250 ; X axis does not brake at position 200 but continues traversing
N40 POS[X] = 250 ; to position 250, as soon as the X axis starts braking
; block change occurs in the technology cycle.

POS[X] = 0 ; X axis brakes and moves back to position 0


M17 ; block change occurs at position 0 and exact stop fine.

With tolerance For block change condition “Braking ramp” in the parts program:
window SW 6.4
; Default effective
and higher N10 POS[X] = 100 ; Block change occurs if the X axis is at position 100
; and has reached exact stop fine.

N20 IPOBRKA(X,100) ; Braking ramp block change condition


N21 ADISPOSA(X,1,0.5) , define tolerance window setpoint position for X axis with 0.5
N30 POS[X] = 200 ; Block change occurs as soon as the X axis starts braking
; and the setpoint position is ≥ 199.5.
N40 POS[X] = 250 ; X axis does not brake at position 200 but continues traversing
; to position 250, as soon as the X axis starts braking
; and the position is ≥ 249.5, the block change occurs.

N50 POS[X] = 0 ; The X axis brakes and traverses back to position 0


; block change occurs at position 0 exact stop fine
N60 X10 F100
N70 M30

At direction reversal (N50), the axis first brakes to reach the target position, before it can be
traversed in the opposite direction.

For block change condition “Braking ramp” in synchronized action:

In the technology cycle:

FINEA ; End of motion criterion ’exact stop fine’


POS[X] = 100 ; Technology cycle block changes if the
; X axis has reached position 100 and
; exact stop fine.

ADISPOSA(X,2,0.3) ; Define tolerance window actual position for X axis with 0.3
IPOBRKA(X,100) ; Block change criterion ’activate braking ramp’
POS[X] = 200 ; Technology cycle block change occurs
; as soon as the X axis starts to brake and
; the actual position of the X axis is ≥ 199.7.

POS[X] = 250 ; X axis does not brake at position 200 but continues traversing
N40 POS[X] = 250 ; to position 250, as soon as the X axis starts braking
; and the position is ≥ 249.7, the block change occurs in the
; technology cycle.

POS[X] = 0 ; X axis brakes and moves back to position 0


M17 ; block change occurs at position 0 and exact stop fine.

Copyright © Siemens AG, 2005.


2/P2/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.3 Block change

2.3.2 End of motion criterion with block search (SW 6.1 and higher)

Last block serves The last movement end criterion programmed for an axis is collected and output
as container in an action block. The last block with a programmed motion end condition that
was processed in the search run serves as a container for setting all axes.

Example For two action blocks with motion end condition for three axes:
N01 G01 POS[X]=20 POS[Y]=30
IPOENDA[X] ; Last programmed motion end condition IPOENDA
N02 IPOBRKA(Y, 50) ; Second action block for the Y axis IPOENDA
N03 POS[Z]=55 FINEA[Z] ; Second action block for the Z axis FINEA
N04 $A_OUT[1]=1 ; First action block for output as a digital output
N05 POS[X]=100 ;
N06 IPOBRKA(X, 100) ; Second action block for the X axis IPOBRKA container
... ; for all programmed motion end conditions
TARGET: ; Block search target

The digital output:


$A_OUT[1]=1 is output in the first action block.
The motion end conditions are set:
for X axis IPOBRKA / $SA_IPOBRAKE_BLOCK_EXCHANGE[AX1]=100
for Y axis IPOBRKA / $SA_IPOBRAKE_BLOCK_EXCHANGE[AX2]=50
for Z axis FINEA in the second action block. The motion end condition
IPOENDA last programmed is also stored for the X axis.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-27
Positioning Axes (P2) 06.05
2.4 Velocity

2.4 Velocity
The axis-specific velocity limits and acceleration limits are valid for positioning
axes.
Positioning axes can be linear axes and rotary axes.
Positioning axes can also be indexing axes, see:
References: /FB/, T1, “Indexing axes”

Feedrate override The path and positioning axes have separate feedrate overrides. Each
positioning axis can be adjusted by its own axis-specific feed override.

Rapid traverse Rapid traverse override applies only to path axes. Positioning axes have no
override rapid traverse interpolation (only axial linear interpolation G01) and therefore no
rapid traverse override.

Feed The positioning axes traverse at the axis-specific feedrate programmed for
them. As illustrated in Section 2.2, the feedrate is not influenced by the path
axes.
The feedrate is programmed as an axis-specific velocity in units of min/mm,
inch/min or degrees/min.
The axis-specific feedrate is always permanently assigned to a positioning axis
by the axis name.
If a positioning axis has no programmed feedrate, the control system
automatically applies the rate set in axis-specific MD 32060: POS_AX_VELO
(initial setting for positioning axis velocity).
The programmed axis-specific feedrate is active until the end of the program.

Revolutional In JOG mode, the response of the axis/spindle is also dependent on the setting
feedrate in SD 41100: JOG_REV_IS_ACTIVE (revolutional feedrate for JOG active).

S If this setting data is active, an axis/spindle is always traversed at


revolutional feedrate MD 32050: JOG_REV_VELO (revolutional feedrate for
JOG) or MD 32040: JOG_REV_VELO_RAPID (revolutional feedrate for
JOG with rapid traverse overlay) depending on the master spindle.

S If the setting data is not active, then the axis/spindle responds as a function
of the setting in SD 43300: ASSIG_FEED_PER_REV_SOURCE
(revolutional feedrate for positioning axes/spindles).

S If the setting data is not active, then a geometry axis influenced by a frame
with rotation responds as a function of on channel-specific setting data SD
42600: JOG_FEED_PER_REV_SOURCE. (In the operating mode JOG,
revolutional feedrate for geometry axes on which a frame with rotation is
effective).

Copyright © Siemens AG, 2005.


2/P2/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.5 Control by PLC

2.5 Control by PLC

Channel-specific All channel-specific signals act to the same extent on path and positioning axes.
signals
The following signals are the only exceptions (see Chapter 5):

S IS “Feedrate override” (DB21, ... DBB4)


S IS “Delete distancetogo” (DB21, ... DBX6.2)

Axis-specific The following additional signals are available for positioning axes
signals (see Chapter 5):

S IS “Positioning axis” (DB31, ... DBX76.5)


S F function (feed) for FA positioning axes
S Feedrate override, axis-specific
S IS “Delete distancetogo” (DB31, ... DBX2.2) axis-specific

Parameters for When concurrent positioning axes are activated from the PLC, FC15 is called
FC15 and supplied with the following parameter data:

S Axis name/axis number


S End position
S Feedrate (with feedrate setting = 0, the feed set in MD 32060:
POS_AX_VELO) is applied

S Absolute coordinates (G90), incremental coordinates (G91), absolute


coordinates along the shortest path for rotary axes (rotary axis name =
DC(value))
The following functions are defined:

S Linear interpolation (G01)


S Feedrate in mm/min or degrees/min (G94)
S Exact stop (G09)
S Settable zero offsets currently selected are valid

PLC axes PLC axes are traversed in the basic program from the PLC via special function
blocks and can move asynchronous with all other axes. The travel motions are
executed separate from the path and synchronized actions.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-29
Positioning Axes (P2) 06.05
2.6 Programming

2.6 Programming

Note
The following documentation should be consulted for instructions on
programming positioning axes:
References: /PA/, “Programming Guide”

The maximum number of positioning axes that can be programmed in a block is


limited to the maximum number of available channel axes.

Definition Positioning axes are defined using the following parameters:

S Axis type: Type 1 or type 2 positioning axis and type 3 with SW 6.2 and
higher

S End point dimensions


S Absolute or incremental dimension for the end position coordinates
S Feedrate for linear axes in [mm/min], for rotary axes in [degrees/min]

Syntax Positioning axis type 1:


POS[Q1]=200 FA[Q1]=1000; axis Q1 with feedrate 1000 mm/min to position 200
Positioning axis type 2:
POSA[Q2]=300 FA[Q2]=1500; axis Q2 with feedrate 1500 mm/min to position 300
Within a parts program, an axis can be a path axis or a positioning axis. Within
a movement block, however, each axis must be assigned a unique axis type.

Absolute/ The end position coordinates are programmed as absolute dimensions (G90) or
incremental incremental dimensions (G91):
dimensions

Absolute G90 POS[Q1]=200


dimensions G91 POS[Q1]=AC(200)

Incremental G91 POS[Q1]=200


dimension G90 POS[Q1]=IC(200)

Reprogram type 2 With type 2 positioning axes (motion across block limits), you need to be able to
positioning axes detect in the parts program whether the positioning axis has reached its end
position. Only then is it possible to reprogram this positioning axis (otherwise an
alarm is issued).
If POSA if programmed, then POSA again with IPOBRKA (block change in the
braking ramp SW 6.2 and higher), an alarm is not issued. For more information,
please refer to Subsection 2.3.1, NC command IPOBKA.

Copyright © Siemens AG, 2005.


2/P2/2-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
2.6 Programming

WAITP The WAITP coordination command is used to query in the parts program
coordination whether the end position has been reached.
WAITP is programmed in a separate block.
An explicit reference must be made to any axis for which the program is to wait.
Example program:
N10 G01 G90 X200 F1000 POSA[Q1]=200 FA[Q1]=500
N15 X400
N20 WAITP(Q1); Execution of the program stops automatically
until Q1 in position
N25 X600 POS[Q1]=300; Q1 is positioning axis type 1 (feed FA[Q1] from block N10)
N30 X800 Q1=500; Q1 is path axis (path feed F1000 from block N10)

Tool offset A tool length compensation for positioning axes can be implemented by means
of an axial zero offset, allowing, for example, the positioning path of a loader to
be altered. An example where the axial zero offset might be used in place of the
tool length compensation is where a loader containing tools of various
dimensions has to bypass an obstacle.

End of program The program end (program status selected) is delayed until all axes (path axes
+ positioning axes) have reached their programmed end points.

2.6.1 Programming from external

Traversing at revolutional feedrate from an external source can be selected via


axial data SD 43300: ASSIGN_FEED_PER_REV_SOURCE, (revolutional
feedrate for axes) and channel-specific setting data SD 42600:
JOG_FEED_PER_REV_SOURCE in JOG mode. The following settings can be
made via the setting data:

S >0: The machine axis number of the rotary axis/spindle from which the
revolutional feedrate shall be derived

S –1: The revolutional feedrate is derived from the master spindle of the
channel in which the axis/spindle is active in each case

S 0: The function is deselected

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/2-31
Positioning Axes (P2) 06.01
06.05
2.7 Response with special functions

2.7 Response with special functions

2.7.1 Dry run feedrate (DRY RUN)

The dry run feedrate is also effective for positioning axes unless the
programmed feedrate is larger than the dry run feedrate. (SW version 5 or
earlier).
From SW version 6, the effectiveness of the dry run feedrate set in SD 42100:
DRY_RUN_FEED can be controlled with SD 42101: DRY_RUN_FEED_MODE.
See
References: /FB1/, V1, Feedrates

2.7.2 Single block

Positioning axis Single-block mode is effective with positioning axes of type 1.


type 1

Positioning axis Positioning axes of type 2 also continue across block limits in single block
type 2 mode.

Positioning axis Positioning axes of type 3 also continue across block limits in single block
type 3 mode.
J

Copyright © Siemens AG, 2005.


2/P2/2-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
4.1 General machine data

Supplementary Conditions 3
There are no supplementary conditions stipulated for this Description of
Functions.
J

Data Descriptions (MD, SD) 4


4.1 General machine data

10008 MAXNUM_PLC_CNTRL_AXES
MD number Max. no. PLC-controlled axes
Default setting: 0 Minimum input limit: 0 Maximum input limit:
12 (NCU573),
otherwise 4
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: BYTE Applies from SW: 6.3
Meaning: Maximum number of axes that can be controlled by the PLC.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/4-33
Positioning Axes (P2) 06.05
4.2 Channel-specific machine data

4.2 Channel-specific machine data

20730 G0_LINEAR_MODE
MD number Interpolation behavior with G0
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: BOOLEAN Applies from SW: SW 6.1
Meaning: This machine data is used to define the interpolation behavior at rapid traverse velocity
(G0):
0: Non-linear interpolation:
Each path axis interpolates as a single axis (positioning axis) independently of
the other axes at the rapid traverse velocity (G0)
defined for the axis (MD 32000: MAX_AX_VELO).
1: Linear interpolation:
The path axes are interpolated together.
The non-linear interpolation can be activated via the NC parts program G0LINOF,
and deactivated via G0LINOF.

20732 EXTERN_G0_LINEAR_MODE
MD number Interpolation behavior with G00
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: BOOLEAN Applies from SW: SW 6.1
Meaning: This machine data is used to define the interpolation behavior with G00:
0: Axes are traversed as positioning axes
1: Axes interpolate with one another
MD irrelevant for ... ... In SW 6 and higher, the machine data
MD 10892: EXTERN_G00_MODE used for ISO mode up to now has been replaced with
the new machine data
MD 20732: EXTERN_G0_LINEAR_MODE.

Copyright © Siemens AG, 2005.


2/P2/4-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
4.3 Axis/spindle-specific machine data

4.3 Axis/spindle-specific machine data

30450 IS_CONCURRENT_POS_AX
MD number Default on RESET: Neutral axis or channel axis
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after RESET Protection level: 2/7 Unit: none
Data type: BOOLEAN Applies as of SW 1.1
Meaning: The axis is a concurrent positioning axis.
SW 4.3 and higher (not FM-NC):
If FALSE: At RESET a neutral axis becomes a channel axis again.
If TRUE: At RESET a neutral axis remains in the neutral axis state, and a channel axis
becomes a neutral axis.

32060 POS_AX_VELO
MD number Initial setting for positioning axis velocity
Default setting: 100000 Minimum input limit: 0 Maximum input limit: plus
Changes effective after RESET Protection level: 2/7 Unit: mm/min
rev/min
Data type: DOUBLE Applies as of SW 1.1
Meaning: Where a positioning axis is programmed in the part program without specifying the axis-
specific feedrate, the feedrate entered in MD: POS_AX_VELO is automatically used. The
feedrate from MD: POS_AX_VELO applies until an axis-specific feedrate is programmed in
the parts program for this positioning axis.
MD irrelevant for ... ... POS_AX_VELO is irrelevant as a positioning axis for all other axis types.
Special cases, errors, ... If a zero velocity setting is entered in POS_AX_VELO, the positioning axis does not tra-
... verse if it is programmed without feed. If a velocity setting is entered in POS_AX_VELO
that is higher than the maximum velocity of the axis (MD 32000:
MAX_AX_VELO), the velocity is automatically restricted to the maximum rate.

37510 AX_ESR_DELAY_TIME1
MD number Delay time for ESR single axis
Default setting: 0 Minimum input limit: 0 Maximum input limit: time
Changes effective after NEW_CONF Protection level: 2/7 Unit: –
Data type: DOUBLE Applies as of SW 6.4
Meaning: When an alarm occurs, it is possible to use the existing machine data to delay the instant of
braking, so that in the case of gear wheel cutting, for example, it is possible to retract from
the tooth gap.

37511 AX_ESR_DELAY_TIME2
MD number ESR time for interpolatory braking of the single axis
Default setting: 0 Minimum input limit: 0 Maximum input limit: time
Changes effective after NEW_CONF Protection level: 2/7 Unit: –
Data type: DOUBLE Applies as of SW 6.4
Meaning: Once time MD 37510: AX_ESR_DELAY_TIME1 has expired, the time specified here (MD
37511: AX_ESR_DELAY2) for interpolatory braking is still available.
Once time MD 37511: AX_ESR_DELAY2 has expired, rapid deceleration with subsequent
tracking is initiated.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/4-35
Positioning Axes (P2) 06.05
4.4 Axis-specific setting data

4.4 Axis-specific setting data

43600 IPOBRAKE_BLOCK_EXCHANGE
SD number Braking ramp block change condition
Default setting: 0 Minimum input limit: 0 Maximum input limit: 100
Changes effective after: immediately Protection level: 7/7 Unit: %
Data type: DOUBLE Applies as of SW 6.1
Meaning: Specifies the time of activation for the braking ramp block change condition with single-axis
interpolation:
100% signifies that the block change condition for activating the braking ramp is fulfilled.
0% signifies that the block change condition is identical to IPOENDA.

43610 ADISPOSA_VALUE
SD number Braking ramp tolerance window
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after: immediately Protection level: 7/7 Unit: –
Data type: DOUBLE Applies as of SW 6.4
Meaning: With single axis interpolation, the value defines the size of the tolerance window that has to
be reached by the axis in order to enable a block change when the braking ramp with toler-
ance window block change condition is valid and the corresponding % value of the braking
ramp,
SD 43600: IPOBRAKE_BLOCK_EXCHANGE has been reached.

Note:
The machine data MD 10710: PROG_SD_RESET_SAVE_TAB can be set such that the
value written from the parts program during reset is accepted by the active file system (i.e.
the value is retained beyond the reset).

Copyright © Siemens AG, 2005.


2/P2/4-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
5.1 Axis/spindle-specific signals

Signal Descriptions 5
The following signals or commands on the NCK/MMC/PLC interface are only of
significance for the positioning axis:

IS: Positioning axis


IS: F function for positioning axis, if
set by TP
Position axis NST: Axis-specific feed/spindle override
IS: Axis-specific delete distance-to-go
FC15: Concurrent positioning axis

Fig. 5-1 Signal modification by the PLC

5.1 Axis/spindle-specific signals

DB31, ... Feedrate override/spindle speed override, axis-specific


DBB0
Data Block Signal(s) from axis/spindle (NCK –––> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal Positioning axes have their own axis-specific feed override value. This feedrate override is
transition 0 –––> 1 evaluated in the same way as the channel-specific feedrate override.
Signal irrelevant for ... ... IS “Positioning axis” (DB31, ... DBX74.5) = ZERO
References For evaluation see IS “Feedrate override” (DB21, ... DBB4) channel-specific

DB31, ... Delete distance-to-go, axis-specific


DBX2.2
Data Block Signal(s) from axis/spindle (NCK –––> PLC)
Edge evaluation: yes Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The axis-specific distance-to-go of the positioning axis is canceled. The positioning axis is
transition 0 –––> 1 decelerated and the following error is eliminated. The programmed end position is deemed
to have been reached. The path axes are not influenced by the axis-specific “delete dis-
tance-to-go” interface signal. The channel-specific “delete distance-to-go” interface signal is
used for this purpose.
Special cases, errors, ... If the axis-specific “delete distance-to-go” interface signal is enabled, even if no positioning
... axes have been programmed in this block, the NCK does not respond.
Related to .... IS “Delete distancetogo” (DB21, ... DBX6.2) channel-specific for path axes

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/5-37
Positioning Axes (P2) 06.05
5.1 Axis/spindle-specific signals

DB31, ... AxReset


DBX28.1 Reset axis/spindle
Data Block Signal(s) from axis/spindle (PLC –––> NCK)
Edge evaluation: yes Signal(s) updated: Cyclic Signal(s) valid from SW: 6.4
Signal state 1 or signal An axis/spindle controlled from the PLC is to be reset again.
transition 0 –––> 1 The NCK switches the active axis/spindle to the stop state with IS “AXSTOP active” (DB31
... DBX63.2).
Special cases, errors, ... Supplementary condition:
... The axis/spindle must have actually accepted the PLC and be controlled by the PLC.
Related to .... IS “AXRSTOP” (DB31, ... DBX63.2) Stop axis/spindle

DB31, ... AxResume


DBX28.2 Resume axis/spindle motion
Data Block Signal(s) from axis/spindle (PLC –––> NCK)
Edge evaluation: yes Signal(s) updated: cyclic Signal(s) valid from SW: 6.4
Signal state 1 or signal An interpolating axis/spindle from the main run continues independently of the NC program
transition 0 –––> 1 and is controlled by the PLC.
The NCK checks whether an axis/spindle axial alarm with the cancel criterion CANCEL-
CLEAR or NCSTARTCLEAR is active and deletes it.
The axis-specific RESUME (DB31 ... DBX28.2) instruction can be aborted by the NCK with
IS “AXSTOP active” (DB31 ... DBX28.2).
Special cases, errors, ... Supplementary condition:
... The axis/spindle must be operating under PLC control.
The IS “AXRESUME” (DB31 ... DBX28.2) is ignored in the following error states detected
by the NCK:
1. When the PLC prompts axes/spindles to continue traversing and this axis/spindle
has not been accepted by the PLC.
2. The axis/spindle is not in the stopped state.
3. The axis/spindle cannot resume traversal because an alarm is active.
Related to .... IS “AXRESET” (DB31, ... DBX28.1) Reset axis/spindle

DB31, ... AxAlarm


DBX61.1 Axial stop alarm for this axis
Data Block Signal(s) from axis/spindle (NCK –––> PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 6.4
Signal state 1 or signal NCK decelerates the axis/spindle down a ramp and confirms the braking operation via the
transition 0 –––> 1 OPI.
At the same time, an alarm is signaled to the PLC with
IS “Axial alarm” (DB31 ... DBX61.1) == 1 and the status
system variable $AA_SNGLAX_STAT == 5 is set.
Related to .... System variable $AA_SNGLAX_STAT == 5

DB31, ... AxReset done


DBX63.0 Axial reset has been performed
Data Block Signal(s) from axis/spindle (NCK –––> PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 6.4
Signal state 1 or signal After the axial machine data active on Reset have been activated,
transition 0 –––> 1 IS “AXRESET DONE” (DB31 ... DBX63.0) == 1,
IS “Axstop active” (DB31 ... DBX63.2) == 0 and
system variable $AA_SNGLAX_STAT == 1 “single axis in reset active” are
signaled.
Related to .... IS “Axstop active” (DB31 ... DBX63.2) == 0
System variable $AA_SNGLAX_STAT == 1

Copyright © Siemens AG, 2005.


2/P2/5-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
5.1 Axis/spindle-specific signals

DB31, ... PLC controls axis


DBX63.1 Axis control passed to PLC
Data Block Signal(s) from axis/spindle (NCK –––> PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 6.4
Signal state 1 or signal IS “PLC control axis” (DB31 ... DBX63.1) == 1 is passed to the PLC to signal the status of
transition 0 –––> 1 the axis/spindle and confirm that control has been accepted by the NCK.
The current axis status can be scanned with $AA_SNGLAX_STAT.
Related to .... IS “PLC controls axis” (DB31 ... DBX28.7) Axis is controlled by the PLC.
System variable $AA_SNGLAX_STAT Current axis status

DB31, ... AxStop active


DBX63.2 Acknowledgement of stopped status
Data Block Signal(s) from axis/spindle (NCK –––> PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 6.4
Signal state 1 or signal NCK switches the axis/spindle to the stop state by setting IS “AXSTOP ACTIVE” (DB31 ...
transition 0 –––> 1 DBX63.2) == 0. All axis motions controlled by the main run are stopped.
Axis status interrupted with system variable $AA_SNGLAX_STAT == 3.
Related to .... IS “AXSTOP, stop” (DB31 ... DBX28.6) Stop axis/spindle
System variable $AA_SNGLAX_STAT == 3

DB31, ... Positioning axis


DBX76.5 NCK treats the axis as a positioning axis.
Data Block Signal(s) from axis/spindle (NCK –––> PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The NCK treats the axis as a positioning axis. It therefore has:
transition 0 –––> 1 a dedicated axis interpolator (linear interpolator)
a dedicated feedrate (F value)
a dedicated feed override
exact stop (G09) at the programmed end position End position

DB31, ... F function (feedrate) for positioning axis


DBB78–81 Assign feedrate through the programmed axis name of a positioning axis
Data Block Signal(s) from axis/spindle (NCK –––> PLC)
Edge evaluation: NO Signal(s) updated: when change Signal(s) valid from SW: 1.1
Signal state 1 or signal The programmed axial feed is assigned to a positioning axis by means of the programmed
transition 0 –––> 1 axis name and output to the PLC for this axis. There is no output of the value preset via
FC15. See below.
Signal irrelevant for ... ... IS: Positioning axis = ZERO
Special cases, errors, ... If the positioning axis is traversed at the feedrate set in MD 32060: POS_AX_VELO
... (initial setting for positioning axis velocity), the NC does not output an F function (feed) to
the PLC.
Related to .... IS “Positioning axis” (DB31, ... DBX74.5)
MD 22240: AUXFU_F_SYNC_TYPE Output time of the F functions

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/5-39
Positioning Axes (P2) 06.05
5.2 Function call

5.2 Function call

FC15 PLC function call FC15 can be used to start concurrent positioning axes from
the PLC. The following parameters are passed to the function call:

S Axis name/axis number


S End position
S Feedrate (with feedrate setting = 0, the feed set in MD 32060:
POS_AX_VELO is applied).
The F value of FC15 is not transferred to the axis-specific IS “F function
(feedrate) for positioning axis” DB31, ...DBB78–81.

S Absolute coordinates (G90), incremental coordinates (G91), absolute


coordinates along the shortest path for rotary axes (rotary axis name =
DC(value))
Since each axis is assigned to exactly one channel, the control can select the
correct channel from the axis name/axis number and start the concurrent
positioning axis on this channel.

References: /FB/, P3, “Basic PLC Program”


J

Copyright © Siemens AG, 2005.


2/P2/5-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
6.1 Motion behavior and interpolation functions

Example 6
6.1 Motion behavior and interpolation functions
In the following example, the two positioning axes Q1 and Q2 represent two
separate units of movement. There is no interpolation relationship between the
two axes. In the example, the positioning axes are programmed as type 1 (e.g.
in N20) and type 2 (e.g. in N40).

Programming N10 G90 G01 G40 T0 D0 M3 S1000


example N20 X100 F1000 POS[Q1]=200 POS[Q2]=50 FA[Q1]=500
FA[Q2]=2000
N30 POS[Q2]=80
N40 X200 POSA[Q1] = 300 POSA[Q2]=200] FA[Q1]=1500
N45 WAITP[Q2]
N50 X300 POSA[Q2]=300
N55 WAITP[Q1]
N60 POS[Q1]=350
N70 X400
N75 WAITP[Q1, Q2]
N80 G91 X100 POS[Q1]=150 POS[Q2]=80
N90 M30

Q1

Q2

N20 N30 N45 N50 N55 N60 N70 N75N80

X .... path axes


Q1, Q2 .... positioning axes

Fig. 6-1 Timing of path axes and positioning axes

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/6-41
Positioning Axes (P2) 06.05
6.2 Examples of autonomous single axis operations (SW 6.3 and higher)

6.1.1 Path axes traverse in G0 with no interpolating (SW 6.1 and


higher)

Example in G0 for Path axes traverse as positioning axes with no interpolation in rapid traverse
positioning axes mode (G0):
; Activation of non-linear interpolation
; MD 20730: GO_LINEAR_MODE == FALSE is set

G0 X0 Y10 ; traversal without interpolation


G0 G43 X20 Y20 ; traversal in path mode (with interpolation)
G0 G64 X30 Y30 ; traversal in path mode (with interpolation)
G0 G95 X100 Z100 m3 s100 ; traversal without interpolation
; no revolutional feedrate active

6.2 Examples of autonomous single axis operations (SW 6.3


and higher)

6.2.1 PLC actions as NCK reaction (SW 6.4 and higher)

Example of a PLC actions are shown below as NCK reactions


machine axis
PLC actions NCK reaction
Start machine axis 1, residing in 1st chan-
nel, as PLC axis via FC 18
IS “NC Stop plus spindle” DB21, ... DBX7.4 Machine axis 1 is stopped
Trigger IS “NC Start” (DB21, ... DBX7.1) Machine axis 1 continues traversal
PLC wants to control machine axis 1, Control of machine axis 1 is given to the
IS “PLC controls axis” PLC. IS “PLC controls
DB31, ... DBX28.7==1 axis” DB31, ... DBX63.1==1
Trigger IS “NC Stop plus spindle” DB21, ... Machine axis 1 is not
DBX7.4 stopped.
Trigger axial axis stop Machine axis 1 is stopped IS“AxStop
IS “AxStop, stop” DB31, ... DBX28.6 active” DB31, ... DBX63.2==1
Trigger axial resume Machine axis 1 continues traversal IS
IS “AxResume” DB31, ... DBX28.2 “AxStop active” DB31, ... DBX63.2==0
Trigger NC reset No effect on
Trigger IS “Reset” DB21, ... DBX7.7 machine axis 1
Trigger axial reset Machine axis 1 is stopped IS “AxStop
IS “AxReset” DB31, ... DBX28.1 active” DB31, ... DBX63.2==1 is reset to
0, its axial machine data are read in, IS
“AxReset done” DB31, ... DBX63.0 is
set to 1 and IS
“AxStop active” DB31, ... DBX63.2 is
reset to 0.

Copyright © Siemens AG, 2005.


2/P2/6-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
6.2 Examples of autonomous single axis operations (SW 6.3 and higher)

Start machine axis 1 as PLC axis via FC 18 IS “AxReset done”


DB31, ... DBX63.0==0
Cancel servo enable for machine axis 1 Axial alarm 21612 “Axis %1 measuring
IS “servo enable” DB31, ... DBX2.1==0 system change” signaled.
Trigger axial resume Axial alarm 21612 “Axis %1 measuring
IS “AxResume” DB31, ... DBX28.2 system change” is canceled and motion
command IS “Motion command plus”
DB21, ... DBX40.7 is output. But ma-
chine axis 1 does not start to traverse
due to a missing servo enable.
Set servo enable for machine axis 1 IS “servo Machine axis 1 traverses to the pro-
enable” DB31, ... DBX2.1==1 grammed end point.
Trigger axial reset Machine axis 1 is reset internally, its ax-
IS “AxReset” DB31, ... DBX28.1 ial machine data are read in and the end
of axial reset IS “AxReset done” DB31,
... DBX63.0==0 is signaled.
PLC releases control of machine axis 1 to the NCK accepts control of machine axis 1
NCK. IS “PLC controls axis” DB31, ... IS “PLC controls axis” DB31, ...
DBX28.7==0 DBX63.1==0 and resets the end signal
of axial reset IS “AxReset done” DB31,
... DBX63.0 from 1 to 0.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/6-43
Positioning Axes (P2) 06.05
6.2 Examples of autonomous single axis operations (SW 6.3 and higher)

Notes

Copyright © Siemens AG, 2005.


2/P2/6-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Positioning Axes (P2)
7.1 Interface signals

Data Fields, Lists 7


7.1 Interface signals

DB number Bit, byte Name Refer-


ence
Channel-specific
21–30 7.1 NC Start K1
21–30 7.4 NC stop axes plus spindle K1
21–30 7.7 Reset K1
21–30 40.6 Motion command minus H1
21–30 40.7 Motion command plus H1
Axis/spindle–specific
31–61 0 Feedrate override, axis-specific V1
31–61 2.1 Controller enable A2
31–61 2.2 Delete distance-to-go spindle reset for specific axes A2, S1
31–61 28.1 AxReset
31–61 28.2 AxResume
31–61 28.6 AxStop, stop P5
31–61 28.7 PLC controls axis P5
31–61 60.6 Exact stop coarse B1
31–61 60.7 Exact stop fine B1
31–61 61.1 AxAlarm
31–61 61.2 Axis ready (AX_IS_READY) B3
31–61 62.7 Axis container rotation active B3
31–61 63.0 AxReset done
31–61 63.1 PLC controls axis
31–61 63.2 AxStop active
31–61 64.6 Motion command minus H1
31–61 64.7 Motion command plus H1
31–61 76.5 Position axis
31–61 78–81 F function (feedrate) for positioning axis V1
31–61 98.7 Emergency retraction active

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P2/7-45
Positioning Axes (P2) 06.05
7.4 Interrupts

7.2 Machine Data

Number Names Name Refer-


ence
General ($MN_ ...
10008 MAXNUM_PLC_CNTRL_AXES Max. no. PLC-controlled axes (SW 6.3 and
higher)
Channel-specific ($MC_ ... )
20730 G0_LINEAR_MODE Interpolation behavior with G0 (SW 6.1 and
higher)
20732 EXTERN_G0_LINEAR_MODE Interpolation behavior with G00 (SW 6.1 and
higher)
22240 AUXFU_F_SYNC_TYPE Output timing of F functions H2
Axis-specific ($MA_ ... )
30450 IS_CONCURRENT_POS_AX Concurrent positioning axis
32060 POS_AX_VELO Feedrate for positioning axis
37510 AX_ESR_DELAY_TIME1 Delay time for ESR single axis
(SW 6.4 and higher)
37511 AX_ESR_DELAY_TIME2 ESR time for interpolatory braking of the single
axis (SW 6.4 and higher)

7.3 Setting data

Number Names Name Refer-


ence
Axis-specific ($SA_ ... )
43600 IPOBRAKE_BLOCK_EXCHANGE Braking ramp block change condition SW 6.2
and higher
43610 ADISPOSA_VALUE Braking ramp tolerance window with SW 6.4
and higher

7.4 Interrupts
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, Diagnostics Guide
or in the Online help.
J

Copyright © Siemens AG, 2005.


2/P2/7-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Oscillation (P5)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/2-5
2.1 Asynchronous oscillation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/2-6
2.1.1 Influences on asynchronous oscillation . . . . . . . . . . . . . . . . . . . . . . . 2/P5/2-7
2.1.2 Asynchronous oscillation under PLC control . . . . . . . . . . . . . . . . . . . 2/P5/2-13
2.1.3 Special reactions during asynchronous oscillation . . . . . . . . . . . . . . 2/P5/2-14
2.2 Oscillation controlled by synchronized actions . . . . . . . . . . . . . . . . . 2/P5/2-17
2.2.1 Infeed at reversal point 1 or 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/2-20
2.2.2 Infeed in reversal point range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/2-20
2.2.3 Infeed at both reversal points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/2-22
2.2.4 Stopping oscillation movement at reversal point . . . . . . . . . . . . . . . . 2/P5/2-23
2.2.5 Oscillation movement restarting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/2-24
2.2.6 Prevent premature starting of partial infeed . . . . . . . . . . . . . . . . . . . . 2/P5/2-24
2.2.7 Assignment of oscillation and infeed axes OSCILL . . . . . . . . . . . . . 2/P5/2-25
2.2.8 Definition of infeeds POSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/2-26
2.2.9 External oscillation reversal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/2-27
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/4-29
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/4-29
4.1 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/4-29
4.2 Setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/4-30
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/5-33
6 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/6-37
6.1 Example of asynchronous oscillation . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/6-37
6.2 Example 1 of oscillation with synchronized actions . . . . . . . . . . . . . 2/P5/6-39
6.3 Example 2 of oscillation with synchronized actions . . . . . . . . . . . . . 2/P5/6-41
6.4 Examples for starting position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/6-43
6.4.1 Define starting position via language command . . . . . . . . . . . . . . . . 2/P5/6-43
6.4.2 Start oscillation via setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/6-44
6.4.3 Non-modal oscillation (starting position = reversal point 1) . . . . . . . 2/P5/6-45
6.5 Example of external oscillation reversal . . . . . . . . . . . . . . . . . . . . . . . 2/P5/6-47

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/i
06.05

6.5.1 Change reversal position via synchronized action with “external


oscillation reversal” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/6-47
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/7-49
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/7-49
7.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/7-49
7.3 Setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/7-50
7.4 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/P5/7-50
7.5 Main run variables for motion-synchronous actions . . . . . . . . . . . . . 2/P5/7-51
J

Copyright © Siemens AG, 2005.


2/P5/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
1 Brief Description

Brief Description 1
Definition When the “Oscillation” function is selected, an oscillation axis oscillates
backwards and forwards at the programmed feedrate or a derived feedrate
(revolutional feedrate) between two reversal points. Several oscillation axes can
be active at the same time.

Oscillation Oscillation functions can be classified according to the axis response at reversal
variants points and with respect to infeed:

S Asynchronous oscillation beyond block limits.


Any other axes can interpolate during the oscillation motion. The oscillation
axis can act as the input axis for dynamic transformation or as the master
axis for gantry or coupled-motion axes. Oscillation is not automatically linked
to the AUTOMATIC mode.

S Oscillation with continuous infeed.


The infeed is possible simultaneously on several axes. However, there is no
interpolative connection between the infeed and oscillation movements.

S Oscillation with infeed in both reversal points or only in the left-hand or


right-hand reversal point. The infeed can be initiated at a programmable
distance from the reversal point.

S Sparking-out strokes after oscillation.


S Beginning and end of oscillation at defined positions.

Response at The change in direction is initiated:


reversal points
– without the exact stop limit being reached (exact stop fine or coarse)
– after the programmed position is reached or
– after the programmed position is reached and expiry of a dwell.
– by an external signal (from the PLC).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/1-3
Oscillation (P5) 06.05
1 Brief Description

Control methods Oscillation movements can be controlled by various methods:


– The oscillation movement and/or infeed can be interrupted by delete
distance-to-go.
– The reversal points can be altered via NC program, PLC, MMC,
handwheel or directional keys.
– The feedrate velocity of the oscillation axis can be altered through a
value input in the NC program, PLC, MMC or via an override. The
feedrate can be programmed to be dependent on a master spindle,
rotary axis or spindle (revolutional feedrate).
References: /FB/; V1, “Feedrates”
– The oscillation movement can be controlled entirely by the PLC.
J

Copyright © Siemens AG, 2005.


2/P5/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2 Detailed Description

Detailed Description 2
Methods of There are two modes of oscillation:
oscillation control

1. Asynchronous oscillation
which is active beyond block limits and can also be started from PLC/MMC,

and
2. Oscillation as controlled by motion-synchronous actions.
In this case, asynchronous oscillation and an infeed movement are coupled
with one another via synchronized actions. In this way, it is possible to
program oscillation with infeed at the reversal points which is active on a
non-modal basis.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-5
Oscillation (P5) 06.05
2.1 Asynchronous oscillation

2.1 Asynchronous oscillation

Properties The characteristics of asynchronous oscillation are as follows:

S The oscillation axis oscillates backwards and forwards between reversal


points at the specified feedrate until the oscillation movement is deactivated
or until there is an appropriate response to a supplementary condition. If the
oscillation axis is not positioned at reversal point 1 when the movement is
started, then it traverses to this point first.

S Linear interpolation G01 is active for the oscillation axis regardless of the G
code currently valid in the program. Alternately, revolutional feedrate G95
can be activated.

S Asynchronous oscillation is active on an axis-specific basis beyond block


limits.

S Several oscillation axes (i.e. maximum number of positioning axes) can be


active at the same time.

S During the oscillation movement, axes other than the oscillation axis can be
freely interpolated. A continuous infeed can be achieved via a path
movement or with a positioning axis. In this case, however, there is no
interpolative connection between the oscillation and infeed movements.

S If the PLC does not have control over the axis, then the axis is treated like a
normal positioning axis during asynchronous oscillation. In the case of PLC
control, the PLC program must ensure via the appropriate stop bits of the
VDI interface that the axis reacts in the desired way to VDI signals. These
signals include program end, operating mode changeover and single block.

S The oscillation axis can act as the input axis for the transformations (e.g.
inclined axis).
References: /FB/, M1, “Transmit/Peripheral Surface Transformation”

S The oscillation axis can act as the master axis for gantry and coupled
motion axes.
References: /FB/, G1, “Gantry Axis”

S It is possible to traverse the axis with jerk limitation (SOFT) and/or with
kneeshaped acceleration characteristic (as for positioning axes).

S In addition to this, the oscillation movement can be activated in synchronism


with the block via the parts program.

S The oscillation movement can likewise be started, influenced and stopped


from the PLC/MMC.

S Interpolatory oscillation is not possible (e.g. oblique oscillation).

Copyright © Siemens AG, 2005.


2/P5/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2.1 Asynchronous oscillation

2.1.1 Influences on asynchronous oscillation

Setting data The setting data required for oscillation can be set with special language
commands in the NCK parts program, via the HMI and/or the PLC.

Feed velocity The feed velocity for the oscillation axis is selected or programmed as follows:

S The velocity defined for the axis as a positioning axis is used as the feed
velocity. This value can be programmed via FA[axis] and has a modal
action. If no velocity is programmed, then the value stored in machine data
POS_AX_VELO is used (see positioning axes).

S When an oscillation movement is in progress, the feed velocity of the


oscillation axis can be altered via setting data. It can be specified via the
parts program and setting data whether the changed velocity must take
effect immediately or whether it should be activated at the next reversal
point.

S The feed velocity can be influenced via the override (axial VDI signal and
programmable).

S If Dry run is active, the dry run velocity setting is applied if it is higher than
the currently programmed velocity. (SW version 5 and earlier).
From SW version 6, the effectiveness of the dry run feedrate set in SD
42100: DRY_RUN_FEED can be controlled with SD 42101:
DRY_RUN_FEED_MODE. See
References: /FB1/, V1, Feedrates

S Velocity overlay/path overlay can be influenced by the handwheel.


See also Table 2-1.
References: /FB/, H1, “Manual and Handwheel Travel”

S The oscillation axis can be moved with revolutional feedrate.

Revolutional The reversal feed can also be used for oscillation axes.
feedrate

Reversal points The positions of the reversal points can be entered via setting data before an
oscillation movement is started or while one is in progress.

S The reversal point positions can be entered by means of manual traverse


(handwheel, JOG keys) before or in the course of an oscillation movement,
regardless of whether the oscillation movement has been interrupted or not.

The following applies to alteration of a reversal point position: When an


oscillation movement is already in progress, the altered position of a reversal
point does not become effective until this point is approached again. If the axis
is already approaching the position, the correction will take effect in the next
oscillation stroke.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-7
Oscillation (P5) 06.05
2.1 Asynchronous oscillation

Note
If a reversal point must be altered at the same time as VDI interface signal
“Activate DRF” is set, the handwheel signals are applied both to the DRF offset
and to the offset of the reversal point, i.e. the reversal point is shifted absolutely
by an amount corresponding to twice the distance.

Stop times A stop time can be programmed via setting data for each reversal point.
The setting can be altered in the following blocks of the NC program. It is then
effective in block synchronism from the next applicable reversal point.
The stop time can be altered asynchronously via setting data. It is then effective
from the instant that the appropriate reversal point is next traversed.
The following table explains the motional behavior in the exact stop range or at
the reversal point depending on the stop time input.

Table 2-1 Effect of stop time

Stop time set- Procedure


ting
–2 Interpolation continues without wait for exact stop
–1 Wait for coarse exact stop at reversal point
0 Wait for fine exact stop at reversal point
>0 Wait for exact stop fine at reversal point followed by wait for stop time

Deactivate One of the following options can be set for termination of the oscillation
oscillation movement when oscillation mode is deactivated:

S Termination of oscillation movement at the next reversal point


S Termination of oscillation movement at reversal point 1
S Termination of oscillation movement at reversal point 2
Following this termination process, sparking-out strokes are processed and an
end position approached if programmed.
On switchover from asynchronous oscillation to spark-out and during spark-out,
the response at the reversal point regarding exact stop corresponds to the
response determined by the stop time programmed for the appropriate reversal
point. A sparking-out stroke is the movement towards the other reversal point
and back. See table:

Copyright © Siemens AG, 2005.


2/P5/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2.1 Asynchronous oscillation

Note
Oscillation with motion-synchronous actions and stop times “OST1/OST2”
Once the set stop times have expired, the internal block change is executed
during oscillation (indicated by the new distances to go of the axes). The
deactivation function is checked when the block changes. The deactivation
function is defined according to the control setting for the motional sequence
“OSCTRL”.
This dynamic response can be influenced by the feed override.
An oscillation stroke may then be executed before the sparking-out strokes are
started or the end position approached.
Although it appears as if the deactivation response has changed, this is not in
fact the case.

Table 2-2 Operational sequence for deactivation of oscillation

Function Inputs Explanation


Deactivation at defined re- Number of sparking-out The oscillation movement is
versal point strokes equals 0, stopped at the appropriate
no end position active reversal point
Deactivation with specific Number of sparking-out After appropriate reversal
number of sparkingout strokes is not equal to 0, point is reached, the num-
strokes no-end position active ber of sparking-out strokes
specified in command is
processed.
Deactivation with sparking- Number of sparking-out After appropriate reversal
out strokes and defined end strokes is not equal to 0, point is reached, the num-
position (optional) end position active ber of sparking-out strokes
specified in command is
processed followed by ap-
proach to specified end po-
sition.
Deactivation without spark- Number of sparking-out After appropriate reversal
ingout strokes, but with de- strokes equals 0, point is reached, axis is tra-
fined end position (optional) end position active versed to specified end po-
sition.

NC language The NC programming language allows asynchronous oscillation to be controlled


from the parts program. The following functions allow asynchronous oscillation
to be activated and controlled as a function of NC program execution.

Note
If the setting data are directly written in the parts program, then the data change
takes effect prematurely with respect to processing of the parts program (at the
preprocessing time). It is possible to re-synchronize the parts program and the
oscillation function commands by means of a preprocessing stop (STOPRE).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-9
Oscillation (P5) 06.05
2.1 Asynchronous oscillation

References: /PA/, Programming Guide


1. Activate, deactivate oscillation:

S OS[oscillation axis] = 1; Activate oscillation for oscillation axis

S OS[oscillation axis] = 0; Deactivate oscillation for oscillation axis

Note
Every axis may be used as an oscillation axis.

2. End of oscillation:

S WAITP(oscillation axis)
Positioning axis command - stops block until oscillation axis is at fine stop
and synchronizes preprocessing and main run. The oscillation axis is
entered as a positioning axis again and can then be used normally.
If an axis is to be used for oscillation, then it must be enabled beforehand
with a WAITP(axis) call.
This also applies if oscillation must be initiated from the PLC/HMI. In this
case, the WAITP(axis) call is also needed if the axis was programmed
beforehand via the NC program. With SW version 3.2 and higher it is
possible to select via machine data $MA_AUTO_GET_TYPE, whether
WAITP() shall be performed with programming or automatically.

Note
WAITP effectively implements a time delay until the oscillation movement has
been executed. Termination of the movement can be initiated, for example,
through a programmed deactivation command in the NC program or via the
PLC or HMI by means of deletion of distance-to-go.

3. Setting reversal points:

S OSP1[oscillation axis] = position of reversal point 1


S OSP2[oscillation axis] = position of reversal point 2
A position is entered into the appropriate setting data in synchronism with the
block in the main run and thus remains effective until the setting data is next
changed.
If incremental traversal is active, then the position is calculated incrementally to
the last appropriate reversal point programmed in the NC program.
4. Stop times at reversal points

S OST1[oscillation axis] = stop time at reversal point 1 in [s]


S OST2[oscillation axis] = stop time at reversal point 2 in [s]
A stop time is entered into the appropriate setting data in synchronism with the
block in the main run and thus remains effective until the setting data is next
changed.

Copyright © Siemens AG, 2005.


2/P5/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2.1 Asynchronous oscillation

The unit for the stop time is identical to the unit selected for the stop time
programmed with G04.
5. Setting feedrate:

S FA[axis] = Fvalue
Positioning axis feedrate.
The feedrate is transferred to the appropriate setting data in synchronism with
the block in the main run. If the oscillation axis is moved with revolutional
feedrate, the corresponding dependencies must be indicated as described in
Description of Functions V1.
6. Setting control settings for sequence of movements:

S OSCTRL[oscillation axis] = (set options, reset options)


The set options are defined as follows (the reset options deselect the
settings):

Table 2-3 Set/reset options

Option value Meaning


0 Stop at next reversal point on deactivation of the oscillation movement
(default). Can only be achieved by resetting option values 1 and 2.
1 Stop at reversal point 1 on deactivation of the oscillation movement
2 Stop at reversal point 2 on deactivation of the oscillation movement
3 On deactivation of oscillation movement, do not approach reversal
point unless sparking-out strokes are programmed
4 Approach an end position after spark-out process
8 If the oscillation movement is aborted by delete distance-to-go, the
sparking-out strokes must then be executed and the end position ap-
proached (if programmed)
16 If the oscillation movement is terminated by deletion of distance-to-go,
the programmed reversal point must be approached on deactivation of
the oscillation movement.
32 Altered feedrate will only take effect from the next reversal point.
64 If feedrate setting is 0, path overlay is active, or otherwise velocity
overlay
128 For rotary axis DC (shortest path)
256 Sparking-out stroke as single stroke
512 First approach start position

Note
The option values 0–3 encode the behavior at reversal points at Power OFF.
You can choose one of the alternatives 0–3. The other settings can be
combined with the selected alternative according to individual requirements. A
+ character can be inserted to create a string of options.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-11
Oscillation (P5) 06.05
2.1 Asynchronous oscillation

Example: The oscillation movement for axis Z must stop at reversal point 1 on
deactivation; an end position must then be approached and a newly
programmed feedrate take immediate effect; the axis must stop immediately
after deletion of distance-to-go.
OSCTRL[Z] = (1+4, 16+32+64)
The set/reset options are entered into the appropriate setting data in
synchronism with the block in the main run and thus remain effective until the
setting data is next changed.

Note
The control evaluates the reset options, then the set options.

7. Sparking-out strokes:

S OSNSC[oscillation axis] = number of sparking-out strokes


The number of sparking-out strokes is entered into the appropriate setting data
in synchronism with the block in the main run and thus remains effective until
the setting data is next changed.
8. End position to be approached after deactivation of oscillation:

S OSE[oscillation axis] = end position of oscillation axis


The end position is entered into the appropriate setting data in synchronism with
the block in the main run and thus remains effective until the setting data is next
changed. Option value 4 is set implicitly according to Table 2-3, such that the
set end position is approached.
9. Start position to be approached prior to activation of oscillation:

S OSB[oscillation axis] = start position of oscillation axis


The start position is transferred to the appropriate setting data 43790:
OSCILL_START_POS in synchronism with the block in the main run and
remains valid until the data is next changed. Bit 9 in setting data 43770
OSCILL_CTRL_MASK must be set to initiate an approach to the start position.
The start position is approached before reversal point 1. If the start position
coincides with reversal position 1, reversal position 2 is approached next.
As an alternative to programming command OSB, it is also possible to enter the
start position directly in setting data 43790: OSCILL_START_POS.
All positional information in the setting data and system variables refer to the
basic coordinate system (BCS). The positional data for OSB, OSE refer to the
workpiece coordinate system (WCS).
No halt time applies when the start position is reached, even if this position
coincides with reversal position 1; instead, the axis waits for the exact stop fine
signal. Any configured exact stop condition is fulfilled.
If a non-modal oscillation process does not require an infeed motion if the start
position coincides with reversal position 1, this option can be configured with
another synchronized action, see examples in 6.4.3.

Copyright © Siemens AG, 2005.


2/P5/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2.1 Asynchronous oscillation

Programming Chapter 6 gives an example containing all the important elements for
example asynchronous oscillation.

2.1.2 Asynchronous oscillation under PLC control

Activation The function can be selected from the PLC via setting data
OSCILL_IS_ACTIVE in all operating modes except for MDA Ref and JOG Ref.

Settings The following criteria can be controlled from the PLC via setting data: Activation
and deactivation of oscillation movement, positions of reversal points 1 and 2,
stop times at reversal points, feedrate velocity, the options in the reversal points,
the number of sparking-out strokes and the end position after deactivation.
However, these values can also be set beforehand as a setting data via the
MMC directly or via an NC program. These settings remain valid after power ON
and the PLC can also start an oscillation movement set in this way directly via
setting data OSCILL_IS_ACTIVE (via variable service).

Supplementary A spindle which must act as an axis to execute an oscillation movement started
conditions via the PLC must fulfill the conditions required to allow traversal as a positioning
axis, i.e. the spindle must, for example, have been switched to the position
control (SPOS) beforehand.
Axes always react to the stop bits at the VDI interface IS “Stop” (DB31, ...
DBX28.6) and IS “Stop at next reversal point” (DB31, ... DBX28.5) regardless of
whether or not they are operating under the control of the PLC.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-13
Oscillation (P5) 06.05
2.1 Asynchronous oscillation

2.1.3 Special reactions during asynchronous oscillation

With PLC control The PLC program can take over the control of an oscillation axis via VDI
signals. These VDI signals also include program end, operating mode
changeover and single block.
The following VDI interface signals are ignored in SW 6.2 and earlier:
Feed/spindle stop and NC STOP; the resulting deceleration request is
suppressed in the case of delete distance-to-go.
In SW 6.3 and later, an asynchronous reciprocating axis interpolated by the
main run reacts to NC STOP, alarm handling, end of program, program control
and RESET, independently of the NC program.
The PLC controls the axis/spindle via the axial VDI interface (PLC→NCK) by
means of IS “PLC controls axis” (DB31, ... DBX28.7) == 1
For further information about axes with PLC control, please see:
References: /FB/, P2, “Positioning Axes”

Without PLC If the PLC does not have control over the axis, then the axis is treated like a
control normal positioning axis (POSA) during asynchronous oscillation.

Delete Channel-specific delete distance-to-go is ignored. Axial delete distance-to-go:


distance-to-go
Without PLC control

If the oscillation axis is not under PLC control, it is stopped by means of a


braking ramp.
With PLC control

In this case, deceleration is suppressed and must be initiated by the PLC.


The following applies to both cases: After the axis has been stopped, the
appropriate reversal point is approached (see OSCILL_CONTROL_MASK,
Chapter 4) and the distance-to-go deleted. The sparking-out strokes are then
executed and the end position approached if this has been set such in
OSCILL_CONTROL_MASK.
The oscillation motion is then finished.

Note
During grinding, the calipers can be put into action via axial delete
distance-to-go.

EMERGENCY In the event of an EMERGENCY STOP, the axis is decelerated by the servo (by
STOP cancellation of servo enable and follow-up). The oscillation movement is thus
terminated and must be restarted if necessary.

Reset The oscillation movement is interrupted and deselected with a braking ramp.
The options selected subsequently are not processed (sparking-out strokes,
end point approach).

Copyright © Siemens AG, 2005.


2/P5/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2.1 Asynchronous oscillation

Special reactions during asynchronous oscillation (continued)

Working area If it is detected during preprocessing that the oscillation movement would violate
limitation, limit an active limitation, then an alarm is output and the oscillation movement not
switches started. If the oscillation axis violates a limitation which has been activated in
the meantime (e.g. 2nd software limit switch), then the axis is decelerated down
along a ramp and an alarm output.

Caution
! Protection zones are not effective!

Follow up There is no difference to positioning axes.


operation

End of program If the axis is not controlled by the PLC, then the program end is not reached
until the oscillation movement is terminated (reaction as for POSA:
Positioning beyond block limits).
If the axis is controlled by the PLC, then it continues to oscillate after program
end.

Mode change The following table shows the operating modes in which oscillation can be
implemented. Changeover to an operating mode which allows oscillation does
not affect the oscillation movement. Changeover to inadmissible operating
modes is rejected with an alarm. It is not possible to traverse an axis in
oscillation mode while applying control commands from the NC program or via
operator inputs (JOG) simultaneously; an alarm is output if this is attempted.
The following settings apply: The type of movement first started has priority.

Table 2-4 Operating modes which allow oscillation

Operating mode Allows oscillation


AUTO Yes
MDI Yes
MDA Repos Yes
MDA Teachin Yes
MDA Ref No
JOG Yes
JOG Ref No
JOG Repos Yes

Single-block If the axis is not controlled by the PLC, then it responds to a single block in the
processing same way as a positioning axis (POSA), i.e. it continues the movement.

Override The override is specified by the:

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-15
Oscillation (P5) 06.05
2.1 Asynchronous oscillation

VDI interface

Axial override acts on the oscillation axis.


Programming

The override acts on oscillation axes in the same way as on positioning axes.

Block search In the case of a block search, the last valid oscillation function is registered and
is activated - depending on machine data OSCILL_MODE_MASK - either
immediately after NC start (on approach to approach position after block
search) or after the approach position has been reached after block search
(default setting).
OSCILL_MODE_MASK Bit 0:

0 Oscillation starts after approach position is reached


1 Oscillation starts immediately after NC start.

REORG Reversal point 1 is always approached first before oscillation continues.

ASUB The oscillation movement continues while an ASUB (asynchronous


subprogram) is in progress.

Copyright © Siemens AG, 2005.


2/P5/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2.2 Oscillation controlled by synchronized actions

2.2 Oscillation controlled by synchronized actions

Principle An asynchronous oscillation movement is coupled via synchronized actions


with an infeed motion and controlled accordingly.
References: /FB/, S5, “Synchronized Actions”
The following description concentrates solely on the motion-synchronous
actions associated with the oscillation function.

Functions The following function complexes can be implemented by means of the


language tools described in detail below:
1. Infeed at reversal point (see 2.2.1).
2. Infeed in reversal point range (see 2.2.2).
3. Infeed at both reversal points (see 2.2.3).
4. Stopping oscillation movement at reversal point until infeed is terminated
(see 2.2.4).
5. Enable oscillation movement (see 2.2.5).
6. Preventing premature start of partial infeed (see 2.2.6).

x
Oscillation path

Infeed

Grinding disc

Workpiece
z

ii1 ii2

U1 U2

Fig. 2-1 Arrangement of oscillation and infeed axes plus terms

Legend: U1 Reversal point 1


U2 Reversal point 2
ii1 Reversal range 1
ii2 Reversal range 2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-17
Oscillation (P5) 06.05
2.2 Oscillation controlled by synchronized actions

Programming The parameters governing oscillation (see 2.2.7) must be defined before the
movement block containing the assignment between the infeed and oscillation
axes (see 2.1.1), the infeed definition (POSP) and the motion-synchronous
actions:
The oscillation axis is enabled via a WAITP[oscillation axis] (see MD
$MA_AUTO_GET_TYPE), allowing the oscillation parameters to be transferred,
i.e. into the setting data, simultaneously. The symbolic names, e.g.
$SA_REVERSE_POS1 can then be used to program the motion-synchronous
actions.

Note
For motion-synchronous actions with $SA_REVERSE_POS values, the
comparison values at the time of interpretation are valid. Subsequent
changes to setting data are irrelevant in this respect.
For motion-synchronous actions with $$AA_REVERSE_POS values, the
comparison values apply within the interpolation. This ensures a reaction to
the modified reversal positions.

S Motion-synchronous conditions WHEN, WHENEVER


S Activation through motion block
– Assign oscillation axis and infeed axes to one another OSCILL
– Specify infeed response POSP.
The elements which have not yet been discussed are explained in more detail
in the following sections.
Some examples are described in Chapter 6.

Note
If the condition with which the motion-synchronous action (WHEN and
WHENEVER) has been defined is no longer valid, the OVERRIDE for this
condition is automatically set to 100% if the OVERRIDE had been set to 0%
before.

Main run With SW 3.2 and higher, it is possible to compare the synchronization
evaluation conditions in the interpolation cycle in the main run with the current actual
values ($$ variable on the right of comparison conditions). With normal system
variable comparison, the expressions are evaluated in the first run. The
complete extended possibilities for synchronized actions are listed in the
following documentation:
References: /FB/, S5, “Motion-synchronous actions”.

Copyright © Siemens AG, 2005.


2/P5/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2.2 Oscillation controlled by synchronized actions

Example 1 Oscillation, reversal position firmly set via setting data:


$SA_OSCILL_REVERSE_POS1[Z]=–10
$SA_OSCILL_REVERSE_POS2[Z]=10

G0 X0 Z0
WAITP(Z)

ID=1 WHENEVER $AA_IM[Z] < $SA_OSCILL_REVERSE_POS1[Z] DO


$AA_OVR[X]=0
ID=2 WHENEVER $AA_IM[Z] > $SA_OSCILL_REVERSE_POS2[Z] DO
$AA_OVR[X]=0
; If the actual value of the oscillation
; axis has exceeded the reversal point,
; the infeed axis is stopped.

OS[Z]=1 FA[X]=1000 POS[X]=40 ; Oscillation ON


OS[Z]=0 ; Oscillation OFF

M30

Example 2 Oscillation with online change of the reversal position, i.e. any modification of
reversal position 1 via the user surface are immediately taken into account with
active oscillation movement.
$SA_OSCILL_REVERSE_POS1[Z]=–10
$SA_OSCILL_REVERSE_POS2[Z]=10

G0 X0 Z0
WAITP(Z)

ID=1 WHENEVER $AA_IM[Z] < $$SA_OSCILL_REVERSE_POS1[Z] DO


$AA_OVR[X]=0
ID=2 WHENEVER $AA_IM[Z] > $$SA_OSCILL_REVERSE_POS2[Z] DO
$AA_OVR[X]=0
; If the actual value of the oscillation
; axis has exceeded the reversal point,
; the infeed axis is stopped.

OS[Z]=1 FA[X]=1000 POS[X]=40 ; Oscillation ON


OS[Z]=0 ; Oscillation OFF

M30

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-19
Oscillation (P5) 06.05
2.2 Oscillation controlled by synchronized actions

2.2.1 Infeed at reversal point 1 or 2

Function As long as the oscillation axis has not reached the reversal point, the infeed
axis does not move.

Application Direct infeed in reversal point

Programming For reversal point 1:


WHENEVER $AA_IM[Z] <> $SA_OSCILL_REVERSE_POS1[Z] DO
$AA_OVR[X] = 0 $AA_OVR[Z] = 100
For reversal point 2:
WHENEVER $AA_IM[Z] <> $SA_OSCILL_REVERSE_POS2[Z] DO
$AA_OVR[X] = 0 $AA_OVR[Z] = 100
Explanation of system variables:
$AA_IM[Z] Actual position of oscillation axis Z in
machine coordinate system
$SA_OSCILL_REVERSE_POS1[Z]
Position of reversal point 1 of
oscillation axis
$AA_OVR[X] Axial override of infeed axis
$AA_OVR[Z] Axial override of oscillation axis

Explanation of vocabulary words:


WHENEVER ... DO ... Whenever condition is fulfilled, then...

Infeed The absolute infeed value is defined by instruction POSP.


See 2.2.8.

Assignment The assignment between the oscillation axis and the infeed axis is defined by
instruction OSCILL.
See 2.2.7.

2.2.2 Infeed in reversal point range

Function Reversal point range 1:


No infeed takes place provided the oscillation axis has not reached the reversal
point range (position at reversal point 1 plus contents of variable ii1). This
applies on the condition that reversal point 1 is set to a lower value than
reversal point 2. If this is not the case, then the condition must be changed
accordingly.

Application Reversal point range 1:


The purpose of the synchronized action is to prevent the infeed movement from
starting until the oscillation movement has reached reversal point range 1.
See Fig. 2-1.

Copyright © Siemens AG, 2005.


2/P5/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2.2 Oscillation controlled by synchronized actions

Programming Reversal point range 1:


WHENEVER $AA_IM[Z] > $SA_OSCILL_REVERSE_POS1[Z] + ii1 DO
$AA_OVR[X] = 0
Explanation of system variables:
$AA_IM[Z] Actual position of oscillation axis Z
$SA_OSCILL_REVERSE_POS1[Z]
Position of reversal point 1 of
oscillation axis
$AA_OVR[X] Axial override of infeed axis

ii1 Size of reversal range


(user variable)

Explanation of vocabulary words:


WHENEVER ... DO ... Whenever condition is fulfilled, then...

Function Reversal point range 2:


The infeed axis stops until the current position (value) of the oscillation axis is
lower than the position at reversal point 2 minus the contents of variable ii2.
This applies on condition that the setting for reversal point position 2 is higher
than that for reversal point position 1. If this is not the case, then the condition
must be changed accordingly.

Application Reversal point range 2:


The purpose of the synchronized action is to prevent the infeed movement from
starting until the oscillation movement has reached reversal point range 2.
See Fig. 2-1.

Programming Reversal point range 2:


WHENEVER $AA_IM[Z] < $SA_OSCILL_REVERSE_POS2[Z] – ii2 DO
$AA_OVR[X] = 0
Explanation:
$AA_IM[Z] Actual position of oscillation axis Z
$SA_OSCILL_REVERSE_POS2[Z]
Position of reversal point 2 of
oscillation axis
$AA_OVR[X] Axial override of infeed axis

ii2 Size of reversing point range 2


(user variable)

Infeed The absolute infeed value is defined by instruction POSP.


See Subsection 2.2.8.

Assignment The assignment between the oscillation axis and the infeed axis is defined by
instruction OSCILL.
See Subsection 2.2.7.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-21
Oscillation (P5) 06.05
2.2 Oscillation controlled by synchronized actions

2.2.3 Infeed at both reversal points

Principle The functions described above for infeed at the reversal point and in the
reversal point range can be freely combined.

Combinations Infeed:
an U1 at U2
at U1 range U2
range U1 at U2
range U1 range U2

One-sided at U1
infeed at U2
range U1
range U2
These options are described in Subsections 2.2.1 and 2.2.2.

Copyright © Siemens AG, 2005.


2/P5/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2.2 Oscillation controlled by synchronized actions

2.2.4 Stopping oscillation movement at reversal point

Function Reversal point 1:


Every time the oscillation axis reaches reversal position 1, it must be stopped by
means of the override and the infeed movement started.

Application The synchronized action is used to hold the oscillation axis stationary until part
infeed has been executed. This synchronized action can be omitted if the
oscillation axis need not wait at reversal point 1 until part infeed has been
executed. At the same time, this synchronized action can be used to start the
infeed movement if this has been stopped by a previous synchronized action
which is still active.

Programming WHENEVER $AA_IM[oscillation axis] ==


$SA_OSCILL_REVERSE_POS1[oscillation axis]
DO $AA_OVR[oscillation axis] = 0 $AA_OVR[infeed axis] = 100
Explanation of system variables:
$AA_IM[oscillation axis] Current position of oscillation axis
$SA_OSCILL_REVERSE_POS1[oscillation axis]
Reversal point 1 of oscillation axis
$AA_OVR[oscillation axis] Axial override of oscillation axis
$AA_OVR[infeed axis] Axial override of infeed axis

Function Reversal point 2:


Every time the oscillation axis reaches reversal position 2, it must be stopped by
means of a 0 override and the infeed movement started.

Application The synchronized action is used to hold the oscillation axis stationary until part
infeed has been executed. This synchronized action can be omitted if the
oscillation axis need not wait at reversal point 2 until part infeed has been
executed. At the same time, this synchronized action can be used to start the
infeed movement if this has been stopped by a previous synchronized action
which is still active.

Programming WHENEVER $AA_IM[oscillation axis] ==


$SA_OSCILL_REVERSE_POS2[oscillation axis]
DO $AA_OVR[oscillation axis] = 0 $AA_OVR[infeed axis] = 100
Explanation of system variables:
$AA_IM[oscillation axis] Current position of oscillation axis
$SA_OSCILL_REVERSE_POS2[oscillation axis]
Reversal point 2 of oscillation axis
$AA_OVR[oscillation axis] Axial override of oscillation axis
$AA_OVR[infeed axis] Axial override of infeed axis

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-23
Oscillation (P5) 06.05
2.2 Oscillation controlled by synchronized actions

2.2.5 Oscillation movement restarting

Function The oscillation axis is started via the override whenever the distance-to-go for
the currently traversed path section of the infeed axis = 0, i.e. part infeed has
been executed.

Application The purpose of this synchronized action is to continue the movement of the
oscillation axis on completion of the part infeed movement. If the oscillation axis
need not wait for completion of partial infeed, then the motion-synchronous
action with which the oscillation axis is stopped at the reversal point must be
omitted.

Programming WHENEVER $AA_DTEPW[infeed axis] == 0 DO


$AA_OVR[oscillation axis] =100
Explanation of system variables:
$AA_DTEPW[infeed axis] Axial distance-to-go for infeed axis in
workpiece coordinate system
Path section of infeed axis
$AA_OVR[oscillation axis] Axial override for oscillation axis

Explanation of vocabulary words:


WHENEVER ... DO ... Whenever condition is fulfilled, then...

2.2.6 Prevent premature starting of partial infeed

Function The functions described above prevent any infeed movement outside the
reversal point or the reversal point range. On completion of an infeed
movement, however, restart of the next partial infeed must be prevented.

Application A channel-specific flag is used for this purpose. This flag is set at the end of the
partial infeed (partial distance-to-go == 0) and is deleted when the axis leaves
the reversal point range. The next infeed movement is then prevented by a
synchronized action.

Programming WHENEVER $AA_DTEPW[infeed axis] == 0 DO


$AC_MARKER[index]=1
and, for example, for reversal point 1:
WHENEVER $AA_IM[Z]<> $SA_OSCILL_REVERSE_POS1[Z] DO
$AC_MARKER[Index]=0
WHENEVER $AC_MARKER[index]==1 DO $AA_OVR[infeed axis]=0

Copyright © Siemens AG, 2005.


2/P5/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2.2 Oscillation controlled by synchronized actions

Explanation of system variables:


$AA_DTEPW[infeed axis] Axial distance-to-go for infeed axis in
workpiece coordinate system
Path section of infeed axis
$AC_MARKER[index] Channel-specific flag with index
$AA_IM[oscillation axis] Current position of oscillation axis
$SA_OSCILL_REVERSE_POS1[oscillation axis]
Reversal point 1 of oscillation axis
$AA_OVR[infeed axis] Axial override for infeed axis

Explanation of vocabulary words:


WHENEVER ... DO ... Whenever condition is fulfilled, then...

2.2.7 Assignment of oscillation and infeed axes OSCILL

Function One or several infeed axes are assigned to the oscillation axis with command
OSCILL. The oscillation movement is started.
The PLC is informed of which axes have been assigned via the VDI interface. If
the PLC is controlling the oscillation axis, it must now also monitor the infeed
axes and use the signals for the infeed axes to generate the reactions on the
oscillation axis via 2 stop bits of the interface.

Application The axes whose response has already been defined by synchronous
conditions are assigned to one another for activation of oscillation mode. The
oscillation movement is started.

Programming OSCILL[oscillation axis] = (infeed axis1, infeed axis2, infeed axis3)


Infeed axis2 and infeed axis3 in brackets plus their delimiters can be omitted if
they are not required.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-25
Oscillation (P5) 06.05
2.2 Oscillation controlled by synchronized actions

2.2.8 Definition of infeeds POSP

Function The control receives the following data for the infeed axis:
– Total infeed
– Part infeed at reversal point/reversal point range
– Part infeed response at end

Application This instruction must be given after activation of oscillation with OSCILL to
inform the control of the required infeed values at the reversal points/reversal
point ranges.

Programming POSP[infeed axis] = (end position, part section, mode)


End position End position for infeed axis after all partial
infeeds have been executed.
Partial section Part infeed at reversal point/reversal point range

Mode 0
For the last two part steps, the remaining path up to the
target point is divided into two equally large residual steps
(default setting).
Mode 1
The part length is adjusted such that the total of all
calculated part lengths corresponds exactly to the path up
to the target point.

Copyright © Siemens AG, 2005.


2/P5/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
2.2 Oscillation controlled by synchronized actions

2.2.9 External oscillation reversal

For example, keys on the PLC can be used to change the oscillation area or
instantaneously reverse the direction of oscillation.
The current oscillation motion is braked and the axis then traversed in the
opposite direction in response to edge-triggered PLC input signal Oscillation
reversal (DB31 DBB28 bit0). The braking operation is checked back via PLC
output signal Oscillation reversal active (DB31 DBB100 bit 2).
The braking position of the axis can be accepted as the new reversal position
by means of PLC signal Change reversal position (DB31 DBB28 Bit4).
The PLC input signal Select reversal position (DB31 DBB28 bit 3) is ignored
provided that the change is made in relation to the last issued External
oscillation reversal command.
No change in the reversal points applied via handwheel or JOG keys may be
active for the relevant axis. If handwheel or JOG key changes are currently
active, display alarm 20081 (Braking position cannot be accepted as reversal
position - handwheel active) will be generated. The alarm is automatically reset
when the conflict has been eliminated.

Stop time, No stop time is applied for a change of direction due to an External
exact stop oscillation reversal. The axis waits for the exact stop fine signal. Any
configured exact stop condition is fulfilled.

Infeed movement With non-modal oscillation, no infeed movement is performed for a


change of direction due to an External oscillation reversal, as the
reversal position has not been reached and consequently the
appropriate synchronized action is not fulfilled.

System variables The braking position can be scanned via system variable
$AA_OSCILL_BREAK_POS1, when approach to reversal position 1 is aborted
or via
$AA_OSCILL_BREAK_POS2 when approach to reversal position 2 is aborted.
If the relevant reversal point is approached again, the position of the reversal
point can be scanned in $AA_OSCILL_BREAK_POS1 or
$AA_OSCILL_BREAK_POS2.
In other words, only after an External oscillation reversal command is there a
difference between the values in $AA_OSCILL_BREAK_POS1 and
$AA_OSCILL_REVERSE_POS1 or the values in $AA_OSCILL_BREAK_POS2
and $AA_OSCILL_REVERSE_POS2.
External oscillation reversal can therefore be detected by a synchronized
action, see examples.

Special cases
If the PLC input signal “oscillation reversal” is activated as the axis is
approaching the start position, the approach movement is aborted and the axis
continues by approach interruption position 1.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/2-27
Oscillation (P5) 06.05
2.2 Oscillation controlled by synchronized actions

If the PLC input signal “oscillation reversal” is set during a stop period, the stop
timer is deactivated; if exact stop fine has not yet been reached, the axis waits
for the exact stop fine reached signal before continuing its motion.
If the PLC input signal “oscillation reversal” is activated as the axis is
approaching the end position, the approach movement is aborted and
oscillation is terminated.
For an example of the external oscillation reversal command, see 6.5.1.
J

Copyright © Siemens AG, 2005.


2/P5/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
4.1 Machine data

Supplementary Conditions 3
Availability Oscillation is an option with order number 6FC5 251–0AB04–0BA0.
of the Asynchronous and modal oscillation is available with SW 2 and higher for
“Oscillation” NCU570, 571, 572, 573.
function Oscillation with motion-synchronous actions is available with NCU 572 and 573.
J

Data Descriptions (MD, SD) 4


4.1 Machine data

11460 OSCILL_MODE_MASK
MD number Mode screen form for asynchronous oscillation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 0xFFFF
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 2.0
Meaning: Bit 0
Value 1 In the case of block search, the oscillation movement is
started immediately after NC start, i.e. during approach
to the approach position, provided it has been activated in
the program section being processed.
Value 0 The oscillation movement is not started until the approach
position is reached.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/4-29
Oscillation (P5) 06.05
4.2 Setting data

4.2 Setting data

Axis/spindle
specific data
43700 OSCILL_REVERSE_POS1[axis]
SD number Oscillation reversal point 1
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after: immediately Unit: mm, degrees
Data type: DOUBLE Applies from SW: 2.0
Meaning: Position of oscillation axis at reversal point 1
Application example(s) NC language: OSP1[axis]=position
Related to .... OSCILL_REVERSE_POS2
MD 10710 $MN_PROG_SD_RESET_SAVE_TAB

43710 OSCILL_REVERSE_POS2[axis]
SD number Oscillation reversal point 2
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after: immediately Unit: mm, degrees
Data type: DOUBLE Applies from SW: 2.0
Meaning: Position of oscillation axis at reversal point 2
Application example(s) NC language: OSP2[axis]=position
Related to .... OSCILL_REVERSE_POS1
MD 10710 $MN_PROG_SD_RESET_SAVE_TAB

43720 OSCILL_DWELL_TIME1[axis]
SD number Stop time at oscillation reversal point 1
Default setting: 0 Minimum input limit: –2 Maximum input limit: ***
Changes effective after: immediately Unit: s
Data type: DOUBLE Applies from SW: 2.0
Meaning: Stop time of oscillation axis at reversal point 1
Application example(s) NC language: OST1[axis]=time
Related to .... OSCILL_DWELL_TIME2
MD 10710 $MN_PROG_SD_RESET_SAVE_TAB

43730 OSCILL_DWELL_TIME2[axis]
SD number Stop time at oscillation reversal point 2
Default setting: 0 Minimum input limit: –2 Maximum input limit: ***
Changes effective after: immediately Unit: s
Data type: DOUBLE Applies from SW: 2.0
Meaning: Stop time of oscillation axis at reversal point 2
Application example(s) NC language: OST2[axis]=time
Related to .... OSCILL_DWELL_TIME1
MD 10710 $MN_PROG_SD_RESET_SAVE_TAB

Copyright © Siemens AG, 2005.


2/P5/4-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
4.2 Setting data

43740 OSCILL_VELO[axis]
SD number Feed velocity of oscillation axis
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after: immediately Unit: mm/min
rev/min
Data type: DOUBLE Applies from SW: 2.0
Meaning: Feed velocity of oscillation axis
Application example(s) NC language: FA[axis]=Fvalue
Related to .... MD 10710 $MN_PROG_SD_RESET_SAVE_TAB

43750 OSCILL_NUM_SPARK_CYCLES[axis]
SD number Number of sparking-out strokes
Default setting: 0 Minimum input limit: 0 Maximum input limit: ***
Changes effective after: immediately Unit: 1
Data type: DWORD Applies from SW: 2.0
Meaning: Number of sparking-out strokes which are executed on completion of oscillation movement
Application example(s) NC language: OSNSC[axis]=number of strokes
Related to .... MD 10710 $MN_PROG_SD_RESET_SAVE_TAB

43760 OSCILL_END_POS[axis]
SD number End position of oscillation axis
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after: immediately Unit: mm, degrees
Data type: DOUBLE Applies from SW: 2.0
Meaning: Position to be approached by oscillation axis after execution of sparking-out strokes.
Application example(s) NC language: OSE[axis]=position
Related to .... MD 10710 $MN_PROG_SD_RESET_SAVE_TAB

43770 OSCILL_CTRL_MASK[axis]
SD number Oscillation sequence control screen form
Default setting: 0 Minimum input limit: – Maximum input limit: –
Changes effective after: immediately Unit: –
Data type: BYTE Applies from SW: 2.0
Meaning: Bit screen form, see following Table 4-1
Application example(s) NC language: OSCTRL[axis]=(setting options, resetting options)
Related to .... MD 10710 $MN_PROG_SD_RESET_SAVE_TAB

43780 OSCILL_IS_ACTIVE[axis]
SD number Activation/deactivation of oscillation motion
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after: immediately Unit: –
Data type: BOOLEAN Applies from SW: 2.0
Meaning: Activation/deactivation of oscillation motion

Note:
The MD 10710: $MN_PROG_SD_RESET_SAVE_TAB can be set such that the
value written from the part program during reset is accepted by the active file
system (i.e. the value is retained beyond the reset)
Application example(s) NC language: OS[axis]=1
OS[axis]=0
Related to .... MD 10710 $MN_PROG_SD_RESET_SAVE_TAB

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/4-31
Oscillation (P5) 06.05
4.2 Setting data

43790 OSCILL_START_POS[axis]
SD number Start position of oscillation axis
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Changes effective after: immediately Unit: mm, degrees
Data type: DOUBLE Applies from SW: 7.2
Meaning: Position approached by the oscillation axis when oscillation commences if this has been
set in
$SA_OSCILL_CTRL_MASK.
Note:
MD 10710: $MN_PROG_SD_RESET_SAVE_TAB can be set
such that the value written from the parts program during reset is accepted by the active file
system (i.e. the value is retained beyond the reset).
Application example(s) NC language: OSB[axis]=position
OSB[axis]=position
Related to .... MD 10710 $MN_PROG_SD_RESET_SAVE_TAB

Table 4-1 Bit significance in screen form OSCILL_CTRL_MASK

Bit no. Meaning in OSCILL_CTRL_MASK


0,1 0: Stop at next reversal point on deactivation of oscillation movement
1: Stop at reversal point 1 on deactivation of oscillation movement
2: Stop at reversal point 2 on deactivation of oscillation movement
3: On deactivation of oscillation movement, do not approach reversal point unless sparking-out strokes are
programmed
2 1: Approach end position after next sparking-out
3 1: If the oscillation movement is aborted by delete distance-to-go, the sparking-out strokes must
then be executed and the end position approached (if programmed)
4 1: If the oscillation movement is aborted by delete distance-to-go, then the appropriate reversal position is
approached as for deactivation
5 1: New feedrate setting not effective until the next reversal point
6 1: If feedrate setting is 0, path overlay is active, or otherwise velocity overlay
7 1: For rotary axes DC (shortest path)
8 Execute sparking-out stroke as single stroke, not as double stroke
9 Approach start position when oscillation commences

Copyright © Siemens AG, 2005.


2/P5/4-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
5 Signal Descriptions

Signal Descriptions 5
VDI input signals The PLC user program uses the following signals to control the oscillation
process.

DB31, ... External oscillation reversal


DBX28.0
Data Block Signal(s) to axis/spindle
Edge evaluation: yes Signal(s) updated: Cyclic Signal(s) valid from SW: 7.2
Signal state 1 or signal Brake oscillation motion and move oscillation axis in the opposite direction.
transition 0 –––> 1
Signal state 0 or signal Continue oscillation without interruption
transition 1 –––> 0

DB31, ... Set reversal point


DBX28.3
Data Block Signal(s) to axis/spindle
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.0
Signal state 1 or signal Reversal point 2
transition 0 –––> 1
Signal state 0 or signal Reversal point 1
transition 1 –––> 0

DB31, ... Alter reversal point


DBX28.4
Data Block Signal(s) to axis/spindle
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.0
Signal state 1 or signal The selected reversal point can be altered by manual traverse.
transition 0 –––> 1 In conjunction with DB31, ...DBX28.0:
The position at which axis is braked after external oscillation reversal must be accepted as
new reversal point.
Signal state 0 or signal The selected reversal point cannot be altered by manual traverse.
transition 1 –––> 0 In conjunction with DB31, ...DBX28.0:
No change to reversal point
Related to .... DBX28.3

DB31, ... Stop at next reversal point


DBX28.5
Data Block Signal(s) to axis/spindle
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.0
Signal state 1 or signal The oscillation movement is interrupted at the next reversal point.
transition 0 –––> 1
Signal state 0 or signal The oscillation movement continues after the next reversal point.
transition 1 –––> 0
Related to .... DBX28.6, DBX28.7

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/5-33
Oscillation (P5) 06.05
5 Signal Descriptions

DB31, ... Stop along braking ramp


DBX28.6
Data Block Signal(s) to axis/spindle
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.0
Signal state 1 or signal The axis is decelerated along a ramp, the oscillation movement is interrupted.
transition 0 –––> 1
Signal state 0 or signal The oscillation movement continues without interruption.
transition 1 –––> 0
Related to .... DBX28.5, DBX28.7

DB31, ... PLC controls axis


DBX28.7
Data Block Signal(s) to axis/spindle
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.0
Signal state 1 or signal Axis is controlled by the PLC.
transition 0 –––> 1 The reaction to interface signals is controlled by the PLC by means of the 2 stop bits, other
signals with deceleration action are ignored.
Signal state 0 or signal Axis is not controlled by the PLC.
transition 1 –––> 0
Related to .... DBX28.5, DBX28.6

VDI output signals The NCK makes the following signals available to the PLC user program.

DB31, ... Oscillation reversal active


DBX100.2
Data Block Signal(s) from axis/spindle
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 7.2
Signal state 1 or signal The deceleration period after external oscillation reversal (DB31, ...DBX28.0) is active
transition 0 –––> 1
Signal state 0 or signal No deceleration after external oscillation reversal is active
transition 1 –––> 0

DB31, ... Oscillation cannot start


DBX100.3
Data Block Signal(s) from axis/spindle
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The oscillation axis cannot be started owing to incorrect programming. This status can
transition 0 –––> 1 occur even when axis has already been traversed.
Signal state 0 or signal The oscillation movement can be started.
transition 1 –––> 0

DB31, ... Error during oscillation movement


DBX100.4
Data Block Signal(s)
Edge evaluation: Signal(s) updated: Signal(s) valid from SW: 2..1
Signal state 1 or signal The oscillation movement has been aborted.
transition 0 –––> 1
Signal state 0 or signal The oscillation movement is being executed correctly.
transition 1 –––> 0

Copyright © Siemens AG, 2005.


2/P5/5-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
5 Signal Descriptions

DB31, ... Sparking-out active


DBX100.5
Data Block Signal(s) from axis/spindle
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The axis is executing sparking-out strokes.
transition 0 –––> 1
Signal state 0 or signal The axis is not currently executing sparking-out strokes.
transition 1 –––> 0
Related to .... DBX100.7

DB31, ... Oscillation movement active


DBX100.6
Data Block Signal(s) from axis/spindle
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The axis is executing an oscillation movement between 2 reversal points.
transition 0 –––> 1
Signal state 0 or signal The axis is not currently oscillating.
transition 1 –––> 0
Signal irrelevant for ... ... DBX100.7 = 0
Related to .... DBX100.7

DB31, ... Oscillation active


DBX100.7
Data Block Signal(s) from axis/spindle
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The axis is currently being traversed as an oscillation axis.
transition 0 –––> 1
Signal state 0 or signal The axis is a positioning axis.
transition 1 –––> 0
Related to .... DBX100.5, DBX100.6

DB31, ... Active infeed axes


DBX104.0 – 7
Data Block Signal(s) from axis/spindle
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The axis sending the signal is currently the oscillation axis and is indicating its active infeed
transition 0 –––> 1 axes in this field (104.0 axis 1 is infeed axis, 104.1 axis 2 is infeed axis, etc.).
Signal state 0 or signal The associated axis is not an infeed axis.
transition 1 –––> 0
Related to .... DBX100.7

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/5-35
Oscillation (P5) 06.05
5 Signal Descriptions

Notes

Copyright © Siemens AG, 2005.


2/P5/5-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
6.1 Example of asynchronous oscillation

Examples 6
Prerequisites The examples given below require components of the NC language specified in
the sections entitled:

– Asynchronous oscillation
and
– Oscillation controlled by synchronized actions.

6.1 Example of asynchronous oscillation

Task The oscillation axis Z must oscillate between –10 and 10. Approach reversal
point 1 with exact stop coarse and reversal point 2 without exact stop. The
oscillation axis feedrate must be 5000. 3 sparking-out strokes must be executed
at the end of the machining operation followed by approach by oscillation axis to
end position 30. The feedrate for the infeed axis is 1000, end of the infeed in X
direction is at 15.

Program extract OSP1[Z]=−10 ; Reversal point 1


OSP2[Z]=10 ; Reversal point 2
OST1[Z]=−1 ; Stop time at reversal point 1: Exact stop coarse
OST2[Z]=−2 ; Stop time at reversal point 2: Without exact stop
FA[Z]=5000 ; Feedrate oscillation axis
OSNSC[Z]=3 ; Three sparking-out strokes
OSE[Z]=30 ; End position
OS[Z]=1 F500 X15 ; Start oscillation, infeed X axis
; with feedrate 500, infeed target 15

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/6-37
Oscillation (P5) 06.05
6.1 Example of asynchronous oscillation

Z axis
–10 0 10 20 30

10

End position

U1 U2
3 sparking-out strokes
20
X axis

Fig. 6-1 Sequences of oscillation movements and infeed, example 1

Copyright © Siemens AG, 2005.


2/P5/6-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
6.2 Example 1 of oscillation with synchronized actions

6.2 Example 1 of oscillation with synchronized actions

Task Direct infeed must take place at reversal point 1; the oscillation axis must wait
until the part infeed has been executed before it can continue traversal. At
reversal point 2, the infeed must take place at a distance of –6 from reversal
point 2; the oscillation axis must not wait at this reversal point until part infeed
has been executed. Axis Z is the oscillation axis and axis X the infeed axis.
(See 2.2).

Note
The setting data OSCILL_REVERSE_POS_1/2 are values in the machine
coordinate system; therefore comparison is only suitable with $AA_IM[n].

Program extract ; Example 1: Oscillation with synchronized actions


OSP1[Z]=10 OSP2[Z]=60 ; Declare reversal points 1 and 2
OST1[Z]=–2 OST2[Z]=0 ; Reversal point 1: Without exact stop
; Reversal point 2: Exact stop fine
FA[Z]=5000 FA[X]=250 ; Feedrate for oscillation axis, feedrate
; for infeed axis
OSCTRL[Z]=(1+8+16,0) ; Deactivate oscillation movement at reversal point 1
; Sparking-out after deletion of distance-to-go and
; approach end position
; Approach programmed reversal
; point after deletion of distance-to-go
OSNSC[Z]=3 ; 3 sparking-out strokes
OSE[Z]=0 ; End position = 0;
WAITP(Z) ; Enable oscillation for Z axis
; Motion-synchronous actions:
;
;Whenever the current position of the oscillation axis in the machine coordinate system
; is not equal to reversal position 1,
; then set the flag with index 1 to a value of 0 (reset flag 1)
WHENEVER $AA_IM[Z]<>$SA_OSCILL_REVERSE_POS1[Z] DO $AC_MARKER[1]=0
;
;Whenever the current position of the oscillation axis in the machine coordinate system
; is lower than the beginning of reversal point range 2 (here: Reversal point 2 – 6),
; then set the axial override of the infeed axis to 0%
; and set flag with index 2 to value 0 (reset flag 2).
WHENEVER $AA_IM[Z]<$SA_OSCILL_REVERSE_POS2[Z]–6 DO $AA_OVR[X]=0 $AC_MARKER[2]=0
;
;Whenever the current position of the oscillation axis in the machine coordinate system
; is the same as reversal position 1,
; then set the axial override of oscillation axis to 0%
; and set the axial override of infeed axis to 100% (i.e. to cancel the
; preceding synchronized action!)
WHENEVER $AA_IM[Z]==$SA_OSCILL_REVERSE_POS1[Z] DO $AA_OVR[Z]=0 $AA_OVR[X]=100
;
;Whenever the distance-to-go of the part infeed
; is equal to 0,
; then set flag with index 2 to a value of 1
; and set flag with index 1 to a value of 1
WHENEVER $AA_DTEPW[X]==0 DO $AC_MARKER[2]=1 $AC_MARKER[1]=1

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/6-39
Oscillation (P5) 06.05
6.2 Example 1 of oscillation with synchronized actions

;
;Whenever the flag with index 2
; is equal to 1,
; then set the axial override of the infeed axis to 0% to prevent premature infeed
; (oscillation axis has not yet exited from reversal
; position 1).
WHENEVER $AC_MARKER[2]==1 DO $AA_OVR[X]=0
;
;Whenever the flag with index 1
; is equal to 1,
; then set the axial override of the infeed axis to 0% to prevent premature
; infeed (oscillation axis has not yet exited from reversal point range 2)
; and set axial override of oscillation axis to 100% (’start’ oscillation).
WHENEVER $AC_MARKER[1]==1 DO $AA_OVR[X]=0 $AA_OVR[Z]=100
;

;If the current position of the oscillation axis in the machine coordinate system
; is equal to reversal position 1,
; then set the axial override of the oscillation axis to 100%
; and set the axial override of the infeed axis to 0% (in order
; to cancel the second synchronized action once)!
WHEN $AA_IM[Z]==$SA_OSCILL_REVERSE_POS1[Z] DO $AA_OVR[Z]=100 $AA_OVR[X]=0
;
;––––––––––––––––––––––––––––––––––––––––––
OSCILL[Z]=(X) POSP[X]=(5,1,1) ; Assign axis X as infeed axis
; to oscillation axis Z; axis X must
; infeed to end position 5 in part steps of
; 1 and the total of all part lengths
; must correspond exactly to the end position
;
M30 ; Program end

Z axis
0 10 20 30 40 50 60 70
0

1.0

2.0

3.0

4.0

X axis
5.0 Approach reversal position 1 and 3 sparking–out strokes
End position
approach

Fig. 6-2 Sequences of oscillation movements and infeed, example 1

Copyright © Siemens AG, 2005.


2/P5/6-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
6.3 Example 2 of oscillation with synchronized actions

6.3 Example 2 of oscillation with synchronized actions

Task No infeed must take place at reversal point 1. At reversal point 2, the infeed
must take place at distance ii2 from reversal point 2; the oscillation axis must
wait at this reversal point until part infeed has been executed. Axis Z is the
oscillation axis and axis X the infeed axis.

Program section Example 2: Oscillation with synchronized actions

DEF INT ii2 ; Define variables for reversal point range 2


;
OSP1[Z]=10 OSP2[Z]=60 ; Declare reversal points 1 and 2
OST1[Z]=0 OST2[Z]=0 ; Reversal point 1: Exact stop fine
; Reversal point 2: Exact stop fine
FA[Z]=5000 FA[X]=100 ; Feedrate for oscillation axis, feedrate for infeed axis
OSCTRL[Z]=(2+8+16,1) ; Deactivate oscillation movement at reversal point 2
; After deletion of distance-to-go sparking-out and approach end position
; After deletion of distance-to-go approach appropriate reversal position
OSNSC[Z]=3 ; 3 sparking-out strokes
OSE[Z]=70 ; End position = 70;
ii2=2 ; Set reversal point range
WAITP(Z) ; Enable oscillation for Z axis

; Motion-synchronous actions:
; Whenever the current position of the oscillation axis in the machine coordinate system
; is lower than the start of reversal point range 2,
; then set the axial override of the infeed axis to 0%
; and set the flag with index 0 to a value of 0
WHENEVER $AA_IM[Z]<$SA_OSCILL_REVERSE_POS2[Z]–ii2 DO $AA_OVR[X]=0 $AC_MARKER[0]=0
;
; Whenever the current position of the oscillation axis in the machine coordinate system
; is equal or greater than reversal position 2,
; then set the axial override of the oscillation axis to 0%
WHENEVER $AA_IM[Z]>=$SA_OSCILL_REVERSE_POS2[Z] DO $AA_OVR[Z]=0
;
; Whenever the distance-to-go of the part infeed
; is equal to 0,
; then set the flag with index 0 to a value of 1
WHENEVER $AA_DTEPW[X]==0 DO $AC_MARKER[0]=1
;
; Whenever the flag with index 0
; is equal to 1,
; then set the axial override of the infeed axis to 0%
; in order to prevent premature infeed (oscillation axis has not yet exited
; from reversal point range 2, infeed axis is ready to infeed again)
; and set the axial override of the oscillation axis to 100% (thus canceling
; the 2nd synchronized action)
WHENEVER $AC_MARKER[0]==1 DO $AA_OVR[X]=0 $AA_OVR[Z]=100
;
OSCILL[Z]=(X) POSP[X]=(5,1,1) ; Start axes
; Axis X is assigned to oscillation axis Z
; as the infeed axis
; Axis X must traverse to end position
; 5 in steps of 1

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/6-41
Oscillation (P5) 06.05
6.3 Example 2 of oscillation with synchronized actions

;
M30

Z axis
0 10 20 30 40 50 60 70
0

1.0

2.0

3.0

4.0
End position
5.0 approach
Approach reversal position 2 and 3 sparking–out strokes

X axis

Fig. 6-3 Sequences of oscillation movements and infeed, example 2

Copyright © Siemens AG, 2005.


2/P5/6-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
6.4 Examples for starting position

6.4 Examples for starting position


6.4.1 Define starting position via language command

WAITP(Z) ; Allow oscillation for Z axis


OSP1[Z]=10 OSP2[Z]=60 ; Declare reversal points 1 and 2
OST1[Z]=–2 OST2[Z]=0 ; Reversal point 1: Without exact stop
; Reversal point 2: Exact stop fine
FA[Z]=5000 FA[X]=2000 ; Feedrate for oscillation axis,
; Feedrate for infeed axis
OSCTRL[Z]=(1+8+16,0) ; Deactivate oscillation movement at
; reversal point 1
; Sparking-out after deletion of
; distance-to-go and approach
; end position, Approach programmed
; reversal point after deletion of
; distance-to-go
OSNSC[Z]=3 ; 3 sparking-out strokes
OSE[Z]=0 ; End position = 0
OSB[Z]=0 ; Starting position = 0
OS[Z]=1 X15 F500 ; Start oscillation, continuous infeed
OS[Z]=0 ; Deactivate oscillation
WAITP(Z) ; Wait for end of oscillation motion
M30

Explanation When the Z axis starts oscillation, it first approaches the starting position
(position = 0 in the example) and then begins the oscillation motion between the
reversal points 10 and 60. When the X axis has reached its end position 15, the
oscillation finishes with 3 sparking out strokes and approach of end position 0.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/6-43
Oscillation (P5) 06.05
6.4 Examples for starting position

6.4.2 Start oscillation via setting data

WAITP(Z)
STOPRE
$SA_OSCILL_REVERSE_POS1[ Z ] = –10 ; Reversal point 1 = –10
$SA_OSCILL_REVERSE_POS2[ Z ] = 30 ; Reversal point 2 = 30
$SA_OSCILL_START_POS[Z] = –50 ; Starting position = –50
$SA_OSCILL_CTRL_MASK[Z] = 512 ; Approach starting position,
; When deactivated, stop at
; next reversal point
; do not approach end position
; No sparking out strokes with
; deletion of distance to go
$SA_OSCILL_VELO[ Z ] = 5000 ; Feedrate for oscillation axis
$SA_OSCILL_IS_ACTIVE[ Z ] = 1 ; Start
$SA_OSCILL_DWELL_TIME1[ Z ] = –2 ; without waiting for exact stop
$SA_OSCILL_DWELL_TIME2[ Z ] = 0 ; Wait for exact stop fine
STOPRE
X30 F100
$SA_OSCILL_IS_ACTIVE[ Z ] = 0 ; Stop
WAITP(Z)
M30

Explanations When the Z axis starts oscillation, it first approaches the starting position
(position = –50 in the example) and then begins the oscillation motion between
the reversal points –10 and 30. When the X axis has reached its end position
30, the oscillation finishes at the next approached reversal point.

Copyright © Siemens AG, 2005.


2/P5/6-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
6.4 Examples for starting position

6.4.3 Non-modal oscillation (starting position = reversal point 1)

Oscillation with
synchronized
N701 ; Oscillat. with synchronized actions, starting position == reversal point 1
actions ;
N702 OSP1[Z]=10 OSP2[Z]=60 ; Declare reversal points 1 and 2
N703 OST1[Z]=0 OST2[Z]=0 ; Reversal point 1: Exact stop coarse
; Reversal point 2: Exact stop fine
N704 FA[Z]=5000 FA[X]=2000 ; Feedrate for oscillation axis,
; Feedrate for infeed axis
N705 OSCTRL[Z]=(1+8+16,0) ; Deactivate oscillation motion at
; reversal point 1
; Sparking-out after deletion of
; distance-to-go
; and approach end position
; Approach programmed reversal
; point after deletion of distance-to-go
N706 OSNSC[Z]=3 ; 3 sparking-out strokes
N707 OSE[Z]=0 ; End position = 0
N708 OSB[Z]=10 ; Starting position = 10
N709 WAITP(Z) ; Enable oscillation for Z axis
;
––––––––––––––––––––––––––––––––––––––––––
; Motion-synchronous actions:
; Set marker with index 2 to 1 (initialization)
WHEN TRUE DO $AC_MARKER[2]=1

; Whenever marker with index 2 equals 0 and


; the current position of oscillation axis is not equal to reversal point 1,
; then
; set marker with index 1 to 0.
WHENEVER ($AC_MARKER[2] == 0) AND
($AA_IW[Z]>$SA_OSCILL_REVERSE_POS1[Z]) DO $AC_MARKER[1]=0

; Whenever
; current position of oscillation axis is less than the start of
; reversal area 2,
; then
; set axial override of infeed axis to 0
; and set marker with index 0 to 0.
WHENEVER $AA_IW[Z]<$SA_OSCILL_REVERSE_POS2[Z]–6 DO
$AA_OVR[X]=0 $AC_MARKER[0]=0
;
; Whenever
; current position of oscillation axis equals reversal point 1,
; then
; set axial override of oscillation axis to 0
; and set axial override of infeed axis to 100%
; (this cancels the previous synchronized action!)
WHENEVER $AA_IW[Z]==$SA_OSCILL_REVERSE_POS1[Z] DO
$AA_OVR[Z]=0 $AA_OVR[X]=100
;
; Whenever the distance to go of the partial infeed equals 0,
; then
; set marker with index 0 to 1
; and set marker with index 1 to 1

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/6-45
Oscillation (P5) 06.05
6.4 Examples for starting position

WHENEVER $AA_DTEPW[X]==0 DO $AC_MARKER[0]=1


$AC_MARKER[1]=1
;
; Whenever marker with index 0 equals 1,
; then
; set axial override of infeed axis to 0, this prevents
; a premature infeed!
WHENEVER $AC_MARKER[0]==1 DO $AA_OVR[X]=0
;
; Whenever marker with index 1
; equals 1,
; then
; set axial override of infeed axis to 0,
; (this prevents a premature infeed!)
; and set axial override of oscillation axis to 100%
; (this cancels the previous synchronized action!)
WHENEVER $AC_MARKER[1]==1 DO $AA_OVR[X]=0 $AA_OVR[Z]=100
;
; If the current position of the oscillation axis is equal to reversal point 1,
; then
; reset marker with index 2,
; enable synchronized action 1
; (no infeed when reaching starting position == reversal point 1)
WHEN $AA_IW[Z]==$SA_OSCILL_REVERSE_POS1[Z] DO
$AC_MARKER[2]=0
;
;––––––––––––––––––––––––––––––––––––––––––
N750 OSCILL[Z]=(X) POSP[X]=(5,1,1)
; Assign axis X as infeed axis for oscillation axis Z, the X axis should
; infeed to end position 5 in part steps of 1 and the total of all part lengths
; should equal that end position.
;
N780 WAITP(Z)
; Release Z axis again
N790 X0 Z0
N799 M30 ; End of program

Explanations
The starting position matches reversal point 1. The WHEN .... synchronized
actions (in bold above) prevent an infeed when the starting position is reached.

Copyright © Siemens AG, 2005.


2/P5/6-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
6.5 Example of external oscillation reversal

6.5 Example of external oscillation reversal


6.5.1 Change reversal position via synchronized action with “external
oscillation reversal”

DEFINE BREAKPZ AS $AA_OSCILL_BREAK_POS1[Z]


DEFINE REVPZ AS $SA_OSCILL_REVERSE_POS1[Z]

WAITP(Z) ; Enable oscillation for Z axis


OSP1[Z]=10 OSP2[Z]=60 ; Declare reversal points 1 and 2
OSE[Z]=0 ; End position = 0
OSB[Z]=0 ; Starting position = 0

; On external oscillation reversal for oscillation reversal point 1, modify the latter
WHENEVER BREAKPZ <> REVPZ DO $$SA_OSCILL_REVERSE_POS1 =
BREAKPZ
OS[Z]=1 X150 F500 ; Start oscillation, continuous infeed
OS[Z]=0 ; Deactivate oscillation
WAITP(Z) ; Wait for end of oscillation motion
M30
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/6-47
Oscillation (P5) 06.05
6.5 Example of external oscillation reversal

Notes

Copyright © Siemens AG, 2005.


2/P5/6-48 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
7.2 Machine data

Data Fields, Lists 7


7.1 Interface signals

DB number Bit, byte Name Refer-


ence
Axis-specific/spindle-specific Signals to axis/spindle
31, ... 28.0 External oscillation reversal
31, ... 28.3 Set reversal point
31, ... 28.4 Alter reversal point
31, ... 28.5 Stop at next reversal point
31, ... 28.6 Stop along braking ramp
31, ... 28.7 PLC controls axis
Signals from axis/spindle
31, ... 100.2 Oscillation reversal is active
31, ... 100.3 Oscillation cannot start
31, ... 100.4 Error during oscillation movement
31, ... 100.5 Sparking-out active
31, ... 100.6 Oscillation movement active
31, ... 100.7 Oscillation active

7.2 Machine data

Number Names Name Refer-


ence
General ($MN_ ... )
10710 PROG_SD_RESET_SAVE_TAB Oscillations to be saved from SD
11460 OSCILL_MODE_MASK Control screen form for asynchronous oscilla-
tion

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/7-49
Oscillation (P5) 06.05
7.4 Interrupts

7.3 Setting data

Number Names Name Refer-


ence
Axisspecific ($SA_ ... )
43700 OSCILL_REVERSE_POS1 Position at reversal point 1
43710 OSCILL_REVERSE_POS2 Position at reversal point 2
43720 OSCILL_DWELL_TIME1 Stop time at reversal point 1
43730 OSCILL_DWELL_TIME2 Stop time at reversal point 2
43740 OSCILL_VELO Feed velocity of oscillation axis
43750 OSCILL_NUM_SPARK_CYCLES Number of sparking-out strokes
43760 OSCILL_END_POS Position after sparking-out strokes/at end of
oscillation movement
43770 OSCILL_CTRL_MASK Control screen form for oscillation
43780 OSCILL_IS_ACTIVE Oscillation movement ON/OFF
43790 OSCILL_START_POS Position that is approached after oscillation
before reversal point 1, if activated in SD
43770: OSCILL_CTRL_MASK.

7.4 Interrupts
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, Diagnostics Guide
or in the Online help.

Copyright © Siemens AG, 2005.


2/P5/7-50 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
7.5 Main run variables for motion-synchronous actions

7.5 Main run variables for motion-synchronous actions


The following variables are provided for main run variable_read:

Main run variable_read:


$A_IN[<arith. expression>] Digital input (Boolean)
$A_OUT[<arith. expression>] Digital output (Boolean)
$A_INA[<arith. expression>] Analog input (Boolean)
$A_OUTA[<arith. expression>] Analog output (Boolean)
$A_INCO[<arith. expression>] Comparator inputs (Boolean)
$AA_IW[<axial expression>] Actual position, axis PCS (Real)
$AA_IB[<axial expression>] Actual position, axis BCS (Real)
$AA_IM[<axial expression>] Actual position, axis MCS (IPO setpoints) (Real)
With $AA_IM[S1], actual values for spindles can
be evaluated. Modulo calculation is used for
spindles and rotary axes, depending on machine data
$MA_ROT_IS_MODULO and
$MA_DISPLAY_IS_MODULO.

$AA_OSCILL_BREAK_POS1 Deceleration position after external oscillation reversal when


approaching reversal point 1
$AA_OSCILL_BREAK_POS2 Deceleration position after external oscillation reversal when
approaching reversal point 2

$AC_TIME Time from start of block (Real) in seconds (including times for
intermediate blocks generated internally)
$AC_TIMES Time from start of block (REAL) in seconds (not including times for
intermediate blocks generated internally)
$AC_TIMEC Time from start of block (Real) in IPO cycles (including cycles for
intermediate blocks generated internally)
$AC_TIMESC Time from start of block (Real) in IPO cycles (not including cycles
for intermediate blocks generated internally)
$AC_DTBB Distance to start of block in BCS
(Distance to begin, baseCoor) (Real)
$AC_DTBW Distance to start of block in PCS
(Distance to begin, workpieceCoor) (Real)
$AA_DTBB[<axial expression>] Axial distance to start of block in BCS
(Distance to begin, baseCoor) (Real)
$AA_DTBW[<axial expression>] Axial distance to start of block in PCS
(Distance to begin, workpieceCoor) (Real)

$AC_DTEB Distance to end of block in BCS (Distance to end)


(Distance to end, baseCoor) (Real)
$AC_DTEW Distance to end of block in PCS
(Distance to end, workpieceCoor) (Real)
$AA_DTEB[<axial expression>] Axial distance to end of motion in BCS
(Distance to begin, baseCoor) (Real)
$AA_DTEW[<axial expression>] Axial distance to end of motion in PCS
(Distance to end, workpieceCoor) (Real)

$AC_PLTBB Path distance to start of block in BCS


(Path Length from begin, baseCoor) (Real)
$AC_PLTEB Path distance to end of block in BCS (Distance to end)
(Path Length to end, baseCoor) (Real)

$AC_VACTB Path velocity in BCS


(Velocity actual, baseCoor) (Real)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/7-51
Oscillation (P5) 06.05
7.5 Main run variables for motion-synchronous actions

$AC_VACTW Path velocity in PCS


(Velocity actual, workPieceCoor) (Real)
$AA_VACTB[<axial expression>] Axis velocity in BCS
(Velocity actual, baseCoor) (Real)
$AA_VACTW[<axial expression>] Axis velocity in PCS
(Velocity actual, workPieceCoor) (Real)

$AA_DTEPB[<axial expression>] Axial distance to go for oscillation infeed in BCS


(Distance to end, pendulum,baseCoor) (Real)
$AA_DTEPW[<axial expression>] Axial distance to go for oscillation infeed in PCS
(Distance to end, pendulum,workpieceCoor) (Real)
$AC_DTEPB Path distance to go for oscillation infeed in BCS
(not P2) (Distance to end, pendulum,baseCoor)
(Real)
$AC_DTEPW Path distance to go for oscillation infeed in PCS
(not P2)
(Distance to end, pendulum,workpieceCoor) (Real)
$AC_PATHN (Path parameter normalized)(Real) Normalized
path parameter: 0 for block start to 1 for block end

$AA_LOAD[<axial expression>] Drive load (for 611D only)

$AA_POWER[<axial expression>] Real drive output in W (for 611D only)

$AA_TORQUE[<axial expression>] Drive torque setpoint in Nm (for 611D only)

$AA_CURR[<axial expression>] Actual axis current (for 611D only)

$AC_MARKER[<arithmetic expression>] (int)


Marker variable: Can be used in synchronized actions for
creating complex conditions:
There are 8 markers (index 0 – 7).
With reset, the markers are set to 0.
E.g.: WHEN .....DO $AC_MARKER[0]=2
WHEN .....DO $AC_MARKER[0]=3
WHEN $AC_MARKER[0]==3 DO $AC_OVR=50
It is possible to read or write the markers
independently of synchronized actions in the parts
program:
IF $AC_MARKER == 4 GOTOF SPRUNG
$AC_PARAM[<arithmetic expression>] (Real)
Floating point parameter for synchronized actions. Used
for buffering and evaluation of synchronized actions.
There are 50 parameters (index 0––49) available.

$AA_OSCILL_REVERSE_POS1[<axial expression>] (Real)


$AA_OSCILL_REVERSE_POS2[<axial expression>] (Real)
Current reverse positions 1 and 2 for oscillation:
In each case, the current setting data value is read from
$SA_OSCILL_REVERSE_POS1 or
$SA_OSCILL_REVERSE_POS2
Changes to the reversal positions
in the setting data thus become effective when
oscillation is active, i.e. during an active synchronized
action.
Conditions Conditions for motion-synchronous actions are formulated:

Copyright © Siemens AG, 2005.


2/P5/7-52 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Oscillation (P5)
7.5 Main run variables for motion-synchronous actions

Main run variable Relation operator Expression


For details, please refer to:
References: /FB/, S5, “Synchronized Actions”
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/P5/7-53
Oscillation (P5) 06.05
7.5 Main run variables for motion-synchronous actions

Notes

Copyright © Siemens AG, 2005.


2/P5/7-54 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Rotary Axes (R2)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/2-5
2.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/2-5
2.2 Modulo 360 degrees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/2-9
2.3 Programming of rotary axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/2-12
2.3.1 Rotary axis with active modulo conversion (endlessly turning rotary
axis) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/2-12
2.3.2 Rotary axis without modulo conversion . . . . . . . . . . . . . . . . . . . . . . . 2/R2/2-17
2.3.3 Miscellaneous programming features relating to rotary axes . . . . . 2/R2/2-18
2.4 Start-up of rotary axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/2-19
2.5 Special features of rotary axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/2-21
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/4-23
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/4-23
4.1 Axis/spindlespecific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/4-23
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/6-29
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/6-29
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/7-31
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/7-31
7.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/7-31
7.3 Setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/7-31
7.4 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/R2/7-32
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/i
06.05

Notes

Copyright © Siemens AG, 2005.


2/R2/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
1 Brief Description

Brief Description 1
Rotary axes in Rotary axes are used on many modern machine tools. They are required for
machine tools tool and workpiece orientation, auxiliary movements and various other
technological or kinematic purposes.
A typical example of a machine tool requiring the use of rotary axes is the 5-axis
milling machine. Only with the aid of rotary axes can the tip of the tool be
positioned on any point of the workpiece on this type of machine.
Depending on the type of machine, many different demands are placed on a
rotary axis. In order that the control can be adapted to the various types of
machine, the individual rotary axis functions can be activated by means of
machine data or special programming.
Rotary axes are always programmed in degrees. They are generally
characterized by the fact that they assume the same position again after exactly
one rotation (modulo 360°). Depending on the application in question, the
traversing range of the rotary axis can be limited to less than 360° (e.g. on
swivel axes for tool holders) or may be endless (e.g. when tool or workpiece is
rotated).
The behavior and features of rotary axes are, in many aspects, identical to
those of linear axes. The following functional description is limited to a
description of the special features of rotary axes and the differences compared
with linear axes.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/1-3
Rotary Axes (R2) 06.05
1 Brief Description

Notes

Copyright © Siemens AG, 2005.


2/R2/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
2.1 General

Detailed Description 2
2.1 General

Definition of rotary An axis can be declared as a rotary axis by means of machine data
axis IS_ROT_AX. Geometry axes are defined as linear axes. Any attempt to declare
them as rotary axes will be rejected with alarm (4200: Geometry axis must not
be defined as a rotary axis). Only when an axis has been declared as a rotary
axis can it perform or use the functions described on the following pages (e.g.
unlimited traversing range, modulo display of axis position, etc.). Several axes
can be simultaneously declared as rotary axes.

Types of rotary Depending on the particular application, the operating range of a rotary axis can
axis be endless (i.e. endlessly turning in both directions MD: ROT_IS_MODULO = 1)
or restricted by software limit switches (e.g. working area between 0 ... 60°) or
limited to a corresponding number of revolutions (e.g. 1000°).
The following list presents some typical applications of rotary axes:

Typical S 5-axis machining (operating range limited or unlimited)


applications
S Rotary axis for eccentric machining (unlimited operating range)
S Rotary axis for cylindrical or contour grinding (unlimited operating range)
S C axis with TRANSMIT (unlimited operating range)
S Rotary axis on winding machines (unlimited operating range)
S Rotary workpiece axis (C) on hobbing machines (unlimited operating range)
S Round tool magazines and tool turrets (unlimited operating range)
S Rotary axis for peripheral surface transformation (limited operating range)
S Swivel axes for gripping (operating range 360°)
S Rotary axes for swiveling (operating range < 360°; e.g. 60°)
S Milling swivel axis (A) on hobbing machines (operating range e.g. 90°)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/2-5
Rotary Axes (R2) 06.05
2.1 General

Axis addresses Coordinate axes and directions of movement of numerically controlled machine
tools are designated according to DIN. DIN 66025 specifies the following axis
addresses for rotary or swivel axes: A, B and C with X, Y and Z as middle axis;
i.e. A rotates around X, B rotates around Y and C rotates around Z (see
diagram below). The positive direction of a rotary axis corresponds to a
movement to the right looking in the positive axis direction of the corresponding
middle axis.

+Y

+B
–X –Z

+C +A
+Z +X

–Y
Cartesian coordinate system

Fig. 2-1 Identification of axes and directions of movements for rotary axes

Extended addressing (e.g. C2=) or freely configured axis addresses can be


used for additional rotary axes.

Note
MD 20050: AXCONF_GEOAX_ASSIGN_TAB (assignment of geometry axis to
channel axis) must be adapted to suit the corresponding axis.

Copyright © Siemens AG, 2005.


2/R2/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
2.1 General

Units of The following units of measurement apply as standard to data inputs and
measurement outputs for rotary axes:
Table 2-1 Units of measurement for rotary axes

Physical quantity Unit


Angular position Degrees
Programmed angular speed Degrees/minute
MD for angular speed rev/min 1)

MD for angular acceleration rev/sec2 1)

MD for angular jerk limitation rev/sec3 1)

1) These units are interpreted by the control in the axis-specific


machine data as soon as the axis is declared as a rotary
axis.
The user has the option of defining other units
for data input/output using machine data.

References: /FB/, G2, “Velocities, Setpoint/Actual-Value Systems,


Closed-Loop Control”

Operating range The axis operating range can be defined by means of axis-specific machine
and setting data (software limit switches and working area limitations). As soon
as the modulo conversion is activated for the rotary axis (MD:
ROT_IS_MODULO = “1”), the operating range is unlimited and the software limit
switches and working area limitations are inactive.
In software version 6.3 and higher, the software limit switches/working area
limitation can also be activated dynamically by the PLC via interface signal
DB31, ... ; DBX 12.4 (initiated by M/H functions in the part program where
appropriate). The NC checks back via DB31, ... ; DBX 74.4.
See 2.2

Limit switch (–)


350 degrees

Limit switch (+)


330 degrees

Fig. 2-2 Limited operating area of a modulo rotary axis

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/2-7
Rotary Axes (R2) 06.05
2.1 General

Position display The value range for the position display can be set to the modulo 360°
representation that is frequently selected for rotary axes (MD:
DISPLAY_IS_MODULO = “1”).

Feed The programmed feedrate F corresponds to an angular speed [degrees/min] in


the case of rotary axes.
If rotary axes and linear axes traverse along a common path with G94 or G95,
the feed should be interpreted in the unit of measurement of the linear axes
[e.g. mm/min, inch/min].
The tangential speed of the rotary axis refers to the diameter DE (unit diameter
DE=360/p). In the case of unit diameter D=DE, the programmed angular speed
in degrees/min and the tangential velocity in mm/min (or inch/min) are
numerically identical.
The following applies for the tangential speed in general:
F = FW * D / DE F = Tangential speed [mm/min]
FW = Angular speed [degrees/min]
D = Diameter at which F effective [mm]
where DE = 360 / p DE = Unit diameter [mm]
p = Circle constant Pi

Revolutional In JOG mode the behavior of the axis/spindle also depends on the setting of
feedrate setting data JOG_REV_IS_ACTIVE (revolutional feedrate when JOG active).

S If this setting data is active, an axis/spindle is always moved with


revolutional feedrate MD JOG_REV_VELO (revolutional feedrate with JOG)
or MD JOG_REV_VELO_RAPID (revolutional feedrate with JOG with rapid
traverse overlay) depending on the master spindle.

S If the setting data is not active, the behavior of the axis/spindle depends on
the setting data ASSIGN_FEED_PER_REV_SOURCE (revolutional
feedrate for positioning axes/spindles)

S If the setting data is not active, the behavior of a geometry axis on which a
frame with rotation is effective depends on the channel-specific setting data
JOG_FEED_PER_REV_SOURCE. (In the operating mode JOG,
revolutional feedrate for geometry axes on which a frame with rotation is
effective).

Copyright © Siemens AG, 2005.


2/R2/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
2.2 Modulo 360 degrees

2.2 Modulo 360 degrees

Term Rotary axes are frequently programmed in the 360° representation mode. The
Modulo 360° axis must be defined as a rotary axis in order to use the modulo feature.
With respect to a rotary axis, the term “Modulo” refers to imaging of the axis
position internally in the control within the range from 0° to 359.999°. With path
settings > 360° (e.g. for incremental dimension programming using G91) the
axis position is imaged in the value range between 0° to 360° through a
conversion process in the control. The imaging process is applied in JOG and
AUTOMATIC mode. The service display is an exception.
In the diagram below, the absolute position of the rotary axis in the positive
direction of rotation is represented as a spiral. An arrow marks the actual
absolute position (example: Point C‘ = 420°). By sliding the arrow back around
the circle (position 0° of the spiral and circle are identical), it is possible to
determine a modulo position within the 360° range corresponding to every
absolute position. In the example below, absolute position point C’=420° is
mapped onto point C = 60° through the modulo conversion process.

1080°

720°

360°
Direction of rotation
0° C+

0° C’
420°
C
60°
90° 90° 450° 810°
270°
990° 630° 270°

180°

180°

540°

900°

Fig. 2-3 Modulo 360° imaging

Machine data Using machine data it is possible to define the programming and positioning
settings settings (MD: ROT_IS_MODULO) and the position display (MD:
DISPLAY_IS_MODULO) in modulo 360° for each individual rotary axis to suit
the requirements of individual machine tools.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/2-9
Rotary Axes (R2) 06.05
2.2 Modulo 360 degrees

Axis is modulo MD: ROT_IS_MODULO = “1”:


Activation of this machine data allows the special rotary axis action
implemented in the system to be utilized (see Section 2.3.1), defining The
positioning action of the rotary axis for programming (G90, AC, ACP, ACN or
DC). A modulo 360° imaging process is executed internally in the control after
the current zero offsets have been taken into account. The calculated
destination position is subsequently approached within a single revolution.
The software limit switches and the working area limitations are ineffective and
the operating range is unlimited (endlessly turning rotary axis).
Please see Section 2.3 on the programming of rotary axes or MD:
ROT_IS_MODULO.

Modulo position MD: DISPLAY_IS_MODULO = 1:


display A “modulo 360°”
(1 rotation) position display is frequently required for rotary axes;
i.e. when the axis is rotating in the positive direction, the display is periodically
reset from° to 0.000° in the control
system; with a negative direction of rotation, the axis positions are
also displayed in the 0°...359.999° range.
MD: DISPLAY_IS_MODULO = 0:
In contrast to the modulo 360° display method, absolute positions are
indicated, e.g. in the positive direction after 1 rotation +360° after 2
rotations +720° etc. In this case, the display range
is limited by the control in accordance with the linear axes.

Note
The modulo 360° display method should always be selected for a modulo axis
(ROT_IS_MODULO = “1”).

Starting position With SW 6.3 and higher, a starting position for the modulo range other than 0
for the modulo can be defined in MD 30340: MODULO_RANGE_START. It is therefore
rotary axis possible, for example, to define a modulo range of –180° to +180° by entering
–180 in MD 30340: MODULO_START_RANGE.
The default setting of 0 (degrees) defines a modulo range of 0–360°.

Copyright © Siemens AG, 2005.


2/R2/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
2.2 Modulo 360 degrees

360 degree

180 degree

0 degree

–180 degree

Fig. 2-4 Starting position –180° shifts the modulo range to –180° to + 180°

Application By matching the settings in MD 30503: INDEX_AX_OFFSET and MD 30340:


MODULO_RANGE_START, the indexing positions of modulo indexing axes can
be implemented analogously to the modulo range.

References: /FB/, T1, Indexing Axes

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/2-11
Rotary Axes (R2) 06.05
2.3 Programming of rotary axes

2.3 Programming of rotary axes

Note
For general information on programming, please refer to:
References: /PAG/Programming Guide Fundamentals

General The machine data ROT_IS_MODULO (modulo conversion for rotary axis)
defines whether the rotary axis behaves in the same way as a linear axis during
programming and positioning or whether the special features of the rotary axis
are incorporated. These features and the differences (mainly with respect to
absolute dimension programming) are explained on the following pages.

2.3.1 Rotary axis with active modulo conversion (endlessly turning


rotary axis)

Activate modulo ⇒ MD: ROT_IS_MODULO = “1”


conversion Recommendation: It is also advisable to set the position display to modulo 360º
(MD: DISPLAY_IS_MODULO = “1”).

Absolute Example of positioning axis : POS[axis name] = ACP(value)


dimension
– The value identifies the destination position of the rotary axis in a range
programming from 0 to 359.999. With SW version 6.2 and earlier, alarm 16830
(AC, ACP, ACN, “Incorrect modulo position programmed” is output for values with a
G90) negative sign ory 360.
With SW version 6.3 and higher, negative values are also possible if the
range has been moved with MD 30340: MODULO_RANGE_START and
MD 30330: MODULO_RANGE.
– ACP (positive) and ACN (negative) define the traversing direction of the
rotary axis unambiguously (irrespective of actual position).
– When programming exclusively with AC or with G90, the traversing
direction depends on the actual position of the rotary axis. If the
destination position is larger than the actual position, the axis traverses
in the positive direction, otherwise it traverses in the negative direction.
With SW 6.3 and higher, the positioning behavior can be configured in
MD 30455: MISC_FUNCTION_MASK Bit 2.
Bit 2 = 0: Modulo axis positioned per default by AC with G90
Bit 2 = 1: Modulo axis positioned per default by DC with G90
(shortest path)
– Use of ACP and ACN: With asymmetrical workpieces, it must be
possible to define the traversing direction to prevent collisions during
rotation.

Copyright © Siemens AG, 2005.


2/R2/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
2.3 Programming of rotary axes

Example:
(see diagram below): Start position of C is 0

Programming Effect
1 POS[C] = ACP(100) Rotary axis C traverses in the positive
rotational direction to position 100
2 POS[C] = ACN(300) C traverses in the negative rotational direction to
position 300
3 POS[C] = ACP(240) C traverses in the positive rotational direction to
position 240
4 POS[C] = AC (0) C traverses in the negative rotational direction to
position 0


Negative Positive
direction direction

300° 3
2

1
270° 90°

100°

240°

Rotary axis C 180°

Fig. 2-5 Examples of absolute dimension programming for modulo axes

Absolute POS[axis name] = DC(value)


dimension
– The value identifies the destination position of the rotary axis in a range
programming via from 0 to 359.999. Alarm 16830 “Incorrect modulo position
the shortest route programmed” is output for values with a negative sign or ≥ 360.
(DC)
– With DC (Direct Control), the rotary axis approaches the programmed
absolute position via the shortest route within one revolution (traversing
movement max. ±180).
– The control calculates the direction of rotation and the traversing
distance according to the actual position. If the distance to be traversed
is the same in both directions (180), the positive direction receives
preference.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/2-13
Rotary Axes (R2) 06.05
2.3 Programming of rotary axes

– Example application of DC: the rotary table is required to approach the


changeover position in the shortest time (and therefore via the shortest
path).
– If DC is programmed with a linear axis, alarm 16800 “DC traversing
instruction cannot be used” is output.
Example:
(see diagram below): Start position of C is 0
Programming Effect
1 POS[C] = DC(100) C axis traverses along the shortest path to
position 100
2 POS[C] = DC(300) C axis traverses along the shortest path to
position 300
3 POS[C] = DC(240) C axis traverses along the shortest path to
position 240
4 POS[C] = DC (60) C axis traverses along the shortest path to
position 60. Since the distance in this
case is equal to 180 in both directions,
the positive direction is the preferred direction of
rotation.


Negative Positive
direction direction

4
300° 60°
2
1
270° 90°
3
100°

240°

Rotary axis C 180°

Fig. 2-6 Examples of DC programming

Block search After a block search with calculation, the accumulated search position of the
response modulo conversion can be interrogated via system variable $AC_RETPOINT.
This system variable returns the position converted to modulo.
Supplementary conditions for ASUB after block search with calculation:
In this instance as well as with the cross-channel block search tool SERUPRO,
the modulo conversion simulated in the block search must be performed in the
part program.

Copyright © Siemens AG, 2005.


2/R2/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
2.3 Programming of rotary axes

Modulo rotary axis As of SW Version 6.3, the working area limitation / SW limit switches can be
with/without switched on and off dynamically for a modulo rotary axis by setting the interface
working area signal DB31, ... ; DBX 12.4 via the PLC (analogous to rotary axes). The NC
limitation feeds back the current status of the travel limitation via DB31, ... ; DBX 74.4.
The monitoring function is activated if interface signal DB31, ... ; DBX 12.4 was
set by the PLC. The M/H command which causes the PLC to set the interface
signal must be followed by a STOPRE to ensure through synchronization that
only the blocks after the switchover are monitored.
Supplementary conditions:
The software limit switch monitor can be activated or deactivated via the PLC
interface for modulo axes only.
Travel range monitoring for modulo axes can be implemented only if the axis is
referenced and one limiting pair is active.
This always applies in the case of software limit switches, since these are
activated/deactivated in pairs. To guarantee correct monitoring of the working
area limitations, both limitations must have been activated either via G26/G25
or SD 43400: WORKAREA_PLUS_ENABLE and SD 43410:
WORKAREA_MINUS_ENABLE.

Example of a travel Two workholders must be machined consecutively on a modulo rotary axis. The
limitation first workholder has a number of clamped workpieces. It is then replaced by a
switchover workholder with a built-on axis whose working area must be monitored to
prevent damage to supply lines.
Configuration:
$MA_IS_ROT_AX[AX4] = 1
$MA_ROT_IS_MODULO[AX4] = 1
$MA_POS_LIMIT_PLUS[AX4] = 340
$MA_POS_LIMIT_MINUS[AX4] = 350

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/2-15
Rotary Axes (R2) 06.05
2.3 Programming of rotary axes

Extract of parts program:


M123 ;Mechanically insert workholder with four clampings
;Deactivate software limit switches in the B axis from
;the PLC DB35, DBX12.4=0
STOPRE ;Initiate a preprocessing stop
S1000 M3
G4 F2
G1 X0 Y300 Z500 B0 F5000
CYCLE84(500,400,0,350,0,1,4,10,,0,500,1000) ; drilling cycle
Z500
B90
CYCLE84(500,400,0,350,0,1,4,10,,0,500,1000) ; drilling cycle
Z500
B180
CYCLE84(500,400,0,350,0,1,4,10,,0,500,1000) ; drilling cycle
Z500
B270
CYCLE84(500,400,0,350,0,1,4,10,,0,500,1000) ; drilling cycle
Z500
G0 Z540 B0
M124 ;Mechanically insert workholder with built-on axis
;Activate software limit switches in the B axis from
;the PLC DB35, DBX12.4=1
STOPRE ;Initiate a preprocessing stop
B270

Incremental Example of positioning axis: POS[axis name] = IC(+/–value)


dimension
– The value identifies the traversing distance of the rotary axis. The value
programming (IC, can be negative as well as w +/–360.
G91)
– The leading sign of the value defines the traversing direction of the
rotary axis.
– Sample application: Milling a spiral groove across several revolutions
Example:
POS[C] = IC(720) C axis traverses incrementally in positive
direction through 720 (2 revolutions)
POS[C] = IC(–180) C axis traverses incrementally in
negative direction through 180

Endless As soon as the modulo function is active, no limit is placed on the traversing
traversing range range (software limit switches are not active). The rotary axis can now be
programmed to traverse continuously.
Example:
LOOP:
POS[C] = IC(720)
GOTOB LOOP

Copyright © Siemens AG, 2005.


2/R2/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
2.3 Programming of rotary axes

2.3.2 Rotary axis without modulo conversion

Deactivate modulo ⇒ MD: Set ROT_IS_MODULO = “0”


conversion

Absolute Example of positioning axis: POS[axis name] = AC (+/– value)


dimension
– The value and its leading sign provide a unique identification of the
programming destination position of the rotary axis. The value can also be w +/–360.
(AC, G90) The position value is limited by the software limit switch positions.
– The traversing direction is ascertained by the control according to the
leading sign of the actual position of the rotary axis.
– If ACP or ACN are programmed, alarm 16810 “ACP traversing
instruction cannot be used” or alarm 16820 “ACN traversing instruction
cannot be used” is output.
– Sample application: Linear movements are incorporated in the rotary
axis (cam gear); certain end positions may therefore not be overtraveled.
Example:
Programming Effect
POS[C] = AC (–100) Rotary axis C approaches position –100;
the traversing direction depends
on the starting position
POS[C] = AC (1500) Rotary axis C traverses to the position at 1500;

Absolute POS[axis name] = DC(value)


dimension
Even if the rotary axis is not defined as a modulo axis, the axis can still be
programming positioned with DC (direct control). The response is the same as on a modulo
across the axis.
shortest path (DC)
– The value identifies the destination position of the rotary axis in a range
from 0 to 359.999 (modulo 360. Alarm 16830 “Incorrect modulo
position programmed” is output for values with a negative sign or w
360.
– With DC (Direct Control), the rotary axis approaches the programmed
absolute position via the shortest route within one revolution (traversing
movement max. ±180).
– The control calculates the direction of rotation and the traversing
distance according to the actual position (in relation to modulo 360). If
the distance to be traversed is the same in both directions (180), the
positive direction receives preference.
– Example application of DC: the rotary table is required to approach the
changeover position in the shortest time (and therefore via the shortest
route).
– If DC is programmed with a linear axis, alarm 16800 “DC traversing
instruction cannot be used” is output.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/2-17
Rotary Axes (R2) 06.05
2.3 Programming of rotary axes

Example:
Programming Effect
POS[C] = AC (7200) Rotary axis C traverses to position 7200;
the traversing direction depends
on the starting position
POS[C] = DC (300) Rotary axis C traverses via the shortest route
to “modulo” position 300. C therefore
traverses through 60 in the negative
direction and stops at the absolute
position 7140.
POS[C] = AC (7000) Rotary axis C traverses to the absolute position
7000; here, C traverses through 140 in the
negative direction of rotation

Note: In this example, it is advisable to activate the modulo 360º display (MD:
DISPLAY_IS_MODULO = “1”).

Incremental Example of positioning axis: POS[axis name] = IC(+/–value)


dimension
When programming with incremental dimensions, the rotary axis traverses
programming (IC, across the same path as with the modulo axis. In this case, however, the
G91) traversing range is limited by the software limit switches.
– The value identifies the traversing distance of the rotary axis. The value
can be negative as well as w +/–360.
– The leading sign of the value defines the direction of travel of the
rotary axis.
For example, see Subsection 2.3.2.

Limited traversing The traversing range is limited as with linear axes. The range limits are defined
range by the plus and minus software limit switches.

2.3.3 Miscellaneous programming features relating to rotary axes

Offsets TRANS (absolute) and ATRANS (additive) can be applied to rotary axes.

Scalings SCALE or ASCALE are not suitable for rotary axes since the control system
always bases its modulo calculation on a 360º full circle.

Preset actual value PRESETON is possible


memory

Indexing axes References: /FB/, T1, “Indexing Axes”

Copyright © Siemens AG, 2005.


2/R2/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
2.4 Start-up of rotary axes

2.4 Start-up of rotary axes

Procedure The procedure for starting up rotary axes is identical to that for linear axes with
a small number of exceptions. It should be noted that the units of the
axis-specific machine and setting data on the control are interpreted as follows
as soon as the axis has been defined as a rotary axis (MD: IS_ROT_AX = 1):
Position in “degrees”
Velocity in “rev/minute”
Acceleration in “rev/seconds2”
Jerk limitation in “rev/seconds3”

Special MD The special machine data of the rotary axis described in Chapter 4 must also be
entered depending on the application.

S MD: ROT_IS_MODULO Modulo conversion for positioning and


and programming

S MD: DISPLAY_IS_MODULO Modulo conversion for position display

S MD: INT_INCR_PER_DEG Precision of angular position calculation


The following overview lists the possible combinations of these machine data
for a rotary axis.

Table 2-2 Possibilities for combining machine data of rotary axes

MD: MD: MD: Application Remarks


IS_ROT_AX ROT_IS_MODULO DISPLAY_IS permitted
“rotary axis” “Modulo conversion _MODULO
for rotary axis” “Modulo actual
value display”
0 0 0 Yes The axis is a linear axis (default)
1 0 0 Yes The axis is a rotary axis; modulo conver-
sion is not used for positioning, i.e. the
software limit switches are active; the po-
sition display is absolute
1 0 1 Yes The axis is a rotary axis; modulo conver-
sion is not used for positioning, i.e. the
software limit switches are active; the po-
sition display is modulo;
Application: e.g. for axes with an operat-
ing range of +/–1000°
1 1 1 Yes The axis is a rotary axis; positioning is
performed with modulo conversion, i.e.
the software limit switches are inactive,
the operating range is unlimited; the posi-
tion display is modulo (setting most fre-
quently used for rotary axes). With SW
6.3 and later, the axis can be utilized with
or without working area limitation. See
2.3.1.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/2-19
Rotary Axes (R2) 06.05
2.4 Start-up of rotary axes

Table 2-2 Possibilities for combining machine data of rotary axes

MD: MD: MD: Application Remarks


IS_ROT_AX ROT_IS_MODULO DISPLAY_IS permitted
“rotary axis” “Modulo conversion _MODULO
for rotary axis” “Modulo actual
value display”
1 1 0 Yes The axis is a rotary axis; positioning is
performed with modulo conversion, i.e.
the software limit switches are inactive,
the operating range is unlimited; the posi-
tion display is absolute.
With SW 6.3 and later, the axis can be
utilized with or without working area limi-
tation. See 2.3.1.
0 0 or 1 0 or 1 Not Axis is not a rotary axis; the other MD are
recom- not therefore evaluated.
mended

JOG velocity for With SD: JOG_ROT_AX_SET_VELO (JOG velocity for rotary axes), a jog
rotary axes velocity that is valid for all rotary axes can be set.
If a value of 0 is entered in the setting data, then axial MD: JOG_VELO (JOG
axis velocity).
References: /FB/, H1, “Manual and Handwheel Travel”

Copyright © Siemens AG, 2005.


2/R2/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
2.5 Special features of rotary axes

2.5 Special features of rotary axes

Software limit The software limit switches and working area limitations are operative and are
switches required for swivel axes with a restricted operating range. For endlessly turning
rotary axes with (MD: ROT_IS_MODULO=1), however, the software limit
switches and working area limitations are set inactive.
With SW 6.3 and later, a modulo rotary axis can be utilized with or without
working area limitation. See 2.3.1. Dynamic switchover by the PLC.
References: /FB/, A3, “Axis Monitoring”

Mirroring of rotary Mirroring can be implemented for rotary axes with programming commands
axes MIRROR(C) and AMIRROR(C).

Reference point References: /FB/, R1, “Reference Point Approach”


approach

Spindles as For notes concerning the use of spindles and rotary axes (C axis operation),
rotary axes please refer to:
References: /FB/, S1, “Spindles”
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/2-21
Rotary Axes (R2) 06.05
2.5 Special features of rotary axes

Notes

Copyright © Siemens AG, 2005.


2/R2/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
4.1 Axis/spindlespecific machine data

Supplementary Conditions 3
There are no supplementary conditions stipulated for this Description of
Functions.
J

Data Descriptions (MD, SD) 4


4.1 Axis/spindlespecific machine data

30300 IS_ROT_AX
MD number Rotary axis
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: BOOLEAN Applies from SW: 1.1
Meaning: 1: Axis: The axis is defined as a “rotary axis”.
D The special functions of the rotary axis are active or can be activated by means of
additional machine data according to the type of machine required (see
below.
D The unit of measurement is degrees.
D The units of the axis-specific machine and setting data are interpreted as follows
by the control system when the default setting is applied:
D Position in degrees
D Velocity in rev/minute
D Acceleration in rev/s2
D Jerk limitation in rev/s3
Spindle:
The machine data must always be set to “1” for a spindle,
otherwise alarm 4210 “rotary axis declaration missing” is output.
0: The axis is defined as a “linear axis”.
Special cases, errors, ... For axis: alarm 4200 if the axis is already defined as a geometry axis.
... For spindle: Alarm 4210
Related to .... The following machine data are effective only after activation of MD:
IS_ROT_AX = “1”:
D MD: ROT_IS_MODULO “Modulo conversion for rotary axis”
D MD: DISPLAY_IS_MODULO “Position display is modulo”
D MD: INT_INCR_PER_DEG “Calculation precision for angle positions
References Tab. 2.2 Combination options for machine data

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/4-23
Rotary Axes (R2) 06.05
4.1 Axis/spindlespecific machine data

30310 ROT_IS_MODULO
MD number Modulo conversion for rotary axis
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: BOOLEAN Applies from SW: 1.1
Meaning: 1: A modulo conversion is performed on the setpoints for the rotary axis.
The software limit switches and the working area limitations are inoperative; the
traversing range is therefore unlimited in both directions.
With SW 6.3 and later, activation of the working area limitations/software limit
switches by the PLC can be enabled/disabled dynamically.
MD: IS_ROT_AX must be set to “1”

For further information, see Section 2.2

0: No modulo conversion
MD irrelevant for ... ... MD: IS_ROT_AX = “0” (linear axes)
Tab. 2.2 Combination options for machine data
Application example(s) Continuously rotating axes (e.g. for eccentric rotation, grinding, winding)
Related to .... MD: DISPLAY_IS_MODULO “Position display is modulo 360°”
MD: IS_ROT_AX = 1 “Rotary axis”
MD: POS_LIMIT_MINUS “Software limit switch minus”
MD: POS_LIMIT_PLUS “Software limit switch plus”
SD: WORKAREA_LIMIT_MINUS “Working area limitation minus”
SD: WORKAREA_LIMIT_PLUS “Working area limitation plus”

30320 DISPLAY_IS_MODULO
MD number Position display is modulo 360°
Default setting: 1 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: BOOLEAN Applies from SW: 1.1
Meaning: 1: Position display “Modulo 360º” is active:
The position display of the rotary axis or spindle (for basic or machine coordinate
system) is defined as “Modulo 360°”. In the positive direction of rotation, therefore, the
control resets the position display internally
to 0.000 degrees following each cycle of 359.999
degrees. The display range is always positive and always
between 0° and 359.999°.
With SW 6.3 and higher, the modulo range can be shifted in MD 30340:
MODULO_RANGE_START.
Its limits are then defined by the settings in MD 30340: MODULO_RANGE_START
and MD 30330: MODULO_RANGE.
0: Absolute position display is active:
In contrast to to the modulo 360° method, the absolute position display
shows, e.g. in a positive direction, +360° after 1 rotation, +720° after 2 rotations, etc.
In this case, the display range is limited in line with the linear axes.
MD irrelevant for ... ... Linear axes MD: IS_ROT_AX = “0”
Application example(s) D With continuously rotating axes (MD: ROT_IS_MODULO = “1”), it is
also advisable to activate the position display with modulo 360°.
D The position display for spindles must always be activated with modulo 360°.
Related to .... MD: IS_ROT_AX = 1 “axis is rotary axis”
MD 30340: MODULO_RANGE_START
MD 30330: MODULO_RANGE

Copyright © Siemens AG, 2005.


2/R2/4-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
4.1 Axis/spindlespecific machine data

30330 MODULO_RANGE
MD number Size of modulo range
Default setting: 360.0 Minimum input limit: 1.0 Maximum input limit: 360000000.0
Changes effective after RESET Protection level: 2 / 7 Unit: Degrees
Data type: DOUBLE Applies from SW: SW 4.1
Meaning: The MD defines the size of the modulo range. Position inputs are accepted and displayed
within this range. Meaningful modulo range values are
n * 360 degrees. Other settings are also possible in principle, but it must be ensured that
there is a meaningful relation between the positions in the NC and the mechanical setup
(ambiguity).
Velocity specifications are not affected by the settings in this MD.
Related to .... MD 30340: MODULO_RANGE_START (SW 6.3)

30340 MODULO_RANGE_START
MD number Modulo range starting position
Default setting: 0 Minimum input limit: Minus Maximum input limit: Plus
Changes effective after RESET Protection level: 2 / 7 Unit: Degrees
Data type: DOUBLE Applies as of SW 6.3
Meaning: A starting position can be specified for the module range
$MA_MODULO_RANGE of the rotary axes.

Example:
Modulo range between 0 and 360 degrees (default)
MODULO_RANGE = 360
MODULO_RANGE_START = 0

Modulo range between –180 degrees and +180 degrees


MODULO_RANGE = 360
MODULO_RANGE_START = –180

These two machine data are also used to calculate the reference point position for rotary
axes with rotary, distance-coded encoders. The reference point position is adapted to the
travel limits of the modulo range when
MD 30455: MISC_FUNCTION_MASK Bit 1 = 1.
Related to .... MD 30330: MODULO_RANGE
MD 30455: MISC_FUNCTION_MASK

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/4-25
Rotary Axes (R2) 06.05
4.1 Axis/spindlespecific machine data

30455 MISC_FUNCTION_MASK
MD number Axis functions
Default setting: 0 Minimum input limit: 0x00 Maximum input limit: 0x10
Changes effective after RESET Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 6.3 (Bit 4 expanded)
SW version 6.4 and higher (bit 3
expanded)
Meaning: This machine data specifies the following axis functions in more detail:

Bit 0 Modulo rotary axis programming Modulo rotary axis/spindle


Bit 1 Reference point definition Rotary, distance-coded encoders
Bit 2 Modulo rotary axis positioning Modulo rotary axis/spindle
Bit 3 Setpoint or actual value axis pos. With spindle / axis dis. (SW 6.4 and high.)
Bit 4 Feed enable with synchronous spindle Following spindle (SW 6.3 and higher)

For rotary axes with:


MD 30310: ROT_IS_MODULO = 0 which utilize rotary, distance-coded encoders,
MD 34210: ENC_REFP_MODE = 3, the reference point position is calculated as a funct. of
MD 30330: MODULO_RANGE and MD 30340: MODULO_RANGE_START.
This is automatically adapted to the travel limits of the modulo range.

For rotary axes with:


MD 30310: ROT_IS_MODULO = 1, the bit has no meaning since the reference
point position is always adapted within the modulo range.

Bit
1 | 0 Effect:
________________________________________________________________________
Modulo rotary axis/spindle:
0 | 0 Programmed positions must be within the modulo range. An alarm is otherwise
generated.

0 | 1 No alarm is generated if positions are programmed outside the


modulo range. The modulo conversion is performed internally.
Example:
B–5 has the same meaning as B355,
POS[A] = 730 is identical to POS[A] = 10 and
SPOS = –360 behaves like SPOS = 0 (modulo range 360 degrees)

Reference point definition:


1 | 0 Definition of reference point position of rotary, distance-coded encoders
analogous (1:1) to mechanical absolute position.

1 | 1 Definition of reference point position of rotary, distance-coded encoders


within the configured modulo range.

Modulo rotary axis/spindle:


2 | 0 Modulo rotary axis positioned per default by AC with G90

2 | 1 Modulo rotary axis positioned per default by DC with G90 (shortest pos.)

3 | 0 With spindle / axis disable, $VA_IM, $VA_IM1, $VA_IM2 returns the setpoint.
3 | 1 With spindle / axis disable, $VA_IM, $VA_IM1, $VA_IM2 returns the actual value.
Feed enable with synchronous spindle
4 | 0 Synchronous spindle coupling, following spindle:
Cancelation of feed enable brakes the coupled grouping.

4 | 1 Following spindle:
Feed enable refers only to the interpolation component of the
overlaid movement (SPOS),..) and does not affect the coupling.
Related to .... MD 30310: ROT_IS_MODULO
MD 30330: MODULO_RANGE
MD 30440: MODULO_RANGE_START

Copyright © Siemens AG, 2005.


2/R2/4-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
4.1 Axis/spindlespecific machine data

34220 ENC_ABS_TURNS_MODULO[n]
MD number Absolute encoder range for rotary encoders: 0 ... max. no. of encoders –1
Default setting: 4096, 4096 Minimum input limit: 1 Maximum input limit: 4096
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies as of SW 2.2
Meaning: The absolute position of a rotary axis is reduced to the following range after an absolute
encoder is switched on:
i.e. a MODULO conversion is performed if the read actual position is greater than the posi-
tion allowed by the setting in MD ENC_ABS_TURNS_MOTOR.

0 degrees <= position <= n*360 degrees (where n = ENC_ABS_TURNS_MODULO)


Note: In SW 2.2 the position is reduced to this range when the control/encoder
is switched on. With SW 3.6 and higher, half this value represents the maximum
permissible traversing path when the control or encoder is switched off.
Special cases, errors, ... Only powers of two are allowed as values ( 1, 2, 4, 8, 16, ..., 4096).
... If other values are entered, they are “rounded off” without< a message in SW version 4.1
and earlier. In SW 4.1 and higher, rounding off is shown in the machine data; the change is
displayed in alarm 26025.

The MD is only relevant for rotary encoders (with linear and rotary axes).

Important recommendation:
The default value “1 encoder revolution” was changed to “4096” from software version 3.6.
The new value provides a more robust setting for the most commonly used encoder types.
When using an encoder with less multi-turn information, or when using single-turn encod-
ers, the value must be decreased accordingly. In any case, for multi-turn
absolute encoders the value should be changed to the maximum quantity supported by the
encoder so that the unambiguous traversing range that is increased as a result can be
utilized (Note: This value also influences the permissible position offset when the encoder
or power supply is switched off).
Related to .... Drive MD 1021, ENC_ABS_TURNS_MOTOR,
Drive MD 1031, ENC_ABS_TURNS_DIRECT

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/4-27
Rotary Axes (R2) 06.05
4.1 Axis/spindlespecific machine data

Notes

Copyright © Siemens AG, 2005.


2/R2/4-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
6 Example

Signal Descriptions 5
DB 31, ... ; Traversing range limitation for modulo rotary axes
DBX12.4
Data Block Signal(s) from PLC to NCK axis/spindle
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 6.3
Signal state 1 or signal Activate travel limitation for modulo rotary axis
transition 0 –––> 1 (software limit switches, working area limitations)
Signal state 0 or signal Deactivate travel limitation for modulo rotary axis
transition 1 –––> 0
Signal irrelevant for ...... Linear axes / rotary axes without modulo functionality
Application example(s) Built-on rotary axis with monitoring

DB 31, ... ; Monitoring status with modulo rotary axes


DBX74.4
Data Block Signal(s) from NCK to PLC axis/spindle
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 6.3
Signal state 1 or signal Travel limitation for modulo rotary axis active
transition 0 –––> 1 (software limit switches, working area limitations)
Signal state 0 or signal Travel limitation for modulo rotary axis not active
transition 1 –––> 0
Signal irrelevant for ...... Linear axes / rotary axes without modulo functionality
Application example(s) Built-on rotary axis with monitoring

Example 6
Fork head, Rotary axes are frequently used on 5-axis milling machines to swivel the tool
inclined axis head axis or rotate the workpiece. These machines can position the tip of a tool on
any point of the workpiece and take up any position on the tool axis. Various
milling heads are required according to the application. Fig. 6–1 illustrates a fork
head and an inclined axis head as example arrangements for rotary axes.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/6-29
Rotary Axes (R2) 06.05
6 Example

Fork head Inclined axis head

ÍÍ
C

ÍÍ Í ÍÍ
B
B

ÍÍ
105° 105°
C
45°

Fig. 6-1 Fork head, inclined axis head

Copyright © Siemens AG, 2005.


2/R2/6-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Rotary Axes (R2)
7.3 Setting data

Data Fields, Lists 7


7.1 Interface signals

DB number Bit, byte Name Refer-


ence
Axis-specific
31, ... 12.4 Traversing range limitation for modulo axis
31, ... 74.4 Status of SW limit switch monitoring for modulo axis

7.2 Machine data

Number Identifier Name Refer-


ence
General ($MN_ ... )
10210 INT_INCR_PER_DEG Calculation resolution for angular positions G2
Axis/channelspecific ($MA_ ... )
30320 DISPLAY_IS_MODULO Actual-value display modulo
30300 IS_ROT_AX Axis is rotary axis
36100 POS_LIMIT_MINUS Software limit switch minus A3
36110 POS_LIMIT_PLUS Software limit switch plus A3
30310 ROT_IS_MODULO Modulo conversion for rotary axis
30330 MODULO_RANGE Size of the modulo range
30340 MODULO_RANGE_START Starting position for the modulo range
30455 MISC_FUNCTION_MASK Axis functions

7.3 Setting data

Number Identifier Name Refer-


ence
General ($SN_ ...)
41130 JOG_ROT_AX_SET_VELO JOG speed for rotary axes H1

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/R2/7-31
Rotary Axes (R2) 06.05
7.4 Interrupts

Number Identifier Name Refer-


ence
Axisspecific ($SA_ ... )
43430 WORKAREA_LIMIT_MINUS Working area limitation minus A3
43420 WORKAREA_LIMIT_PLUS Working area limitation plus A3

7.4 Interrupts
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, Diagnostics Guide
or in the Online help.
J

Copyright © Siemens AG, 2005.


2/R2/7-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Synchronous Spindles (S3)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-5
2.1 General functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-5
2.1.1 Synchronous mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-5
2.1.2 Selecting synchronous mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-10
2.1.3 Deselecting synchronous mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-11
2.1.4 Prerequisites for synchronous mode . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-13
2.1.5 Controlling synchronous spindle coupling via PLC . . . . . . . . . . . . . . 2/S3/2-15
2.1.6 Monitoring of synchronous operation . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-17
2.2 Programming of synchronous spindle couplings . . . . . . . . . . . . . . . . 2/S3/2-19
2.2.1 Preparatory programming instructions . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-19
2.2.2 Programming instructions for activating and deactivating
the coupling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-23
2.2.3 Axial system variables for synchronous spindle . . . . . . . . . . . . . . . . 2/S3/2-24
2.2.4 Automatic selection and deselection of position control . . . . . . . . . . 2/S3/2-25
2.3 Configuration of a synchronous spindle pair via machine data . . . . 2/S3/2-26
2.3.1 Configuration of the behavior with NC start . . . . . . . . . . . . . . . . . . . . 2/S3/2-27
2.3.2 Configuration of the behavior with Reset . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-27
2.4 Special features of synchronous operation . . . . . . . . . . . . . . . . . . . . 2/S3/2-28
2.4.1 Special features of synchronous operation in general . . . . . . . . . . . 2/S3/2-28
2.4.2 Influence on synchronous operation via PLC interface . . . . . . . . . . 2/S3/2-30
2.4.3 Differential speed between leading and following spindles
(SW version 7.1 and later) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-33
2.4.4 Restore synchronism of following spindle (SW 7.1 and later) . . . . . 2/S3/2-37
2.4.5 Special points regarding start-up of a synchronous
spindle coupling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/2-39
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/4-43
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/4-43
4.1 Description of machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/4-43
4.1.1 Channelspecific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/4-43
4.1.2 Axis-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/4-46
4.2 Description of setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/4-48

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/i
06.05

5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/5-49


5.1 Axis/spindle-specific signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/5-49
5.1.1 Signals from axis/spindle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/5-49
6 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/6-53
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/7-55
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/7-55
7.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/7-56
7.3 Setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/7-57
7.4 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/7-57
7.5 System variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S3/7-57
J

Copyright © Siemens AG, 2005.


2/S3/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
1 Brief Description

Brief Description 1
Synchronous The function: “Synchronous spindle” can be used to couple two spindles with
spindle synchronous position or speed. One spindle is defined as leading spindle (LS),
the second spindle is then the following spindle (FS).

S Speed synchronism: nFS = kÜ * nLS, with kÜ = "1, "2, "3, ...

S Position synchronism: öFS = öLS + Dö, with 0o x Dö t=360o

Possible Reverse side machining


applications An application option is, for example, the reverse side machining in a double-
spindle lathe with on-the-fly transfer of the workpiece from the position-synchro-
nous LS to the FS (or vice versa), without having to decelerate down to stand-
still.
Multi-edge machining (polygonal turning)
The function: “Synchronous spindle” provides the basis for multi-edge machin-
ing (polygonal turning) through specification of an integer gear ratio kÜ between
LS and FS.

Number of FS The number FS that can be operated synchronously to an LS is only restricted


by the performance capability of the NC used. In principle, any number of FS
can be coupled simultaneously to an LS in arbitrary channels of the NC.
Two pairs of synchronous spindles can be active simultaneously in each NC
channel.

Definition The assignment of FS to LS pair of synchronous spindles can be parameterized


channel-specifically via machine data or flexibly defined via part program com-
mands.

Selection/ Part program commands are used to select/deselect the synchronous operation
deselection of a pair of synchronous spindles.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/1-3
Synchronous Spindles (S3) 06.05
1 Brief Description

Chucks

ÉÉ
ÉÉ
n1 n2
Spindle 1 Spindle 2

ÉÉ
ÉÉ n1 n2
Spindle 1
Spindle 2

É
n1
É n2
Spindle 1 Spindle 2

Fig. 1-1 Synchronous operation: On-the-fly workpiece transfer from spindle 1 to


spindle 2

n2 n1

Spindle 1 Spindle 2

Fig. 1-2 Synchronous operation: Polygonal turning

Copyright © Siemens AG, 2005.


2/S3/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.1 General functionality

Detailed Description 2
2.1 General functionality

2.1.1 Synchronous mode

Explanations <Axial expression>: can be:


– Axis identifier
– Spindle identifier
<Axis identifier>: C (if spindle 1 has the identifier “C” in axis
operation.)
<Spindle identifier>: Sn, SPI(n) mit n = Spindle number
<Spindle number>: 1, 2, ... according to the spindle number
defined in
MD 35000: SPIND_ASSIGN_TO_MACHAX

(FS, LS, Offset): LS = Leading Spindle, FS = Following


Spindle,
Offset = read programmable offset of
following spindle using system variables
$P_COUP_OFFS[Sn] Programmed position offset of
synchronous spindle

Synchronous Synchronous operation involves a following spindle (FS) and a leading spindle
spindle pair (LS), referred to as the synchronous spindle pair. The following spindle imi-
tates the movements of the leading spindle when a coupling is active (synchro-
nous operation) in accordance with the defined functional interrelationship.

Synchronous Synchronous mode (also referred to as “Synchronous spindle operation”) is


mode another spindle operating mode. Before synchronous mode is activated, the
following (slave) spindle must have been switched to position control. Synchro-
nous operation is activated for the following spindle when the coupling is acti-
vated. As soon as the coupling is deactivated, the following spindle switches to
back to open-loop control mode.
As soon as synchronous mode is active for the following spindle,
IS “Synchronous mode” (DB31, ... DBX84.4) = 1 is signaled to the PLC.

Number of It is possible to couple several following spindles to one leading spindle. The
synchronous number of following spindles on this leading spindle depends on the respective
spindles versions of the appropriate software versions.
S In SW 4 and lower, two synchronous spindle couplings can be operated in
each NC channel.
S In SW 5 and higher, any number of following spindles in any channels of
one NCU can be coupled to this leading spindle.
S In SW 6 and higher, any number of following spindles in any channels of
one NCU or a different NCU can be coupled to this leading spindle.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-5
Synchronous Spindles (S3) 06.05
2.1 General functionality

Options in The following functions are available for synchronous mode:


synchronous
mode
S Following and leading spindle rotate at the same speed
(nFS = nLS ; speed ratio kÜ = 1)
S LS and FS rotating in the same direction or in opposite directions
(can be defined by specifying positive or negative speed ratio kÜ)
S Following and leading spindles rotate at different speeds
(nFS = kÜ @ nLS ; speed ratio kÜ 0 1)
Application: Polygonal turning
S Adjustable angular position between FS and LS (öFS = öLS + Dö )
The spindles rotate at synchronous speed with a defined angular offset be-
tween the LS and FS (position-synchronous coupling).
Application: Shaped workpieces
S Activation of synchronous operation between LS and FS can take place
when the spindles are in motion or at standstill.
S The full functionality of the open-loop and position control modes is available
for the leading spindle.
S When synchronous mode is not active, the FS and LS can be operated in all
other spindle modes.
S The speed ratio can also be altered when the spindles are in motion in ac-
tive synchronous mode.

S With synchronous spindle coupling switched on, the offset of the FS to the
LS (overlaid movement) can be altered.

Coupling options Synchronous spindle couplings can be defined as both


S a fixed configuration in channel-specific machine data
(referred to below as “fixed coupling configuration”) and
S a freely defined coupling via language instructions (COUP...) in the parts
program
(referred to below as “user-defined coupling”)
The following variants are possible:
1. A fixed configuration for a coupling can be programmed via machine data. In
addition, a second coupling can be freely defined via the parts program.
2. No coupling is configured via machine data. In this case, the couplings can
be user-defined and parameterized via the parts program.

SW 6 and higher The special following spindle interpolator allows a number of following
spindles from different channels or another NCU to be coupled as defined by
the user to a single leading spindle. The following spindle interpolator is

S activated by COUPON and


S deactivated by COUPOF
and is always located in the channel in which the COUPON statement has been
programmed for the following spindle. If the following spindle to be activated
was previously programmed in another channel, COUPON initiates an axis re-
placement and fetches the spindle into its own channel.
Certain synchronous spindle functions can be controlled from the PLC by
means of coupling-specific axial VDI interface signals. The latter act exclusively
on the slave spindles and do not affect the leading spindle. For further informa-
tion, please see Subsection 2.1.5.

Copyright © Siemens AG, 2005.


2/S3/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.1 General functionality

Definition of Before synchronous operation is activated, the spindles to be coupled (FS, LS)
synchronous must be defined.
spindles This can be done in two ways depending on the application in question:
1. Fixed coupling configuration:
Machine axes which are to function as the following spindle (FS) and lead-
ing spindle (LS) are defined in channel-specific MD 21300: COU-
PLE_AXIS_1[n].
The machine axes programmed as the LS and FS for this coupling configu-
ration cannot be altered by the NC parts program.
If necessary, the coupling parameters can be modified with the NC parts
program.
2. User-defined coupling:
Couplings can be created and altered in the NC parts program with lan-
guage instruction “COUPDEF(FS, LS...)”. If a new coupling relationship is to
be defined, it may be necessary to delete an existing user-defined coupling
beforehand (with language instruction COUPDEL(FS,LS)).
The axis identifiers (Sn, SPI(n)) for the following and leading spindles must
be programmed with FS and LS for every language instruction COUP..., thus
ensuring that the synchronous spindle coupling is unambiguously defined.
The valid spindle number must be assigned to a machine axis
in axis-specific MD 35000: SPIND_ASSIGN_TO_MACHAX.
IS “Following spindle active” (DB31, ... DBX99.1) and IS “Leading spindle ac-
tive” (DB31, ... DBX99.0) indicate to the PLC for each machine axis whether the
axis is active as a leading or following spindle.

Speed ratio The speed ratio is programmed with separate numerical values for numerator
and denominator (speed ratio parameters). It is therefore possible to specify the
speed ratio very exactly, even with rational numbers.

Ü speed ratio parameter numerator Ü


In general: k Ü + + numerator
Ü speed ratio parameter denominator Üdenominator
The value range of the speed ratio parameter (Ünumerator, Üdenominator) is virtu-
ally unlimited internally in the control.
The speed ratio parameters for the coupling configured via machine data can
be defined in channel-specific SD 42300: COUPLE_RATIO_1[n]. In addition,
the ratio can be altered with language instruction COUPDEF(FS, LS, Ünumerator,
Üdenominator ,...). The values entered in the setting data are not overwritten in
this case (default settings).
The ratio for the coupling defined via the NC parts program can only be input
with language instruction COUPDEF (...).
The new ratio parameters take effect as soon as the COUPDEF instruction
has been processed.
For further programming instructions for synchronous spindle couplings, please
see Section 2.2.
References: /PGA/, “Programming Guide Advanced”, Section 13.3

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-7
Synchronous Spindles (S3) 06.05
2.1 General functionality

Coupling The following characteristics can be defined for every synchronous spindle cou-
properties pling:

S Block change behavior


The condition to be fulfilled for a block change can be defined on activation
of synchronous operation or on alteration of the ratio or the speed defined
angular offset when the coupling is active:
– Block change takes place immediately
– Block change in response to “Fine synchronism”
– Block change in response to “Coarse synchronism”
– Block change in response to IPOSTOP (e.g. after setpoint-based syn-
chronism)
– Check of the synchronism conditions at an arbitrary moment with
WAITC.

S Type of coupling between FS and LS


The position setpoint or the actual position value of the leading spindle can
be used as the reference value for the following spindle. The following cou-
pling types can therefore be selected:
1. Setpoint coupling (DV)
Application in position-controlled mode. The control dynamic response of
both spindles should coincide as far as possible. The setpoint coupling
should be used preferably.
2. Actual-value coupling (AV)
Application if position control of the LS is not possible or with great devi-
ation of the control characteristics between FS and LS. The setpoints for
the FS are derived from the actual values of the LS. The quality of syn-
chronism is worse with a varying spindle speed than with the setpoint
coupling.
3. Speed coupling (VV)
Internally, the speed coupling is a setpoint coupling. The requirements
for FS and LS are lower. Position control and measuring systems are not
required for FS and LS.
The position offset between FS and LS is undefined.
The coupling characteristics are selected via machine data for fixed coupling
configurations (see Section 2.3) and via language instruction COUPDEF for
user-defined couplings (see Subsection 2.2.1).
In addition, coupling characteristics Type of coupling and Block change res-
ponse can be altered for fixed coupling configurations by means of language
instruction COUPDEF.

Change protection Channel-specific MD 21340: COUPLE_IS_WRITE_PROT_1 is set to define


for coupling whether or not the configured coupling parameters Speed ratio, Type of cou-
characteristics pling and Block change response can be altered by the NC parts program:
0: Coupling parameters can be altered by the NC parts program via instruction
COUPDEF

1: Coupling parameters cannot be altered by the NC parts program.


Attempts to make changes will be rejected with an alarm message.

Copyright © Siemens AG, 2005.


2/S3/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.1 General functionality

Overlaid In synchronous operation, the synchronous spindle copies the movement of the
movement leading spindle in accordance with the programmed speed ratio.
At the same time, the synchronous spindle can also be traversed with overlay
so that the LS and FS can operate at a specific angular position in relation to
one another.
The overlaid traversing movement of the FS can be initiated in various ways:
1. Programmable position offset of FS in AUTOMATIC and MDA:
The position reference between LS and FS can be altered in active synchro-
nous operation with language instructions COUPON and SPOS
(see Subsection 2.1.2).
2. Manual position offset of FS:

S In JOG operating mode (continuous JOG or incremental JOG):


Overlay of FS by handwheel or plus or minus traversing key in active
synchronous operation.

S In AUTOMATIC and MDA operating modes


Overlay of FS by handwheel via DRF offset
As soon as the FS executes the overlaid traversing movement, IS “Overlaid
movement” (DB31, ... DBX98.4) is set to the 1 signal.
The overlaid movement is executed optimally in terms of time at the maximum
possible FS speed. With an offset change by means of SPOS, the positioning
velocity can be specified with FA[Sn] and manipulated by an override (can be
selected through IS “Feedrate override valid for spindle” DB31, ... DBX17.0).

Note
For further information about specifying a positioning velocity using FA[Sn],
please see

References: /FB/, S1, “Spindles”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-9
Synchronous Spindles (S3) 06.05
2.1 General functionality

2.1.2 Selecting synchronous mode

Activation of Language instruction COUPON activates the coupling between the pro-
coupling grammed spindles with the last valid parameters and thus also activates syn-
chronous mode. This coupling may be a fixed configuration or user-defined.
The leading spindle and/or following spindle may be at standstill or in motion at
the instant of activation.
Certain conditions must be fulfilled before synchronous operation can be acti-
vated (see Subsection 2.1.4).

Activation Two different methods can be selected to activate synchronous mode:


methods
1. Fastest possible activation of coupling with any angular reference between
leading and following spindles.
COUPON(FS, LS)
2. Activation of coupling with a defined angular offset POSFS between lead-
ing and following spindles. With this method, the angular offset must be pro-
grammed on selection.
COUPON(FS, LS, POSFS)

Note
If the LS and/or FS is in axis mode before switching on the synchronous
coupling, the axis mode is left and spindle mode is activated with use of the
spindle identifier with SW 3.2 and higher.
If the spindle is switched on with use of the axis identifier, no changeover takes
place.

Block change Before synchronous operation is selected, it must be determined under what
behavior conditions the block change must occur when synchronous mode is activated
(see Subsection 2.2.1).

Determining It is possible to determine the current coupling status for the specified axis/
current coupling spindle in the NC parts program by means of axial system variable
status $AA_COUP_ACT[<axial expression >] (see Subsection 2.2.3 Axis system vari-
ables for synchronous spindles). As soon as the synchronous spindle coupling
is active for the following spindle, bit 2 must be “1” when read.

Change defined Language instructions COUPON and SPOS allow the defined angular offset to
angular offset be changed while synchronous mode is active. The following spindle is posi-
tioned as an overlaid movement at the angular offset programmed with POSFS.
During this period IS: “Overlaid movement” (DB31, ... DBX98.4) is set.

Copyright © Siemens AG, 2005.


2/S3/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.1 General functionality

Angular offset The defined angular offset POSFS must be specified as an absolute position
POSFS referred to the zero degrees position of the leading spindle in a positive direction
of rotation.
The “Zero degrees position” of a position-controlled spindle is calculated from
the zero mark signal or Bero signal of the measuring system and the offsets
stored in axis-specific machine data (MD: REFP_SET_POS,
REFP_MOVE_DIST, REFP_MOVE_DIST_CORR)
Range of POSFS: 0 ... 359.999 degrees.
References: /FB/, R1, “Reference Point Approach”

Read current Using axial system variables, it is possible to read the current position offset
angular offset between the FS and LS in the NC parts program. The following two position
offsets exist:
a) Current position offset of setpoint between FS and LS
$AA_COUP_OFFS [<axis identifier for FS>]
b) Current position offset of actual value between FS and LS
$VA_COUP_OFFS [<axis identifier for FS>]
(For more information about <axis identifier>, see Subsection 2.1.1)

Activation after Synchronous operation can also be activated for LS or FS which are not refer-
POWER ON enced/ synchronized (IS: “Referenced/synchronized 1 or 2” DB31, ... DBX60.4
or DBX60.5 = 0). In this case, a warning message is displayed.
Example: LS and FS are already coupled in a friction lock via a workpiece after
Power ON.

2.1.3 Deselecting synchronous mode

Deactivation of Language instruction COUPOF cancels synchronous mode between the pro-
coupling grammed spindles. The coupling concerned can be a fixed configuration or
user-defined. The leading and following spindles can be at standstill or in mo-
tion when synchronous operation is deactivated.
On switching off the synchronous mode, the following spindle is put into control
mode. The originally programmed S-word is no longer valid for the FS, the follo-
wing spindle can be operated like any other normal spindle.
When the coupling is deactivated, a block preprocessing stop (STOPRE) is
generally initiated internally in the control.

Deactivation If synchronous mode is deselected while the spindles are in motion, the follo-
while spindles wing spindle continues to rotate at the current speed (nFS). The current speed
are moving can be read with system variable $AA_S in the NC parts program.
The spindle can then be stopped from the parts program with M05, SPOS or
SPOSA or from the PLC with the appropriate interface signal.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-11
Synchronous Spindles (S3) 06.05
2.1 General functionality

Deselection Three different methods can be used to deselect synchronous mode:


methods
1. Fastest possible deactivation of coupling.
The block change is enabled immediately.
COUPOF(FS, LS)
2. The coupling is not deselected until the following spindle has crossed the
programmed deactivation position POSFS.
The block change is then enabled.
COUPOF(FS, LS, POSFS)
3. The coupling is not deselected until the following spindle and the leading
spindle have crossed the programmed deactivation positions POSFS and
POSLS.
The block change is then enabled.
COUPOF(FS, LS, POSFS , POSLS)

Note
If the LS and/or FS is in axis mode before switching off the synchronous
coupling, the axis mode is left with use of the spindle identifier and the speed
control mode is activated with SW 3.2 and higher.
If the spindle is switched off with use of the axis identifier, no changeover takes
place. Before shutdown, the LS must be in the setpoint-side standstill.

POSFS, POSLS Deactivation positions POSFS and POSLS match the actual positions of FS and
LS respectively referred to the defined reference point value (see Subsection
2.1.2).
Range of POSFS, POSLS: 0 ... 359.999 degrees.
References: /FB/, R1, “Reference Point Approach”

COUPOFS and With SW version 6.4 and later, another deactivation method for a synchronous
stopping the spindle coupling, i.e. by stopping the following spindle, has been added:
following spindle 1. Fastest possible deactivation of coupling and
(SW version 6.4 stop without position specification.
and later) The block change is then enabled.
COUPOFS(FS, LS)
2. A coupling is not deselected until the following spindle has crossed the
deactivation position POS referred to the machine coordinate system. The
block change is then enabled.
COUPOFS(FS, LS, POSFS)
Supplementary condition:
COUPOFS(FS, LS) and COUPOFS(FS, LS, POSFS) have no meaning if a cou-
pling was active.

Copyright © Siemens AG, 2005.


2/S3/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.1 General functionality

2.1.4 Prerequisites for synchronous mode

Conditions on The following conditions must be fulfilled before the synchronous spindle cou-
selection of pling is activated or else alarm messages will be generated.
synchronous
S The synchronous spindle coupling must have been defined beforehand (ei-
mode ther a fixed configuration via machine data or according to user definition via
parts program).

S The spindles to be coupled must be defined in the NC channel in which the


coupling is activated.
Channel-spec. MD 20070: AXCONF_MACHAX_USED
axis-spec. MD 35000: SPIND_ASSIGN_TO_MACHAX

S The following spindle must be assigned to the NC channel in which the cou-
pling is activated.
Default setting with axis-specific
MD30550: AXCONF_ASSIGN_MASTER_CHAN

S LS and FS must be equipped with at least one position measuring system


for position sensing.
S If the FS is in speed control mode before synchronous mode is activated (IS
“Position controller active” DB31, ... DBX61.5 = 0), it must be switched to
position control mode with the SPCON command.

Note
When position control is activated, the maximum setpoint speed of the LS is
automatically limited to 90% (control reserve) of the maximum speed. The
limitation is signaled via IS “Setpoint speed limited” (DB31, ... DBX83.1).

After deactivation of synchronous operation, position control mode can be


deselected again with language instruction SPCOF.
References: /FB/, S1, “Spindles”
S To ensure more accurate synchronization, the LS should be in position con-
trol mode (language instruction SPCON) before the coupling is activated,
thus allowing a setpoint coupling to be established between the LS and FS.
Actual-value coupling is always possible if there is a measuring system for
the LS.
S Before selecting the synchronous mode, the gear stage necessary for FS
and LS must be selected. In synchronous mode, gear stage changeover
and therefore oscillation mode are not possible for FS and LS. Upon re-
quest, an alarm message is generated.
S If FS and/or LS are in the axis mode and if they are actuated with a spindle
identifier, spindle mode is activated. The VDI interface signals for the spindle
concerned are modified, the active parameter block is changed over and
feedforward control is activated.
If the spindle is activated with use of the axis identifier, no changeover takes
place.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-13
Synchronous Spindles (S3) 06.05
2.1 General functionality

Cross-channel
coupling (SW4) S The LS can be programmed either via a parts program, PLC (FC18) or, in
SW 4 and higher, by means of synchronized actions.

Note
If the LS is swapped between channels with activated speed coupling, and the
sequence of the channels is changed, the coupling must be deactivated.
Example:
Channel 1:
Channel 2:
Channel 3: FS in channel 3. COUPON active
Channel 4:
Channel 5:

Easy exchange possible for the LS between:


Channel 1 <––> Channel 2,
Channel 1 <––> Channel 3,
Channel 2 <––> Channel 3,
Channel 4 <––> Channel 5

Exchange possibilities for LS, where the coupling must be deactivated:


from Channel 1 <––> Channel 4,
from Channel 2 <––> Channel 4,
from Channel 3 <––> Channel 4,
from Channel 1 <––> Channel 5,
from Channel 2 <––> Channel 5,
from Channel 3 <––> Channel 5

SW 5 and higher The LS can belong to any channel.


S The LS can be exchanged between channels by means of “Axis exchange”.
S When several following spindles are coupled to one leading spindle, the
dynamic response of the coupling is determined by the weakest response
as a function of the coupling factor. The acceleration rate and maximum
speed are reduced for the leading spindle to such a degree that none of the
coupled leading spindles can be overloaded.

Copyright © Siemens AG, 2005.


2/S3/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.1 General functionality

2.1.5 Controlling synchronous spindle coupling via PLC

Synchronous Using the coupling-specific, axial VDI interface signals, it is possible to control
spindle extensions synchronization motions for the following spindle from the PLC. This offers the
option of utilizing the PLC to disable, suppress, restore or modify a synchroniza-
tion motion for the following spindle specified by offset programming.
These signals have no effect on the leading spindle. In SW 6.3 and earlier, the
following coupling-specific VDI signal (PLC→NCK) is available:
IS “Disable synchronization” (DB31, ... DBX31.5)

“Disable The synchronization motion for the following spindle is disabled form the PLC
synchronization” with the axial signal IS “Disable synchronization” (DB31, ... DBX31.5).
When the main run advances to a block containing part program statement
COUPON (FS, LS, offset), IS “Disable synchronization”
(DB31, ... DBX31.5) is evaluated for the following spindle. With
S IS “Disable synchronization” (DB31, ... DBX31.5) = 0,
the position offset is applied as before.
S IS “Disable synchronization” (DB31, ... DBX31.5) = 1,
no additional following spindle motion takes place.
The coupling responds analogously to a programmed COUPON (FS, LS)
instruction without offset.

Synchronized Whenever a state of synchronism has been reached, the two VDI signals
state reached
IS “Coarse synchronism” (DB31, ... DBX98.1) and
IS “Fine synchronism” (DB31, ..., DBX98.0)
are set. Further block changes after COUPON are not prevented by suppres-
sion of synchronization.

Example Block change behavior after COUPON


; Set IS “Disable synchronization”
; (DB31, ... DBX31.5) = 1 for S2

N51 SPOS=10 SPOS[2]=10 ; Positions correspond to an offset of 0 degrees


N52 COUPDEF(S2,S1,1,1,“FINE”,“DV”) ;
N53 COUPON(S2,S1,77) ; Actual offset of 0 degrees remains valid,
; no movement by following spindle, VDI signals
, IS “Coarse synchronism” (DB31, ...DBX98.1)
, and IS “Fine synchronism” (DB31, ... DBX98.0)
; are set and the block change is enabled.

N54 M0 ;
N57 COUPOF(S2,S1) ;
N99 M30 ;

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-15
Synchronous Spindles (S3) 06.05
2.1 General functionality

Reset and The reset of the IS “Disable synchronization” (DB31, ... DBX31.5) has no effect
recovery on the following spindle offset. If the offset motion of the following spindle has
been suppressed by the VDI interface signal, then the offset is not automatically
applied when the VDI signal is reset.
Synchronization can be recovered by repeating
part program statement COUPON (FS, LS, offset) with
IS “Disable synchronization” (DB31, ... DBX31.5) = 0
The parts program statement can be written, for example, in an ASUB.

Read offset The following system variables can be used to read three different position off-
set values of the following spindle from the parts program.

Description NCK Variables

Programmed position offset of synchronous spindle $P_COUP_OFFS[Sn]

Position offset of synchronous spindle, setpoint end $AA_COUP_OFFS[Sn]

Position offset of synchronous spindle, actual value $VA_COUP_OFFS[Sn]


end

Special points to Offset movements of the following spindle generated with


be noted S SPOS, POS,
S Synchronized actions,
S FC18,
S JOG
cannot be controlled by IS “Disable synchronization” (DB31, ... DBX31.5).
These functions are controlled by VDI signal IS “Feedrate stop/Spindle stop”
(DB31, ... DBX4.3).

“Feedrate stop/ Bit 4 in MD 30455: MISC_FUNCTION_MASK is configured to define the res-


spindle stop” ponse of axial IS “Feedrate stop/Spindle stop” (DB31, ... DBX4.3) for the fol-
lowing spindle.
Bit 4 is 0 Compatibility method
Canceling the feedrate enable brakes the coupled grouping.
Bit 4 is 1
Feedrate enable refers only to the interpolation component (SPOS),..) and does
not affect the coupling.

Note
For further information about MD 30455: MISC_FUNCTION_MASK see:

References: /FB/, R2, “Rotary Axes”

Copyright © Siemens AG, 2005.


2/S3/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.1 General functionality

2.1.6 Monitoring of synchronous operation

Fine/coarse In addition to conventional spindle monitoring operations, synchronous opera-


synchronism tion between the FS and LS is also monitored in synchronous mode.
In this case, IS: “Fine synchronism” (DB31, ... DBX98.0) or “Coarse synchro-
nism” (DB31, ... DBX98.1) is transmitted to the PLC to indicate whether
the current position (AV, DV) or actual speed (VV) of the following spindle is
within the specified tolerance window.
When the coupling is switched on, the signals “Coarse synchronism” and “Fine
synchronism” are updated when setpoint synchronism is reached.
The size of the tolerance windows is set with MD of the FS.
Reaching of the synchronism is influenced by the following factors:

S AV, DV : Position deviation between FS and LS

S VV: Speed difference between FS and LS

nFS
nFS act Tolerance band
“Fine
synchronism”
nFSSet

Tolerance
band
“Coarse
synchronism”

1 Signal
“Fine
0 synchronism”

1 Signal
“Coarse
0 synchronism”

COUPON Setpoint-side WAITC Replacement


synchronism with the next
Example of parts program block
.. M55
M3 S500 M2=5
G4 F10
COUPON(S2, S1) nFS act = Following spindle actual speed
Z10
nFS Set = Following spindle reference speed
WAITC(S2, “Fine”)
M55 nFS = Following spindle speed
..

Fig. 2-1 Synchronism monitoring with COUPON and synchronism test marker WAITC

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-17
Synchronous Spindles (S3) 06.05
2.1 General functionality

Threshold values The relevant position or velocity tolerance range for the following spindle in rela-
tion to the leading spindle must be specified in degrees of rev/min.

S Threshold value for “Coarse synchronism”


axis-spec. MD 37200: AV, DV: COUPLE_POS_TOL_COARSE
MD 37220: VV: COUPLE_VELO_TOL_COARSE

S Threshold value for “Fine synchronism”


axis-spec. MD 37210: AV, DV: COUPLE_POS_TOL_FINE
MD 37230: VV: COUPLE_VELO_TOL_FINE

Speed/acceleration In synchronous mode, the speed and acceleration limit values of the leading
limits spindle are adjusted internally in the control in such a way that the following
spindle can imitate its movement, allowing for the currently selected gear stage
and effective speed ratio, without violating its own limit values.
For example, the LS is automatically decelerated to prevent the FS from ex-
ceeding the maximum speed in order to maintain synchronism between the
spindles.

Copyright © Siemens AG, 2005.


2/S3/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.2 Programming of synchronous spindle couplings

2.2 Programming of synchronous spindle couplings

Table 2-1 Overview

Programmed coupling Configured coupling(s) Remarks


Definition of a coupling: Modification of configured data: Setting the coupling
COUPDEF() COUPDEF() parameters
Activating a coupling: Activating
COUPON() and deactivating
Deactivating a coupling:
COUPOF()
by stopping the following spindle:
from SW 6.4 COUPOFS()
Deleting the coupling data: Reactivating the configured Arrangement,
data: restore
COUPDEL() COUPRES()

References: /PGA/, Programming Guide Advanced “Synchronous Spindles”

2.2.1 Preparatory programming instructions

User-defined Up to two synchronous spindle couplings can be active simultaneously in each


coupling (SW 4 channel (SW 4 and lower). Provided no fixed coupling configuration has been
and lower) programmed, both couplings can be freely defined by the NC parts program.
These couplings must also be parameterized by the NC parts program. Default
values are used for parameters which are not programmed.
A new synchronous spindle coupling is defined if an FS/LS coupling relationship
which has no fixed configuration is programmed in language instruction COUP-
DEF. This coupling can be invalidated again with language instruction COUP-
DEL if, for example, a further synchronous spindle coupling between other
spindles is needed. These programming options, i.e. re-definition and deletion
of couplings, allow more than two coupling relationships to be successively
created in the NC channel (SW 4 and lower).

SW 5 and higher Any number of couplings can be programmed. Furthermore, one coupling can
also be configured via machine data as in earlier SW versions.

Permanent The coupling characteristics and speed ratio for a permanently configured syn-
coupling chronous spindle coupling can be altered by the NC part program provided that
configuration they are not write-protected. The machine axes for LS and FS cannot be
changed.

Define new Language instruction “COUPDEF” can be used to create new synchronous
couplings spindle couplings (user-defined) and to modify the parameters for existing cou-
plings.
When the coupling parameters are fully specified, the following applies:
COUPDEF
(FS, LS, Ünumerator , Üdenominator , block change response, coupling type)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-19
Synchronous Spindles (S3) 06.05
2.2 Programming of synchronous spindle couplings

The spindle coupling is unambiguously defined with FS and LS FS and LS must


be programmed in every COUP... statement otherwise alarm messages are
generated.
The other coupling parameters must only be programmed when they need to be
changed. The last valid status remains applicable for non-specified parameters.
The individual coupling parameters are explained below:

S FS, LS: Spindle identifiers for following and leading spindles


E.g.: S1, SPI(1), S2, SPI(2)
The applicable spindle number must be assigned to a machine axis in axis-
specific
MD: SPIND_ASSIGN_TO_MACHAX.

S Ünumerator , Üdenominator : Speed ratio parameters for numerator and de-


nominator
The speed ratio is input in the form of numeric values for numerator and
denominator (see Subsection 2.1.1).
The numerator must always be programmed. If no denominator is specified,
then its value is always assumed to be “1,0”.

S Block change response


This parameter allows the condition for block change on selection of syn-
chronous operation to be defined:
NOC ⇒ Block change is immediately enabled
FINE ⇒ Block change in response to “Fine synchronism”
COARSE ⇒ Block change in response to “Coarse synchronism”
IPOSTOP ⇒ Block change in response to IPOSTOP (e.g. after
setpoint-based synchronism)
The block change response is entered as a character string (i.e. with quota-
tion marks).
The block change response can be specified simply by writing the letters in
bold print. The remaining letters can be entered to improve legibility of the
parts program but they are not otherwise significant.
If no block change response is specified, then the currently selected res-
ponse continues to apply.
With the programmable synchronism test marks WAITC, the replacement
with new blocks is delayed until the parameterized synchronism is reached.

S Type of coupling
DV (Desired Values) ⇒ Setpoint coupling between FS and LS
AV (Actual Values) ⇒ Actual-value coupling between FS and LS
VV (Velocity Values) ⇒ Speed coupling between FS and LS
If no coupling type is specified, then the currently selected type continues to
apply.

Note
The coupling type may only be changed when synchronous operation is
deactivated!

Copyright © Siemens AG, 2005.


2/S3/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.2 Programming of synchronous spindle couplings

Examples COUPDEF (SPI(2), SPI(1), 1.0 , 1.0, “FINE”, “DV”)


COUPDEF (S2, S1, 1.0 , 4.0)
COUPDEF (S2, SPI(1), 1.0)

Default settings The following default settings apply to user-defined couplings:

S ÜNumerator = 1.0
S ÜDenominator = 1.0
S Block change response = IPOSTOP (block change enabled with setpoint
synchronism)

S Type of coupling = DV (setpoint coupling)

Delete couplings Language instruction “COUPDEL” is used to delete user-defined couplings.


COUPDEL (FS, LS)

SW 4 and lower If a new synchronous spindle coupling relationship needs to be defined and all
available, freely configurable couplings (1 or 2) are already configured, then one
of the couplings will have to be deleted first.
SW 5 and later
There is no limit to the number of programmable couplings. The COUPDEL
command can be used, but is not absolutely necessary.
SW 6.3 and earlier
An alarm message is generated if COUPDEL is programmed for an active cou-
pling. Synchronous operation remains active. It must be deselected beforehand
with COUPOF.

Note
A fixed coupling configuration cannot be deleted with COUPDEL in SW 6.3 and
earlier!

In SW 6.4 and later, an active coupling deactivates this coupling, thereby


deleting the coupling data. Alarm 16797 generated in SW 6.3 and earlier is now
therefore irrelevant.
The following spindle rotates at the last valid speed. This corresponds to the
behavior associated with COUPOF(FS, LS).

Activate original Language instruction “COUPRES” can be used to re-activate the configured
coupling coupling parameters.
parameters COUPRES (FS, LS)
The parameters programmed with COUPDEF (including speed ratio) are then
overwritten.
Language instruction “COUPRES”
– activates the parameters stored in the machine and setting data
(fixed coupling configuration) and
– activates the default settings (user-defined coupling).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-21
Synchronous Spindles (S3) 06.05
2.2 Programming of synchronous spindle couplings

Programmable With SW 3.2 and higher, it is possible to mark a point in the NC program using
block change “WAITC”. The system waits at this point for fulfillment of the synchronism condi-
tions for the specified FS and delays changes to new blocks until the specified
state of synchronism is reached (see Fig. 2-1).
WAITC (FS)
Advantage: The time between switching on the synchronous coupling and
reaching synchronism can be technologically useful.

Note
Basically, it is always possible to write WAITC. If the spindle indicated is not
active as FS, the instruction for this spindle is without effect.

If no synchronism condition is indicated, the check is always performed for the


synchronism condition programmed/configured on the respective coupling, at
least for the setpoint synchronism.
Examples: WAITC(S2),
:
WAITC(S2, “Fine”),
:
WAITC(S2, ,S4, “Fine”)

Copyright © Siemens AG, 2005.


2/S3/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.2 Programming of synchronous spindle couplings

2.2.2 Programming instructions for activating and deactivating


the coupling

Activate Language instruction COUPON is used to activate couplings and synchronous


synchronous mode.
mode Two methods by which synchronous operation can be activated are available:
1. COUPON(FS, LS)
Fastest possible activation of synchronous operation with any angular ref-
erence between the leading and following spindles.
2. COUPON(FS, LS, POSFS)
Activation of synchronous operation with a defined angular offset POSFS
between the leading and following spindles. This offset is referred to the
zero degrees position of the leading spindle in a positive direction of rota-
tion. The block change is enabled according to the defined setting. Range
of POSFS: 0 ... 359.999 degrees.
By programming COUPON(FS, LS, POSFS) or SPOS when synchronous opera-
tion is already active, the angular offset between LS and FS can be changed.

Deactivate Three different methods can be selected to deactivate synchronous mode:


synchronous
1. COUPOF(FS, LS)
mode
Fastest possible deactivation of synchronous operation. The block change
is enabled immediately.
2. COUPOF(FS, LS, POSFS)
Deselection of synchronous operation after deactivation position POSFS
has been crossed. Block change is not enabled until this position has been
crossed.
3. COUPOF(FS, LS, POSFS, POSLS)
Deselection of synchronous operation after the two deactivation positions
POSFS and POSLS have been crossed. Block change is not enabled until
both programmed positions have been crossed.
Range of POSFS, POSLS: 0 ... 359.999 degrees.
If continuous path control (G64) is programmed, a non-modal stop is generated
internally in the control.
Examples: COUPDEF (S2, S1, 1.0 , 1.0, “FINE”, “DV”)
:
COUPON (S2, S1, 150)
:
COUPOF (S2, S1, 0)
:
COUPDEL (S2, S1)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-23
Synchronous Spindles (S3) 06.05
2.2 Programming of synchronous spindle couplings

2.2.3 Axial system variables for synchronous spindle

Determining The current coupling status for the following spindle can be read in the NC part
current coupling program with the following axial system variable:
status $AA_COUP_ACT[<axial expression>]
(For more information about <axial expression>, see Subsection 2.1.1)
Example: $AA_COUP_ACT[S2]
The value read has the following significance for the following spindle:
Byte = 0: No coupling active
Bit 2 = 1: Synchronous spindle coupling active

Read current The current position offset between the FS and LS can be read in the NC part
angular offset program by means of the following axial system variables:
a) Setpoint-based position offset between FS and LS:
$AA_COUP_OFFS[<axial expression>]
b) Actual-value-based position offset between FS and LS:
$VA_COUP_OFFS[<axial expression>]
Example: $AA_COUP_OFFS[S2]
If an angular offset is programmed with COUPON, this coincides with the value
read after reading the setpoint synchronism.

Read programmed With SW version 6.3 and later, the last programmed position offset between the
angular offset FS and LS can be read in the NC part program by means of the following axial
system variables:
$P_COUP_OFFS[<axial expression>]

Note
After cancellation of the servo enable signal when synchronous operation and
follow-up mode are active, the position offset applied when the controller is
enabled again is different to the originally programmed value. In this case, the
altered position offset can be read and corrected in the NC parts program if
necessary.

Copyright © Siemens AG, 2005.


2/S3/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.2 Programming of synchronous spindle couplings

2.2.4 Automatic selection and deselection of position control

Behavior in speed With type of coupling DV, program instructions COUPON and COUPOF enable
control mode and disable the position control for the leading spindle as and when required. If
several following spindles are coupled to the leading spindle, then the

S first DV coupling activates position control for the leading spindle and the
S last DV coupling deactivates position control for the leading spindle
in speed control mode if SPCON is not programmed.
The leading spindle need not be configured in the same channel as the follo-
wing spindle.

Automatic Depending on the coupling type, the effect of COUPON on the position control
selection with for synchronous operation is as follows:
COUPON
Coupling type: DV AV VV
Following spindle FS Position control ON Position control ON No action
Leading spindle LS Position control ON 1 No action No action

1The position control is activated by a COUPON instruction if at least one follo-


wing spindle has been coupled to it with coupling type DV.

Automatic Depending on the coupling type, the effect of COUPOF on the position control is
deselection with as follows:
COUPOF and
COUPOFS
Coupling type: DV AV VV
Following spindle FS Position control OFF 2 Position control OFF 2 No action 2
Leading spindle LS Position control OFF 3 No action No action

2COUPOF and COUPOFS without specified position


Speed control mode is activated for the following spindle. Positioning mode is
activated for COUPFS with stop position.
The position control is not disabled if the following spindle has been operating
in position-controlled spindle mode with SPCON or
COUPFS with position has been programmed.
3 The position control is disabled by COUPOF if no other spindle is coupled to
the leading spindle with coupling type DV.
Position control mode remains active if the leading spindle is operating
in positioning or axis mode or has been operating in
position-controlled spindle mode with SPCON.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-25
Synchronous Spindles (S3) 06.05
2.3 Configuration of a synchronous spindle pair via machine data

2.3 Configuration of a synchronous spindle pair via machine


data

Coupling One synchronous spindle coupling per NC channel can be configured perma-
parameters nently via channel-specific machine data.
It is then necessary to define the machine axes (spindles) which are to be
coupled and what characteristics this coupling should have.
The following parameters can be configured as fixed settings for the synchro-
nous spindle coupling:

S Synchronous spindle pair (channel-specific MD 21300: COU-


PLE_AXIS_1[n])
This machine data defines the two machine axes which are to form the syn-
chronous spindle pair (following spindle (n=0), leading spindle (n=1)).
A 0 as the setting for the axis number means that no coupling is configured
via the machine data. The machine data for the coupling characteristics are
then irrelevant.
The machine axis numbers for the LS and FS can not be changed by the
NC parts program for a configured coupling configuration.

S Speed ratio
This is entered via setting data using two ratio parameters (channel-spec.
SD 42300: COUPLE_RATIO_1[n]) in the form of a numerator and a denomi-
nator. The quotient is generated internally in the control.

Ü speed ratio parameter nominator $SC_COUPLE_RATIO[0]


kÜ + +
Ü speed ratio parameter denominator $SC_COUPLE_RATIO[1]

Provided it is not write-protected, the speed ratio can be changed by the NC


parts program with language instruction COUPDEF.

S Block change behavior


(channel-specific MD 21320: COUPLE_BLOCK_CHANGE_CTRL_1)
One of the following options can be selected as the condition for a block
change:
0: Block changes immediately
1: Block change in response to “Fine synchronism”
2: Block change in response to “Coarse synchronism”
3: Block change in response to IPOSTOP (i.e. after setpoint-based syn-
chronism)

S Type of coupling between LS and FS:


(channel-spec. MD 21310: COUPLING_MODE_1)
0: Actual value coupling
1: Setpoint coupling
2: Speed coupling

S Abortion of coupling with NC start


Channel-spec. MD 21330: COUPLE_RESET_MODE_1 (see Table 2-3)

Copyright © Siemens AG, 2005.


2/S3/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.3 Configuration of a synchronous spindle pair via machine data

S Write-protection for coupling parameters:


(channel-spec. MD 21340: COUPLE_IS_WRITE_PROT_1)
It can be defined in this machine data whether or not the configured coupling
parameters Speed ratio, Type of coupling and Block change response may
be influenced by the NC parts program.
0: Coupling parameters can be changed by the NC parts program
1: Coupling parameters cannot be changed by the NC parts program. At-
tempts to make changes are rejected with an alarm message.

2.3.1 Configuration of the behavior with NC start

The response to NC machining program start is defined by the channel-specific


machine data.

Table 2-2 Synchronous coupling behavior with NC start

Configured coupling Programmed coupling


(see Section 2.3)
MD: COUPLE_RESET_MODE MD: START_MODE_MASK
Coupling is maintained Bit 0 = 0 Bit 10 = 0
Deselect coupling Bit 0 = 1 Bit 10 = 1
Activate configured data Bit 5 = 1 –
Activate coupling Bit 9 = 1 –

2.3.2 Configuration of the behavior with Reset

With SW 3.2 and higher, the following behavior can be set with the channel-spe-
cific machine data with reset and end of NC machining program:

Table 2-3 Synchronous coupling behavior with end of NC machining program and
after reset

Configured coupling Programmed coupling


(see Section 2.3)
Coupling is MD: COUPLE_RESET_MODE MD: RESET_MODE_MASK-
maintained Bit 1 = 0 Bit 10 = 1
Deselect coupling MD: COUPLE_RESET_MODE MD: RESET_MODE_MASK-
Bit 1 = 1 Bit 10 = 0
MD: RESET_MODE_MASK Bit 0 = 1
Bit 0 = 1
(Generating a block on RESET)
Activate config- MD: COUPLE_RESET_MODE –
ured data Bit 6 = 1
MD: RESET_MODE_MASK
Bit 0 = 1

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-27
Synchronous Spindles (S3) 06.05
2.4 Special features of synchronous operation

2.4 Special features of synchronous operation

2.4.1 Special features of synchronous operation in general

Control dynamics When a setpoint coupling is used, the position controller parameters of FS and
LS (e.g. KV factor) must be matched. It may be necessary to activate different
parameter sets for speed control mode and synchronous operation
(M41...M45).

Feedforward Due to the improved control system dynamic response it provides, feedforward
control control for the following and leading spindles in synchronous mode is always
active. It can, however, be deselected for FS and LS with axis-specific MD
32620: FFW_MODE (=0). The NC parts program cannot deactivate the feedfor-
ward control for LS and FS with FFWOF.

The feedforward control mode (speed or torque feedforward control) is defined


in axis-specific MD 32620: FFW_MODE.
References: /FB/, K3, “Compensation”

Speed/acceleration The speed and acceleration limits of the spindles operating in synchronous
limits mode are determined by the “weakest” spindle in the coupling. The current gear
stages, the programmed acceleration and, for the leading spindle, the effective
position control status (On/Off) are taken into account for this purpose.
As an example, the maximum speed of the leading spindle is calculated inter-
nally in the control on the basis of the speed ratio and the spindle limitations of
the following spindle.

Multiple couplings If the system detects that a coupling is already active for an FS and LS when
synchronous mode is activated, then the activation process is ignored and an
alarm message generated.
Example of multiple couplings:

S A spindle is acting as the FS for several LS

As of SW 5.1 Number of configurable spindles per channel:

S Every axis in the channel can be configured as a spindle. The number of


axes per channel depends on the control version.

Copyright © Siemens AG, 2005.


2/S3/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.4 Special features of synchronous operation

As of SW 5.2 Cross-channel setpoint linkage and optional number of following


spindles in optional channels of an NCU:

S Cross-channel synchronous spindle setpoint links (DV) can be implemented


with no additional restrictions.

S Any number of following spindles in any channels on an NCU can be


coupled to one leading spindle. The only possible restriction to the number
of spindles could be imposed by the real CPU time requirement.

Note
The dynamic response of a coupling group is determined by the weakest
response as a function of the coupling factor. The acceleration rate and
maximum speed are reduced for the leading spindle down to the load limit of
the coupled leading spindles.
Further information: See above Speed/acceleration limits

Knee-shaped The effect of a knee-shaped acceleration characteristic (identified by axis-spe-


acceleration cific MD 35220: ACCEL_REDUCTION_SPEED_POINT and MD 35230: AC-
characteristic CEL_REDUCTION_FACTOR) on the following spindle is taken into account for
the leading spindle. If MD 35242: ACCEL_REDUCTION_TYPE is parameter-
ized, it is also used in the configuration; otherwise, the reduction in acceleration
is assumed to be hyperbolic.
If the dynamic response of a following spindle is lower than that of the leading
spindle when the coupling factor is taken into account, the leading spindle dy-
namic response is reduced to the required level while the coupling is active.

As of SW 7.1 Knee-shaped acceleration characteristic for synchronous spindles


The acceleration should be constant over the entire speed range for the follo-
wing spindle. However, if a knee-shaped acceleration characteristic is also
stored in the above-mentioned machine data for the following spindle, this is
only taken into account when the spindles are coupled in. The setpoints of the
following spindle are applied for the specified knee-shaped acceleration charac-
teristic.
References: /FB/, B2, “Acceleration”, Knee-shaped acceleration characteristic

Start synchronous ASUBs (activation of asynchronous subprograms) processed by the PLC can
mode using ASUB be used to activate or terminate synchronous mode at any chosen time in the
AUTOMATIC or MDA modes.
References: /FB/, K1, “Mode Group, Channels, Program Operation, Reset Res-
ponse”

Response to If alarms occur (e.g. servo alarms) during the synchronous operation, with which
alarms the servo enable is cancelled internally in the control and follow-up is active, the
subsequent response is as if the IS “Servo enable” (DB31, ... DBX2.1) has been
cancelled by the PLC (and IS “Follow-up mode” (DB31, ... DBX1.4) is set) →
see Subsection 2.4.2.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-29
Synchronous Spindles (S3) 06.05
2.4 Special features of synchronous operation

2.4.2 Influence on synchronous operation via PLC interface

PLC interface In synchronous operation, the influence of the PLC on the coupling resulting
signals from the setting of LS and FS interface signals must be noted.
The effect of the main PLC interface signals on the synchronous spindle cou-
pling is described below.

Spindle override The spindle speed override value input by the PLC in synchronous operation is
(DB31, ... DBB19) applied only to the leading spindle.

Axis/spindle The participating axes behave as shown in the following table (SW 4 and
disable (DB31, ... higher):
DBX1.3)
set: 1 not set: 0

No. LS/LA FS/FA Cou- Procedure


pling
1 0 0 OFF Setpoints of axes are output
2 0 1 OFF No setpoint output for FS/FA
3 1 0 OFF No setpoint output for LS/LA
4 1 1 OFF No setpoint output for LS/LA and FS/FA
5 0 0 ON Setpoints of axes are output
6 0 1 ON Disable not effective for FS/FA
7 1 0 ON Disable also effective for FS/FA
8 1 1 ON No setpoint output for LS/LA and FS/FA

S This signal is no longer effective when the coupling for FS/FA is activated. →
No. 6

S If the signal for the LS/LA is set, it also applies to the following
spindle(s)/axis(es) →No. 7

S A workpiece clamped between two spindles (workpiece transfer from front to


rearside machining) cannot be destroyed.

Servo enable Cancellation of “Servo enable” for LS (either via PLC interface or internally in
(DB31, ... DBX2.1) control in the event of faults):
If the servo enable signal of the LS is set to “0” during synchronous operation
and a setpoint coupling is active, a switchover to actual-value coupling is exe-
cuted in the control. If the LS is in motion at this instant, it is decelerated to a
standstill and an alarm message generated. Synchronous operation remains
active.
Cancellation of “Servo enable” for FS in synchronous operation (either via PLC
interface or internally in control in the event of faults).
The coupling is internally canceled until the signals are reset.

Copyright © Siemens AG, 2005.


2/S3/2-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.4 Special features of synchronous operation

If the “Servo enable” signal is not set for either of the spindles when synchro-
nous operation is selected, synchronous operation is still activated when the
coupling is switched on. The LS and FS however remain at standstill until the
servo enable signal is set for both of them.
Setting the “Servo enable” signal for LS and FS:
When the signal edge of IS “Servo enable” switches to 1, the spindle either
moves back to the old position (position on cancellation of servo enable) (signal
status = 0: Stop active) or the current positions (position offset) are used again
(signal status = 1: Follow-up active).

Note
If the “servo enable” signal is canceled for the FS after Spindle STOP without
the coupling being deactivated beforehand, then any synchronism error
resulting from external intervention (e.g. manual rotation) will not be
compensated when the “servo enable” signal is applied again.
This may result in loss of the defined angular reference between the FS and LS
for special applications.

Follow-up mode Interface signal “Follow-up mode” is relevant only if the “servo enable” for the
(DB31, ... DBX1.4) drive is canceled. When “servo enable” is set for the FS and LS, either the
spindle will return to the position recorded on cancellation of the servo enable
signal (signal state = 0: Stop active) or the current positions will be used again
(signal status = 1: Follow-up active).

Position Switchover between the position measuring systems for the FS and LS is not
measuring system locked out in synchronous operation. A switchover would not affect the cou-
1/2 (DB31, ... pling. It is however recommended that the measuring systems only be switched
DBX1.5 and 1.6) when synchronous mode is not active.
If “Park” status is selected for the FS or LS in synchronous operation, then the
system responds as if “servo enable” had been canceled.

Delete distance to When Spindle RESET is set for the LS in synchronous operation, the LS is
go / Spindle Reset braked down to standstill at the selected acceleration rate. The FS and LS con-
(DB31, ... DBX2.2) tinue to operate in synchronous mode. The overlaid motion (except with
COUP...) is terminated as quickly as possible.

Spindle stop When “Spindle STOP” is set for the FS or LS, both coupled spindles are braked
(Feed stop) (DB31, down to standstill via a ramp, but continue to operate in synchronous mode.
... DBX4.3) As soon as IS “Spindle STOP” is no longer active for any of the spindles in the
coupling, it is accelerated back up to the previous speed setpoint.
Application “Spindle STOP” can halt the synchronous spindle pair without offset since the
servo loop remains operative.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-31
Synchronous Spindles (S3) 06.05
2.4 Special features of synchronous operation

Example When the protective door is opened with an active synchronous spindle cou-
pling, the FS and LS must be stopped without the coupling relationship being
altered. This can be achieved by applying IS “Spindle stop” to halt the FS and
LS (IS “Axis/spindle stationary” (DB31, ... DBX61.4) = 1). “Servo enable” can
then be canceled for both spindles.

Delete S value The S value programmed for the LS is deleted and the LS decelerated down to
(DB31, ... DBX16.7) zero speed via a ramp. The FS and LS continue to operate in synchronous
mode.
IS “Delete S value” has no affect on the FS in synchronous operation.

Resynchronize It is possible to synchronize the spindle (LS) with its positioning measuring sys-
spindle 1/2 (DB31, tem when it is operating in synchronous mode. It is however recommended that
... DBX16.4 and the leading spindle only be re-synchronized when synchronous mode is not
16.5) active.

Traverse keys for The “plus and minus traversing keys” for JOG are not disabled internally for the
JOG (DB31, ... FS in synchronous operation, i.e. the FS executes an overlaid motion if one of
DBX4.6 and 4.7) these keys is pressed.

Note
If overlaid traversing movements are to be precluded, they must be locked out
by measures in the PLC user program.

NC Stop axes plus “NC Stop axes plus spindles” in synchronous operation decelerates the coupled
spindles (DB21, ... spindles in accordance with the selected dynamic response. They continue to
DBX7.4) operate in synchronous mode.

NC Start (DB21, ... See Subsection 2.3.1.


DBX7.1)
Note
NC Start after NC Stop does not deselect synchronous operation.

Copyright © Siemens AG, 2005.


2/S3/2-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.4 Special features of synchronous operation

2.4.3 Differential speed between leading and following spindles (SW


version 7.1 and later)

When does a A differential speed develops, e.g. with turning machine applications, when two
differential speed spindles are opposite. Through the signed addition of two speed sources, a
occur? speed component is derived from the leading spindle via the coupling factor. In
addition to this, it is possible to program a
S speed with S... and a
S direction of rotation with M3, M4 or M5
The spindles can normally be synchronized by a coupling factor with the value
’–1’. This sign reversal then results in a differential speed for the following
spindle as compared to an additional programmed speed. This typical behavior
in relation to the NC is illustrated in the following diagram.

S1, leading spindle: S2, following spindle


M3 S500 M2=3 S2=100
1
Set speed
Enable
by PLC

Speed Speed
interpolator interpolator

Coupling factor = –1
COUPON 100 rpm

–500 rpm
500 rpm x +
–400 rpm

2
Actual speed

M M

Fig. 2-2 Schematic representation of process resulting in differential speed

Example N01 M3 S500 ; S1 rotates 500 rev/min in positive direction, spindle 1 is


; master spindle
N02 M2=3 S2=300 ; S2 rotates 300 rev/min in positive direction
...
N05 G4 F1
N10 COUPDEF(S2,S1,–1) ; Coupling factor –1:1
N11 COUPON(S2,S1) ; Activate coupling, speed of following spindle S2 is calculated
; from speed for leading spindle S1 and the coupling factor.
N26 M2=3 S2=100 ; Programming of the differential speed, S2 is following spindle

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-33
Synchronous Spindles (S3) 06.05
2.4 Special features of synchronous operation

Application Manufacturing operations with positioned leading spindle and rotating tools re-
quire exact synchronism with the counterspindle which then functions like a
following spindle. A turret rotating about the following spindle allows parts to be
machined with different tool types. The following diagram shows an application
in which the tool is positioned parallel to the main spindle.

Main spindle with “workpiece” Counterspindle with rotating


“tool” in turret
X

Workpiece Tool

Chuck Turret Z

Turning tool

Slide

n1 n2
Positioned leading spindle Following spindle

Fig. 2-3 Application on a single-slide turning machine with turret about Z axis

Behavior during When the coupling is activated, the following spindle is accelerated, as before,
and after coupling to the leading spindle speed through application of the coupling factor. If the
following spindle is already rotating (M3, M4) when the coupling is activated, it
continues with this motion after coupling.
If the coupling is deactivated, the following spindle continues to rotate at the
speed corresponding to the sum of both speed components. The spindle be-
haves as if it had been programmed with the speed and direction transferred
from the other spindle.

Note
The differential speed does not therefore affect the coupling process.
The following or leading spindle cannot change gear stages while a coupling is
active.

Differential speed A differential speed results from renewed programming of the following spindle
(in the example S2=... ) or M2=3, M2=4 in speed control mode during an active
synchronous spindle coupling.
Supplementary condition
Speed S... must also be programmed again with direction of rotation M3 or M4.
Otherwise alarm 16111 “Channel% Block% Spindle% No speed programmed” is
displayed.

Copyright © Siemens AG, 2005.


2/S3/2-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.4 Special features of synchronous operation

Prerequisites Basic requirements for differential speed programming:

S Synchronous spindle functionality is required.


S The dynamic response of the following spindle must be at least as high as
that of the leading spindle. The system may otherwise react unpredictably
in, for example, rigid tapping operations G331/G332.

S The differential speed must be programmed in the channel in which the follo-
wing spindle is also configured. The leading spindle can be programmed in
a different channel.

S The differential speed must be enabled for the following spindle by the PLC
via IS “Enable overlaid movement” (DB31, ... DBX26.4). If the enable signal
has not been set, alarm 16771
“Channel% Following axis% Overlaid movement not enabled” is output. This
alarm is cleared when IS “Enable overlaid movement” (DB31, ... DBX26.4) is
set or the coupling is terminated.

Read offsets of The current offset always changes when a differential speed is programmed.
following spindle The current position offset is read with $AA_COUP_OFFS[Sn] at the setpoint
end and with $VA_COUP_OFFS[Sn] at the actual value end.
The last programmed offset is supplied by variable $P_COUP_OFFS[Sn].
When a differential speed is programmed (equals 100 rev/min in the example),
the programmed differential component is displayed as the speed setpoint.
The actual speed value refers to the motor speed. In the example, the actual
speed is 500 rev/min * (–1) + 100 rpm = –400 rev/min.

NCK to PLC Following spindle in speed control mode


The IS “Spindle in setpoint range” (DB31, ... DBX83.5) is set for the following
spindle by the NCK if the programmed speed (see example above N26 with
M2=3 S2=100) is reached at a differential speed of 100 rev/min. If a differential
speed is programmed and not enabled by the PLC, this VDI interface signal is
not set.
Even if a differential speed has been programmed, the following spindle re-
mains under position control if this is required by the coupling.

Note
At the output end, axial VDI interface signals NCK ³ PLC IS “Coarse/fine
synchronism” (DB31, ... DBX98.1/98.0) are reset and IS “Overlaid movement”
(DB31, ... DBX98.4) is set if setpoints are generated, in addition to the coupling
setpoints, as a result of programming the differential speed.

PLC to NCK Manipulation of the following spindle via the PLC interface
The effect of the axial VDI interface signals on the following spindle with a differ-
ential speed in speed control mode is described below:

Actual direction of IS “Actual direction of rotation clockwise” (DB31, ... DBX83.7)


rotation CW (DB31, refers to the resulting motor direction.
... DBX83.7)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-35
Synchronous Spindles (S3) 06.05
2.4 Special features of synchronous operation

Delete distance to The programmed differential speed and direction can be terminated by IS “De-
go / Spindle Reset lete distance-to-go / Spindle Reset” (DB31, ... DBX2.2). To delete the pro-
(DB31, ... DBX2.2) grammed speed only, it is possible to set IS “Delete S value” (DB31, ...
DBX16.7).

Resynchronize The IS “Resynchronize spindle 1/2” (DB31, ... DBX16.4/16.5) are not locked.
spindle 1/2 (DB31, Any positional offset is not compensated automatically by the coupling.
... DBX16.4 and
16.5)
Invert M3/M4 IS “Invert M3/M4” (DB31, ... DBX17.6) only inverts the speed component pro-
(DB31, ... DBX17.6) grammed for the following spindle.
The motion component generated by the synchronous spindle coupling remains
unaffected.

Spindle override The “Spindle override” VDI interface (DB31, ... DBB19) only affects the speed
(DB31, ... DBB19) component programmed for the following spindle. If the spindle override switch
is transferred to all axial inputs, then any change in the spindle override value is
applied double to the following spindle.
Once
– indirectly by a change in the leading spindle speed and
– once in the programmed component of the following spindle.
The offset value can be adjusted accordingly in the PLC program.

Coupling If the coupling is deactivated, the following spindle continues to rotate at the
deselection speed corresponding to the sum of both speed components. The motion transi-
tion on coupling deselection is at continuous speed.
When COUPOF is programmed, the spindle behaves as if it had been pro-
grammed with the transferred speed and rotational direction.
This equals M4 S400 in the example.
When COUOPOFS is programmed, the following spindle is decelerated to
standstill from the current speed.

Activate additional The following spindle can also be a master spindle. In this case, it is capable of
functions additional functions.

S Rotational feedrate with G95, G96 and G97. When G96 S2=... the “constant
cutting rate” function can be activated for the following spindle.
The calculated speed equals the set speed for the speed interpolator of
spindle 2 and is thus added to the total speed for S2.

S Rigid tapping with G331, G332.

Copyright © Siemens AG, 2005.


2/S3/2-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.4 Special features of synchronous operation

2.4.4 Restore synchronism of following spindle (SW 7.1 and later)

Causes for a When the coupling is reactivated after the drive enable signals have been can-
positional offset celed, a positional offset can occur between the leading and following spindles if
follow-up mode is activated. A positional offset can be caused by:

S A part has been clamped or both spindles have been turned manually (ma-
chine area is open, drives are disconnected from supply).

S After the spindle enable signals are canceled, the two spindles coast to
standstill at different speeds if they are not mechanically coupled.

S A drive alarm has occurred (internal follow-up mode, IS “Follow-up mode


active” (DB31, ... DBX61.3) = 1). When the alarm is cleared, the NC must
not trigger any synchronization motion.

S The spindles have not been synchronized due to a synchronization disable


caused by following spindle IS “Disable synchronization” (DB31, ...
DBX29.5).

Basic procedure If the following and leading spindles have fallen out of synchronism, or failed to
synchronize at all, synchronism can be restored between them by the following
measures:
1. Set the axis enable signals and cancel synchronization disable signal if this
has been set.
2. Start resynchronization process with VDI signal “Synchronize following
spindle”. Only when this process is complete can setpoint synchronism be
fully restored.
3. Wait until the actual values of the coupled spindles have synchronized.

Enable Setting the enabling signals closes the coupling at the current actual positions.
resynchronization IS “Coarse synchronism” (DB31, ... DBX98.1) and IS “Fine synchronism” (DB31,
..., DBX98.0) continue to refer to the last coupling parameters and are not set
automatically. The following preconditions must be fulfilled for resynchroniza-
tion to work:

S The axis enabling signal must be set for the following spindle.
S No synchronization disable signal
IS “Disable synchronization” (DB31, ... DBX31.5) must be set for the follo-
wing spindle.

Resynchronize Resynchronization is started explicitly for the relevant following spindle and
following spindle commences as soon as the low-high edge of axial
IS “Synchronize following spindle” (DB31, ... DBX31.4) is detected.
The NC acknowledges detection of the signal edge by output of axial IS “Syn-
chronization in progress” (DB31, ... DBX99.4) for the following spindle and the
signal remains set for as long as IS “Synchronize following spindle” (DB31, ...
DBX31.4) is set.
If a synchronization already exists, axial IS “Synchronization in progress (DB31,
... DBX99.4) remains active at least until synchronism between following and
leading spindle has been established at the setpoint end.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-37
Synchronous Spindles (S3) 06.05
2.4 Special features of synchronous operation

Determine The spindle position to be synchronized is determined by the programmed off-


synchronous set position between the following and leading spindles, e.g. COUPON(...,77).
spindle position If the “Correct synchronism” function (see below) detects a positional difference,
this is also taken into account.

Correct and The following and leading spindles are always synchronized as quickly as pos-
restore sible. IS “Overlaid movement” (DB31, ... DBX98.4) and IS
synchronism “Synchronization in progress” (DB31, ... DBX99.4) are output for the following
spindle while the synchronization setpoints are being generated.
Synchronism is not established at the setpoint end until the two signals IS
“Overlaid movement” (DB31, ... DBX98.4) and IS “Synchronization in progress”
(DB31, ... DBX99.4) have been canceled.
The length of time which elapses before the two signals IS “Coarse synchro-
nism” (DB31, ... DBX98.1) and IS “Fine synchronism” (DB31, ... DBX98.0) occur
for synchronization at the actual value end depends mainly on the dynamic
response of the drives involved in the coupling.
Example
N51 SPOS=0 SPOS[2]=90
N52 COUPDEF(S2,S1,1,1,“FINE”,“DV”)
N53 COUPON(S2,S1,77)
N54 M0 ; Cancel servo enable,
; Set correction, rotate following
; spindle backwards by 11 degrees
The system variables return the following values for the following spindle:
$P_COUP_OFFS[S2] ; Programmed position offset = 77 degrees
$AA_COUP_OFFS[S2] ; Position offset in setpoints = 66 degrees
$VA_COUP_OFFS[S2] ; Position offset in actual values approx. 66
; degrees
The synchronism signals refer to the programmed position offset of 77 degrees
and would no longer be set if there were a synchronism tolerance of 0.5 or 2
degrees, as the deviation is about 11 degrees.
Overlaid motion
An overlaid movement on the following spindle is always indicated by
IS “Overlaid movement” (DB31, ... DBX98.4).
This additional movement can be generated by SPOS, M3 S... , JOG, position-
ing via FC18 or synchronized actions.

Note
The axis enable signals can be canceled to interrupt a movement overlaid on
the following spindle (e.g. SPOS). This component of the movement is not
affected by IS “Synchronize following spindle” (DB31, ... DBX31.4), but is
restored by the REPOS operation.

Stop and block If “Stop” has been activated for the cancellation period of the axis enables for
change the leading or following spindle, then the last setpoint positions with the setting
of the axis enables from the servo drive are approached again.
Program instructions COUPON and WAITC can influence the block change
behavior. In this case, the block change criterion is defined by COUPDEF or via
MD 21320: COUPLE_BLOCK_CHANGE_CTRL_1.

Copyright © Siemens AG, 2005.


2/S3/2-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.4 Special features of synchronous operation

2.4.5 Special points regarding start-up of a synchronous spindle cou-


pling

Spindle start-up The leading and following spindles must be started up initially like a normal
spindle. This start-up procedure is described in:
References: /IAD/, SINUMERIK 840D Installation and Start-Up Guide
and
References: /FB/, S1, “Spindles”

Required The following parameters must then be set for the synchronous spindle pair:

S The machine axis numbers for the leading and following spindles
(for a permanently configured coupling with channel-spec. MD: COU-
PLE_AXIS_1[n])

S The required coupling type (setpoint, actual-value or velocity coupling)


(for a permanently configured coupling with channel-spec. MD:
COUPLING_MODE_1[n])

S The gear stage(s) of FS and LS for synchronous operation


S Plus the following coupling properties (see Section 4.1) for a permanently
configured synchronous spindle coupling:
– Block change behavior in synchronous spindle operation
Channel-spec. MD: COUPLE_BLOCK_CHANGE_CTRL_1
– Coupling abort behavior
Channel-spec. MD: COUPLE_RESET_MODE_1
– Modification protection for coupling parameters
Channel-spec. MD: COUPLE_IS_WRITE_PROT_1
– Speed ratio parameters for synchronous spindle coupling
Channel-spec. SD: COUPLE_RATIO_1[n].

Response to In order to obtain the best possible synchronism in setpoint couplings, the FS
setpoint changes and LS must have the same dynamic response to setpoint changes. The
axial control loops (position, speed and current controllers) should each be set
to the optimum value so that disturbances can be eliminated as quickly and
efficiently as possible. The dynamic response adaptation function in the set-
point branch is provided to allow differing dynamic responses of axes to be
matched without loss of control quality.
The following control parameters must each be set optimally for the FS and LS:

S KV factor (MD 32200 POSCTRL_GAIN)


S Feedforward control parameters
MD 32620 FFW_MODE
MD 32610 VELO_FFW_WEIGHT
MD 32650 AX_INERTIA
MD 32800 EQUIV_CURRCTRL_TIME
MD 32810 EQUIV_SPEEDCTRL_TIME

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-39
Synchronous Spindles (S3) 06.05
2.4 Special features of synchronous operation

References: /FB/, K3, “Compensation”


The following control parameters must be set identically for the FS and LS:

S Fine interpolator type (MD 33000: FIPO_TYPE)


S Axial jerk limitation
MD 32400 AX_JERK_ENABLE
MD 32410 AX_JERK_TIME
MD 32420 JOG_AND_POS_JERK_ENABLE
MD 32430 JOG_AND_POS_MAX_JERK
References: /FB/, G2, “Velocities, Setpoint/Actual-Value Systems,
Closed-Loop Control”

Dynamic response The FS and the coupled LS must have the same dynamic response to setpoint
adaptation changes. The same dynamic response means that their following errors must
be equal at any given speed.
The dynamic response adaptation function in the setpoint branch makes it pos-
sible to obtain an excellent match in the response to setpoint changes between
axes, which have different dynamic characteristics (control loops). The differ-
ence in the equivalent time constants between the dynamically “weakest”
spindle and the other spindle in the coupling must be entered as the dynamic
response adaptation time constant.

Example When the speed feedforward control is active, the dynamic response is primarily
determined by the equivalent time constant of the “slowest” speed control loop.
Leading spindle: MD 32810: EQUIV_SPEEDCTRL_TIME [n] = 5ms
Following spindle: MD 32810: EQUIV_SPEEDCTRL_TIME [n] = 3ms
→ Time constant of dynamic response adaptation for following spindle:
MD 32910: DYN_MATCH_TIME [n] = 5 ms – 3 ms = 2 ms
The dynamic response adaptation must be activated axially via MD 32900
DYN_MATCH_ENABLE.
The dynamic adaptation setting can be checked by comparing the following
errors of the FS and LS (in Diagnosis operating area; Service Axes display).
Their following errors must be identical when they are operating at the same
speed!
For the purpose of fine tuning, it may be necessary to adjust servo gain factors
or feedforward control parameters slightly to achieve an optimum result.

Control parameter A separate parameter set with servo loop setting is assigned to each gear stage
sets on coupled spindles.
These parameter sets can be used, for example, to adapt the dynamic res-
ponse of the leading spindle to the following spindle in synchronous operation.
When the coupling is deactivated (speed or positioning mode), it is therefore
possible to select other position controller parameters for the FS and LS. To
utilize this option, a separate gear stage must be reserved for synchronous op-
eration and selected before synchronous mode is activated.
References: /FB/, G2, “Velocities, Setpoint/ActualValue Systems, ClosedLoop
Control”

Copyright © Siemens AG, 2005.


2/S3/2-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
2.4 Special features of synchronous operation

Actual value In an actual-value coupling, the drive for the FS must be considerably more dy-
coupling namic than the leading spindle drive. The individual drives in an actual-value
coupling are also set optimally according to their dynamic response.
An actual-value coupling should only be used in exceptional cases.

Speed coupling The velocity coupling corresponds internally to a setpoint coupling, but with
lower dynamic requirements of the FS and LS. A servo loop is not needed for
the FS and/or LS and no measuring systems are needed.

Threshold values After controller optimization and feedforward control setting, the threshold val-
for coarse/fine ues for coarse and fine synchronism must be entered for the FS.
synchronism
S Threshold value for “Coarse synchronism”
axis-spec. MD 37200: AV, DV: COUPLE_POS_TOL_COARSE
MD 37220: VV: COUPLE_VELO_TOL_COARSE

S Threshold value for “Fine synchronism”


axis-spec. MD 37210: AV, DV: COUPLE_POS_TOL_FINE
MD 37230: VV: COUPLE_VELO_TOL_FINE
The values must be calculated according to the accuracy requirements of the
machine manufacturer (check via the PLC interface or in the FS Service dis-
play).

Angular offset If there must be a defined angular offset between the FS and LS, e.g. when syn-
LS/FS chronous operation is selected, the “zero degree positions” of the FS and LS
must be mutually adapted. This can be done with the following machine data:
MD 34100 REFP_SET_POS
MD 34080 REFP_MOVE_DIST
MD 34090 REFP_ MOVE_DIST_CORR
References: /FB/, R1, “Reference Point Approach”

Service display The following values are displayed for the following spindle for start-up in syn-
for FS chronous operation in the “Service Values Axes” display in the “Diagnosis” oper-
ating area:

S Actual deviation between setpoints of FS and LS


Display value: Position offset in relation to leading spindle (setpoint)
(value corresponds to angular offset between FS and LS that can be read
with axis variable $AA_COUP_OFFS in the parts program)

S Actual deviation between actual values of FS and LS


Display value: Position offset in relation to leading spindle (actual value)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/2-41
Synchronous Spindles (S3) 06.05
2.4 Special features of synchronous operation

Notes

Copyright © Siemens AG, 2005.


2/S3/2-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
4.1 Description of machine data

Supplementary Conditions 3
There are no other supplementary conditions to note.
J

Data Descriptions (MD, SD) 4


4.1 Description of machine data

4.1.1 Channelspecific machine data

21300 COUPLE_AXIS_1[n]
MD number Definition of synchronous spindle pair [n]
Default setting: 0 Minimum input limit: 0 Maximum input limit: 8
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: BYTE Applies as of SW 2.1
Meaning: One synchronous spindle pair per NC channel can be defined in a fixed configuration
with this machine data.
The machine axis numbers (channel-specific MD: AXCONF_MACHAX_USED) applicable
in the NC channel must be entered for the following spindle [n=0] and the leading spindle
[n=1]. MD: AXCONF_MACHAX_USED).
If a value of “0” is entered, then the coupling is not configured, thus leaving 2 couplings to
be configured freely via the NC parts program.
MD irrelevant for ... ... User-defined coupling
Related to .... Channel-spec. MD: COUPLING_MODE_1 (type of coupling in synchronous spindle mode)
Channel-spec. MD: COUPLE_IS_WRITE_PROT_1 (write-protection for coupling parame-
ters)
Channel-spec. MD: COUPLE_RESET_MODE_1 (coupling abortion response)
Channel-spec. MD: COUPLE_BLOCK_CHANGE_CTRL_1 (block change response in
synchronous spindle mode)
SD: $SC_COUPLE_RATIO_1 (speed ratio parameters for synchronous spindle mode)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/4-43
Synchronous Spindles (S3) 06.05
4.1 Description of machine data

21310 COUPLING_MODE_1
MD number Type of coupling in synchronous spindle mode
Default setting: 1 Minimum input limit: 0 Maximum input limit: 2
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: BOOLEAN Applies as of SW 2.1
Meaning: This machine data determines the type of coupling for the fixed coupling configuration de-
fined with machine data COUPLE_AXIS_1[n].
1: Setpoint coupling activated.
With a setpoint coupling, the reference value for the following spindle is calculated from
the position setpoint of the leading spindle, allowing the setpoints for the FS and LS to
be input simultaneously. This has a particularly positive effect on the spindle
synchronism during acceleration and deceleration processes.
A better response to setpoint changes is thus obtained with the setpoint coupling than
with the actual-value coupling.
When a setpoint coupling is selected, the following conditions must be fulfilled before
synchronous operation is activated:
S The LS must be assigned to the same NC channel as the FS.
S The FS and LS must be in position control mode (SPCON)
S The FS and LS must have the same dynamic control response (see Subsection
2.4.3)

0: Actual-value coupling activated.


With a setpoint coupling, the reference value for the following spindle is calculated from
the position setpoint of the leading spindle, With this type of coupling, the following
drive must be significantly more dynamic than the leading drive, but never vice versa.
The actual-value coupling can be used, for example, in the following applications:
S The LS must be assigned to a different NC channel than the FS
S For leading spindles which are not suitable for position control
S In cases where the dynamic control response of the leading spindle is considerably
slower than that of the following spindle.

As soon as the actual-value coupling is active, the IS “Actual-value coupling” for the FS
is set to “1”.
2: Velocity coupling activated.
Internally, the velocity coupling is a setpoint coupling. The requirements placed on FS
and LS are lower. A defined position relation between FS and LS cannot be
established.
In the following cases, the velocity coupling is applied:
S LS and/or FS are not in position control.
S There are no measuring systems.
The coupling type can be altered in the NC part program when the coupling is deactivated
by means of language instruction COUPDEF provided that this option is not inhibited in
channel-specific MD: COUPLE_IS_WRITE_PROT_1. The parameterized value of
channel-specific MD: COUPLING_MODE_1 does not, however, get altered.
MD irrelevant for ... ... User-defined coupling
Related to .... Channel-spec. MD: COUPLE_AXIS_1 (definition of synchronous spindle pair)
Channel-specific MD: COUPLE_IS_WRITE_PROT_1 (write-protection for configured pa-
rameters)
IS “Actual-value coupling” (DB31–48, DBX98.2)

Copyright © Siemens AG, 2005.


2/S3/4-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
4.1 Description of machine data

21320 COUPLE_BLOCK_CHANGE_CTRL_1
MD number Block change response in synchronous spindle mode
Default setting: 3 Minimum input limit: 0 Maximum input limit: 3
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: BYTE Applies as of SW 2.1
Meaning: This machine data determines the condition on which a block change must be executed
when synchronous mode is activated for the fixed coupling configuration defined in chan-
nel-specific machine data COUPLE_AXIS_1[n].
The following options are available:
0: Block change is enabled immediately
1: Block change in response to “Fine synchronism”
2: Block change in response to “Coarse synchronism”
3: Block change in response to IPOSTOP (i.e. after setpoint-based synchronism)
The block change response can be altered in the NC part program with language
instructions COUPDEF provided this option has not been inhibited with channel-specific
MD: COUPLE_IS_WRITE_PROT_1. The parameterized value of channel-specific MD:
COUPLE_BLOCK_CHANGE_CTRL_1 does not, however, get altered!
The selected block change response remains valid even when the speed ratio is changed
or a defined angular offset is programmed while the coupling is active.
MD irrelevant for ... ... User-defined coupling
Related to .... Channel-spec. MD: COUPLE_AXIS_1 (definition of synchronous spindle pair)
Channel-specific MD: COUPLE_IS_WRITE_PROT_1
(write-protection for coupling parameters)
Channel-spec. MD: COUPLE_POS_TOL_COARSE or COUPLE_VELO_TOL_COARSE
(threshold value for coarse synchronism)
Channel-specific MD: COUPLE_POS_TOL_FINE or COUPLE_VELO_TOL_FINE
(threshold value for fine synchronism)

21330 COUPLE_RESET_MODE_1
MD number Coupling abort response
Default setting: 1 Minimum input limit: 0 Maximum input limit: 0x3FF
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: BYTE Applies as of SW 2.1
Meaning: The behavior of synchronism for the synchronous spindle pair configured with the machine
data COUPLE_AXIS_1[n] is defined with this machine data.
Bit 1=0: Synchronism remains active even the program is started again and can
be canceled only with COUPOF as long as the control remains switched on.
Bit 0=1: Synchronism is canceled with program start (from the reset condition).

Bit 1=0: Synchronism remains active even with program end and RESET and can
be canceled only with COUPOF as long as the control remains switched on.
Bit 1=1: Synchronism is canceled with program end or RESET.
Bit 5=1: The configured data are activated with program start.
Bit 6=1: The configured data are activated with program end or RESET.
Bit 9=1: Synchronism is switched on with program start.
Note: Synchronism is not deselected with NC start after NC stop!
MD irrelevant for ... ... User-defined coupling
Related to .... Channel-spec. MD: COUPLE_AXIS_1 (definition of synchronous spindle pair)
IS “Synchronous operation” (DB31–48, DBX84.4)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/4-45
Synchronous Spindles (S3) 06.05
4.1 Description of machine data

21340 COUPLE_IS_WRITE_PROT_1
MD number Coupling parameters are write-protected
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2/7 Unit: –
Data type: BOOLEAN Applies as of SW 2.1
Meaning: This machine data is used to specify whether or not the coupling parameters (speed ratio,
block change response, coupling type) for the synchronous spindle pair configured with
channel-specific machine data COUPLE_AXIS_1[n] may be altered by the NC part pro-
gram.
1: Coupling parameters may not be altered by the NC program (write-protection active).
An alarm message is generated if an attempt is made to change the parameters.
0: NC parts program may alter coupling parameters using language instructions
COUPDEF.
MD irrelevant for ... ... User-defined coupling
Related to .... Channel-spec. MD: COUPLE_AXIS_1 (definition of synchronous spindle pair)
Channel-specific MD: COUPLING_MODE_1 (type of coupling in synchronous spindle
mode)
Channel-spec. MD: COUPLE_RESET_MODE_1 (coupling abortion response)
Channel-spec. MD: COUPLE_BLOCK_CHANGE_CTRL_1 (block change response in
synchronous spindle mode)
SD: $SC_COUPLE_RATIO_1 (speed ratio parameters for synchronous spindle mode)

4.1.2 Axis-specific machine data

37200 COUPLE_POS_TOL_COARSE
MD number Threshold value for coarse synchronism
Default setting: 1.0 Minimum input limit: 0.0 Maximum input limit: PLUS
Changes effective after NEW_CONF Protection level: 2/7 Unit:
Linear axis: mm
Rotary axis: degrees
Data type: DOUBLE Applies as of SW 2.1
Meaning: In synchronous operation, the positional deviation between the leading and following
spindles is monitored (only DV and AV mode).
IS “Coarse synchronism” is set if the current positional deviation is within the tolerance
band specified by the threshold value.
Furthermore, this threshold value represents the criterion for a block change on activation
of synchronous operation or on alteration of the transmission parameters when the coupling
is active in cases where “Coarse synchronism” is selected as the block change response
condition (see channel-specific MD: COUPLE_BLOCK_CHANGE_CTRL_1 or language
instruction COUPDEF).
If the value “0” is input, IS “Coarse synchronism” is always set to “1” in DV and AV mode.
Related to .... Channel-spec. MD: COUPLE_BLOCK_CHANGE_CTRL_1 (block change response in
synchronous spindle operation)
IS “Coarse synchronism” (DB31–48, DBX98.1)

Copyright © Siemens AG, 2005.


2/S3/4-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
4.1 Description of machine data

37210 COUPLE_POS_TOL_FINE
MD number Threshold value for fine synchronism
Default setting: 0.5 Minimum input limit: 0.0 Maximum input limit: PLUS
Changes effective after NEW_CONF Protection level: 2/7 Unit:
Linear axis: mm
Rotary axis: degrees
Data type: DOUBLE Applies as of SW 2.1
Meaning: In synchronous operation, the positional deviation between the leading and following
spindles is monitored (only DV and AV mode).
IS “Fine synchronism” is set if the current positional deviation is within the tolerance band
specified by the threshold value.
Furthermore, this threshold value represents the criterion for a block change on activation
of synchronous operation or on alteration of the transmission parameters when the coupling
is active in cases where “Fine synchronism” is selected as the block change response
condition (see channel-specific MD: COUPLE_BLOCK_CHANGE_CTRL_1 or language
instruction COUPDEF).
If the value “0” is input, IS “Fine synchronism” is always set to “1” in DV and AV mode.
Related to .... Channel-spec. MD: COUPLE_BLOCK_CHANGE_CTRL_1 (block change response in
synchronous spindle operation)
IS “Fine synchronism” (DB31–48, DBX98.0)

37220 COUPLE_VELO_TOL_COARSE
MD number “Coarse” speed tolerance between leading and following spindles
Default setting: 1.0 Minimum input limit: 0.0 Maximum input limit: PLUS
Changes effective after NEW_CONF Protection level: 2/7 Unit:
Linear axis: mm/min
Rotary axis: rev/min
Data type: DOUBLE Applies as of SW 3.1
Meaning: In synchronous operation, the speed difference between the leading and following spindles
is monitored (VV mode only).
IS “Coarse synchronism” is set if the current speed difference is within the tolerance band
specified by the threshold value.
Furthermore, this threshold value represents the criterion for a block change on activation
of synchronous operation or on alteration of the transmission parameters when the coupling
is active in cases where “Coarse synchronism” is selected as the block change response
condition (see channel specific MD: COUPLE_BLOCK_CHANGE_CTRL_1 or language
instruction COUPDEF).
If the value “0” is input, IS “Coarse synchronism” is always set to “1” in VV mode.
Related to .... Channel-spec. MD: COUPLE_BLOCK_CHANGE_CTRL_1 (block change response in
synchronous spindle operation)
IS “Coarse synchronism” (DB31–48, DBX98.1)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/4-47
Synchronous Spindles (S3) 06.05
4.2 Description of setting data

37230 COUPLE_POS_TOL_FINE
MD number “Fine” speed tolerance between leading and following spindles
Default setting: 0.5 Minimum input limit: 0.0 Maximum input limit: PLUS
Changes effective after NEW_CONF Protection level: 2/7 Unit:
Linear axis: mm/min
Rotary axis: rev/min
Data type: DOUBLE Applies as of SW 3.1
Meaning: In synchronous operation, the speed difference between the leading and following spindles
is monitored (VV mode only).
IS “Fine synchronism” is set if the current speed difference is within the tolerance band
specified by the threshold value.
Furthermore, this threshold value represents the criterion for a block change on activation
of synchronous operation or on alteration of the transmission parameters when the coupling
is active in cases where “Fine synchronism” is selected as the block change response
condition (see channel-specific MD: COUPLE_BLOCK_CHANGE_CTRL_1 or language
instruction COUPDEF).
If the value “0” is input, IS “Fine synchronism” is always set to “1” in VV mode.
Related to .... Channel-spec. MD: COUPLE_BLOCK_CHANGE_CTRL_1 (block change response in
synchronous spindle operation)
IS “Fine synchronism” (DB31–48, DBX98.0)

4.2 Description of setting data

42300 COUPLE_RATIO_1[n].
SD number Speed ratio parameters for synchronous spindle mode [n]
Default setting: 1.0 Minimum input limit: –1000 Maximum input limit: 1000
Changes effective after NEW_CONF Protection level: MMCMD 9220 Unit: –
Data type: DOUBLE Applies as of SW 2.1
Meaning: This setting data determines the speed ratio parameters for the coupling configured in
channel-specific MD: COUPLE_AXIS_1[n].
The linear correlation between the leading and following spindles is determined by speed
ratio kÜ. This ratio is input by two speed ratio parameters in the form of numerator [n=0] and
denominator [n=1], allowing the speed ratio to be specified very exactly.

Ü speed ratio parameter nominator $SC_COUPLE_RATIO[0]


kÜ + +
Ü speed ratio parameter denominator $SC_COUPLE_RATIO[1]
The speed ratio parameters can be altered in the NC part program with language
instructions COUPDEF provided this option has not been inhibited with channel-specific
MD: COUPLE_IS_WRITE_PROT_1. The parameterized values of SD:
$SC_COUPLE_RATIO_1 do not, however, get altered. The calculation of kÜ is initiated with
power ON.
SD irrelevant for ...... User-defined coupling
Related to .... SD: $SC_COUPLE_RATIO_1 currently has the same action as a machine data (e.g. active
after power ON). The SD data are therefore displayed and input in the same way as chan-
nel-specific machine data.
References Channel-spec. MD: COUPLE_AXIS_1 (definition of synchronous spindle pair)

Copyright © Siemens AG, 2005.


2/S3/4-48 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
5.1 Axis/spindle-specific signals

Signal Descriptions 5
5.1 Axis/spindle-specific signals

5.1.1 Signals from axis/spindle

DB31, ... Disable synchronization


DBX31.5
Data Block Signal(s) to axis/spindle from PLC (PLC ! NCK)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 6.3
Signal state 1 or signal The synchronization motion for the following spindle is not disabled from the PLC.
transition 0 –––> 1
The position offset is not suppressed and applied as in earlier versions.
Signal state 0 or signal The synchronization motion for the following spindle is disabled from the PLC.
transition 1 –––> 0
A synchronization motion specified via offset programming is suppressed for the following
spindle. The following spindle does not execute any additional movement.
Related to .... IS “Coarse synchronism” (DB31, ... DBX98.1)
IS “Fine synchronism” (DB31, ..., DBX98.0)

DB31, ... Synchronous mode


DBX84.4
Data Block Signal(s) from axis/spindle to PLC (NCK ! PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The spindle is operating in “Synchronous operation” mode. The following spindle thus fol-
transition 0 –––> 1 lows the movements of the leading spindle in accordance with the transmission ratio.
The monitoring functions for coarse and fine synchronism are implemented in synchronous
operation.
Note: The signal is set only for the machine axis which is acting as following spindle (IS “FS
active” = 1)
Signal state 0 or signal The spindle is not operated as the following spindle in “synchronous mode”.
transition 1 –––> 0
When the coupling is deactivated (deselection of synchronous operation), the following
spindle is switched to “open-loop control mode”.
Related to .... IS “Coarse synchronism” (DB31–48, DBX98.1)
IS “Fine synchronism” (DB31–48, DBX98.0)
IS “FS active” (DB31–48, DBX99.1)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/5-49
Synchronous Spindles (S3) 06.05
5.1 Axis/spindle-specific signals

DB31, ... Fine synchronism


DBX98.0
Data Block Signal(s) from axis/spindle to PLC (NCK ! PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The positional deviation or velocity difference between the following spindle and its leading
transition 0 –––> 1 spindle is within the “Fine synchronism” tolerance band (see Subsection 2.1.5).
Signal state 0 or signal The positional deviation or velocity difference between the following spindle and its leading
transition 1 –––> 0 spindle is not within the “Fine synchronism” tolerance band (see Subsection 2.1.5).
Note: The signal is relevant only for the following spindle in synchronous operation.
Application example Clamping of workpiece in following spindle on transfer from the leading spindle: Clamping of
the workpiece is not initiated by the PLC user program until the spindles are sufficiently
synchronized.
Related to .... IS “Synchronous operation” (DB31–48, DBX84.4)
MD: $MA_COUPLE_POS_TOL_FINE threshold value for fine synchronism or
MD: $MA_COUPLE_VELO_TOL_FINE “fine” speed tolerance

DB31, ... Coarse synchronism


DBX98.1
Data Block Signal(s) from axis/spindle to PLC (NCK ! PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The positional deviation or velocity difference between the following spindle and its leading
transition 0 –––> 1 spindle is within the “Coarse synchronism” tolerance band (see Subsection 2.1.5).
Note: The signal is relevant only for the following spindle in synchronous operation.
Signal state 0 or signal The positional deviation or velocity difference between the following spindle and its leading
transition 1 –––> 0 spindle is not within the “Coarse synchronism” tolerance band (see Subsection 2.1.5).
Application example Clamping of workpiece in following spindle on transfer from the leading spindle: Clamping of
the workpiece is not initiated by the PLC user program until the spindles are sufficiently
synchronized.
Related to .... IS “Synchronous operation” (DB31–48, DBX84.4)
axis-spec. MD: COUPLE_POS_TOL_COARSE threshold value for “Coarse synchronism”
or
axis-spec. MD: COUPLE_VELO_TOL_COARSE “coarse” velocity tolerance

DB31, ... Actual value coupling


DBX98.2
Data Block Signal(s) from axis/spindle to PLC (NCK ! PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The actual-value coupling is active as the coupling type between the leading and following
transition 0 –––> 1 spindles (see channel-specific MD: COUPLING_MODE_1).
Note: The signal is relevant only for the active following spindle in synchronous operation.
Signal state 0 or signal The setpoint coupling is active as the coupling type between the leading and following
transition 1 –––> 0 spindles (see channel-specific MD: COUPLING_MODE_1).
Special cases, errors, .... In the case of faults/disturbances on the following spindle which result in cancellation of the
FS “servo enable”, the coupling relationship between the FS and LS is reversed and
switched over to an actual-value coupling internally in the control under certain circum-
stances.
Related to .... IS “Synchronous operation” (DB31–48, DBX84.4)
channel-spec. MD: COUPLING_MODE_1 (coupling type in synchr. spindle oper.)

Copyright © Siemens AG, 2005.


2/S3/5-50 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
5.1 Axis/spindle-specific signals

DB31, ... Overlaid motion


DBX98.4
Data Block Signal(s) from axis/spindle to PLC (NCK ! PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The following spindle traverses an additional motional component which is overlaid on the
transition 0 –––> 1 motion from the coupling with the leading spindle.
Examples of overlaid movement of FS:
S Activation of synchronous operation with defined angular offset between FS and LS
S Activation of synchronous operation with LS in rotation
S Alteration of transmission ratio when synchronous operation is selected
S Input of a new defined angular offset when synchronous operation is selected
S Traversal of FS with plus or minus traversing keys or handwheel in JOG when
synchronous operation is selected

As soon as the FS executes an overlaid movement, IS “Fine synchronism” or IS “Coarse


synchronism” (depending on threshold value) may be canceled immediately.
Note: The signal is relevant only for the following spindle in synchronous operation.
Signal state 0 or signal The following spindle does not traverse any additional motional component or this motion
transition 1 –––> 0 has been terminated.
Related to .... IS “Synchronous operation” (DB31–48, DBX84.4)

DB31, ... LS (leading spindle) active


DBX99.0
Data Block Signal(s) from axis/spindle to PLC (NCK ! PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The machine axis is currently active as the leading spindle.
transition 0 –––> 1
Note: The signal is relevant only in synchronous operation.
Signal state 0 or signal The machine axis is not currently active as the leading spindle.
transition 1 –––> 0
Related to .... In the case of faults/disturbances on the following spindle which result in cancellation of the
FS “servo enable”, the coupling relationship between the FS and LS is reversed and
switched over to an actual-value coupling internally in the control under certain circum-
stances.
In this case, the leading spindle becomes the new, active following spindle (IS “FS active”).
Related to .... IS “Synchronous operation” (DB31–48, DBX84.4)
IS “FS active” (DB31–48, DBX99.1)

DB31, ... FS (following spindle) active


DBX99.1
Data Block Signal(s) from axis/spindle to PLC (NCK ! PLC)
Edge evaluation: NO Signal(s) updated: cyclic Signal(s) valid from SW: 2.1
Signal state 1 or signal The machine axis is currently operating as the following spindle.
transition 0 –––> 1
The following spindle thus follows the movements of the leading spindle in synchronous
operation in accordance with the transmission ratio.
Note: The signal is relevant only in synchronous operation.
Signal state 0 or signal The machine axis is not currently operating as the following spindle.
transition 1 –––> 0
Related to .... In the case of faults/disturbances on the following spindle which result in cancellation of the
FS “servo enable”, the coupling relationship between the FS and LS is reversed and
switched over to an actual-value coupling internally in the control under certain circum-
stances.
Related to .... IS “Synchronous operation” (DB31–48, DBX84.4)
IS “LS active” (DB31–48, DBX99.0)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/5-51
Synchronous Spindles (S3) 06.05
5.1 Axis/spindle-specific signals

Notes

Copyright © Siemens AG, 2005.


2/S3/5-52 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
6 Examples

Examples 6
; Leading spindle = master spindle = spindle 1
; Following spindle = spindle 2
N05 M3 S3000 M2=4 S2=500; Leading spindle rotates at 3000 rev/min,
; FS: –500 rev/min.
N10 COUPDEF (S2, S1, 1, 1, “No”, “Dv”) ; Definition of coupling;
; can also be configured
...
N70 SPCON ; Take leading spindle into position control
; (setpoint coupling).
N75 SPCON(2) ; Take following spindle into position control.
N80 COUPON (S2, S1, 45) ; Couple on the fly to offset position = 45
; degrees
...
N200 FA [S2] = 100 ; Positioning velocity = 100 degrees/min
N205 SPOS[2] = IC(–90) ; Travel 90 degrees overlaid in the negative
; direction
N210 WAITC(S2, “Fine”) ; Wait for “fine” synchronism
N212 G1 X.., Y.. F... ; Processing
...
N215 SPOS[2] = IC(180) ; Travel 180 degrees overlaid in the positive
; direction
N220 G4 S50 ; Dwell time = 50 rotations of
; master spindle
N225 FA [S2] = 0 ; Activate configured speed (MD).
N230 SPOS[2] = IC (–7200) ; 20 rotations with configured speed ; in the ne-
; gative direction.
...
N350 COUPOF (S2, S1) ; Decouple on the fly, S = S2 = 3000
N355 SPOSA[2] = 0 ; Stop FS at zero degrees.
N360 G0 X0 Y0
N365 WAITS(2) ; Wait for spindle 2
N370 M5 ; Stop FS.
N375 M30
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/6-53
Synchronous Spindles (S3) 06.05
6 Examples

Notes

Copyright © Siemens AG, 2005.


2/S3/6-54 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
7.1 Interface signals

Data Fields, Lists 7


7.1 Interface signals

DB number Bit, byte Name Refer-


ence
Channel-specific
21, ... 7.1 NC Start K1
21, ... 7.4 NC stop axes plus spindle K1
21, ... 24.6 Dry run feedrate selected V1
21, ... 25.3 Feedrate override for rapid traverse selected V1
Axis/spindle-specific
31, ... 1.3 Axis/spindle disable A2
31, ... 1.4 Follow up operation A2
31, ... 1.5/1.6 Position measuring system 1, position measuring system 2 A2
31, ... 2.1 Controller enable A2
31, ... 2.2 Spindle RESET A2
31, ... 4.3 Spindle stop/feed stop V1
31, ... 4.6–4.7 Traversing keys for JOG V1
31, ... 16.4/16.5 Re-synchronize spindle 1, re-synchronize spindle 2 S1
31, ... 16.7 Delete S value S1
31, ... 17.0 Feedrate override valid S1
31, ... 19 Spindle override V1
31, ... 31.5 Disable synchronization
31, ... 60.4/60.5 Referenced/synchronized 1, referenced/synchronized 2 R1
31, ... 84.4 Synchronous mode
31, ... 98.0 Synchronism fine
31, ... 98.1 Synchronism coarse
31, ... 98.2 Actual value coupling
31, ... 98.4 Superimposed motion
31, ... 99.0 LS/LA active
31, ... 99.1 FS/FA active

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/7-55
Synchronous Spindles (S3) 06.05
7.2 Machine data

7.2 Machine data

Number Identifier Name Refer-


ence
General ($MN_ ...)
10000 AXCONF_MACHAX_NAME_TAB Machine axis name K2
Channel-specific ($MC_...)
21300 COUPLE_AXIS_1 Definition of synchronous spindle pair
21320 COUPLE_BLOCK_CHANGE_CTRL_1 Block change behavior in synchronous spindle
operation
21310 COUPLING_MODE_1 Type of coupling in synchronous spindle mode
21330 COUPLE_RESET_MODE_1 Coupling abort behavior
21340 COUPLE_IS_WRITE_PROT_1 Coupling parameters are write-protected
20070 AXCONF_MACHAX_USED Machine axis number valid in channel K2
Axis/spindle-specific ($MA_...)
30550 AXCONF_ASSIGN_MASTER_CHAN Reset position of channel for axis change K5
32200 POSCTRL_GAIN Servo gain factor G2
32400 AX_JERK_ENABLE Axial jerk limitation B2
32410 AX_JERK_TIME Time constant for axial jerk filter B2
32420 JOG_AND_POS_JERK_ENABLE Initial setting for axial jerk limitation B2
32430 JOG_AND_POS_MAX_JERK Axial jerk B2
32610 VELO_FFW_WEIGHT Feedforward control factor for speed feedfor- K3
ward control
32620 FFW_MODE Feedforward control type K3
32650 AX_INERTIA Moment of inertia for torque feedforward con- K3
trol
32800 EQUIV_CURRCTRL_TIME Equivalent time constant current control loop K3
for feedforward control
32810 EQUIV_SPEEDCTRL_TIME Equivalent time constant speed control loop K3
for feedforward control
34080 REFP_MOVE_DIST Reference point approach distance R1
34090 REFP_MOVE_DIST_CORR Home position offset R1
34100 REFP_SET_POS Reference point value R1
35000 SPIND_ASSIGN_TO_MACHAX Assignment of spindle to machine axis S1
37200 COUPLE_POS_TOL_COARSE Threshold value for “Coarse synchronism”
37210 COUPLE_POS_TOL_FINE Threshold value for “Fine synchronism”
37220 COUPLE_VELO_TOL_COARSE Speed tolerance “coarse” between leading and
following spindles
37230 COUPLE_VELO_TOL_FINE Speed tolerance “fine” between leading and
following spindles

Copyright © Siemens AG, 2005.


2/S3/7-56 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Synchronous Spindles (S3)
7.5 System variable

7.3 Setting data

Number Identifier Name Refer-


ence
Axis-specific ($SA_...)
42300 COUPLE_RATIO_1 Transmission parameters for synchronous
spindle operation

7.4 Interrupts
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, “Diagnostics Guide”
or in the Online help.

7.5 System variable

System variable Name Refer-


ence
$P_COUP_OFFS[following spindle] Programmed offset of synchronous spindle (SW 6.3 and PGA 1
higher)
$AA_COUP_OFFS[following spindle] Position offset for synchronous spindle (setpoint) PGA 1
$VA_COUP_OFFS[following spindle] Position offset for synchronous spindle (actual value) PGA 1

Detailed explanations of the system variables appear in


References: /PGA/, “Programming Guide Advanced”.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S3/7-57
Synchronous Spindles (S3) 06.05
7.5 System variable

Notes

Copyright © Siemens AG, 2005.


2/S3/7-58 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Memory Configuration (S7)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/2-5
2.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/2-5
2.2 Memory organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/2-7
2.3 Memory configuration alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/2-10
2.4 Memory allocation in SRAM and DRAM . . . . . . . . . . . . . . . . . . . . . . . 2/S7/2-12
2.4.1 Memory allocation SRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/2-14
2.4.2 Memory allocation DRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/2-17
2.5 Memory requirements calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/2-23
2.5.1 DRAM memory requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/2-25
2.5.2 SRAM memory requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/2-27
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/4-29
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/4-29
4.1 General machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/4-29
4.2 Channelspecific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/4-46
4.3 Axis-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/4-53
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/7-55
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/7-55
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/7-55
7.1 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/7-55
7.2 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/S7/7-57
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/i
06.05

Notes

Copyright © Siemens AG, 2005.


2/S7/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
1 Brief Description

Brief Description 1
Every CNC requires memory for storing and managing data. This memory can
essentially be divided into two areas. One area contains data that doesn’t
change, such as the software of the CNC. This type of data can be stored on
electronic memory chips such as EPROM. The second area contains data
stored on the control by the machine manufacturer or user. This data is stored
on electronic memory chips such as RAM. The control system enables a RAM
area to be set up by the user for various specifications. This description
provides information on the areas of RAM that are available to the user and how
they can be set up.

Note
The SRAM memory currently available is shown in the Program operating area
in the program overview (dialog line).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/1-3
Memory Configuration (S7) 06.05
1 Brief Description

Notes

Copyright © Siemens AG, 2005.


2/S7/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.1 General

Detailed Description 2
2.1 General

Active file system The active file system is in the static memory area (SRAM) of the NCK. It holds
the system and user data accessed by the NCK during program execution. The
active file system is thus not a file system in the true sense, but rather the main
memory of the NCK.
The following data are stored in the active file system of the NCK:
– Machine data
– Setting data
– Option data
– Global user data (GUD)
– Tool offset / magazine data
– Protection zones
– R variables
– Zero offsets / FRAMEs
– Sag compensations
– Quadrant error compensation
– Leadscrew error compensation

Passive file system The passive file system is located in the static memory area (SRAM) of the
NCK. It holds a structure of directories containing files that are permanently
stored on the NCK.
Its standard complement of directories is as follows:
Directory Contents
– _N_MPF_DIR Standard directory for main programs
– _N_SPF_DIR Subroutines
– _N_DEF_DIR Definition files (*.DEF) of global
user data and macros
– _N_CST_DIR Standard cycles
– _N_CUS_DIR User cycles
– _N_WKS_DIR Workpieces
– _N_COM_DIR Standard directory for comments

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-5
Memory Configuration (S7) 06.05
2.1 General

When data that can reconfigure the SRAM are changed, all data in the active
and passive file systems are lost except for machine data, setting data and
option data. It is therefore vital to create a series startup file before such
changes are activated.

SRAM The term SRAM refers to the static RAM of the control system that is available
to the user for backing up data. SRAM is also referred to in this documentation
as backup, battery-backed or static memory.
The SRAM memory currently available is shown in the Program operating area
in the program overview (dialog line).

DRAM The term DRAM refers to the dynamic RAM of the control system that is
available to the user. The data used in this area are generated exclusively by
the control, are only required for a certain length of time and do not, therefore,
require backup. DRAM is also referred to in this documentation as an
unbuffered or dynamic memory.

Copyright © Siemens AG, 2005.


2/S7/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.2 Memory organization

2.2 Memory organization

Hardware The following table shows the hardware configuration of the available NC
configuration CPUs:

D-RAM S-RAM PCMCIA


NCU 561.x 32 MB 4 MB* 8MB or more
NCU 571.x 2 x 4 MB 4 MB* 8MB or more
NCU 572.x 32 MB 4 MB* 8MB or more
NCU 573.x 64 MB 4 MB* 8MB or more

SINUMERIK 840Di The memory available depends on the hardware configuration of the
components used (PCU and MCI board) and the memory available for
SINUMERIK 840Di.

DRAM DRAM for 840Di * SRAM


Maximum
PCU 50 256MB Approx. 16MB –
MCI board – – 1MB

*) DRAM component (main memory) occupied by SINUMERIK 840Di and thus


no longer available for Windows NT.

SRAM SRAM that is available to the user. It can be configured by means of the
machine data described in this Description of Functions:

S NCU 571.x 256 KB/ 1.5 MB*

S NCU 572.x 256 KB/ 1.5 MB*

S NCU 573.x 256 KB/ 1.5 MB*


SINUMERIK 840Di S MCI board approx. 0.5 MB

In the machine data 18230: MM_USER_MEM_BUFFERED. For NCUs with 2


different memory capacities, the standard entry takes the smallest value into
account. If the 2.0MB version is used, then you have to set MD 18230 explicitly
to 1900. (Although the gross value is 2000, it is necessary to make a deduction
for internal use).

DRAM The total amount of DRAM available to the user is displayed in


MD 18210: MM_USER_MEM_DYNAMIC (dynamic user memory in DRAM).
The value is system-dependent and may vary slightly with different software
versions.
The memory areas containing the individual data groups, e.g. global user data,
channel-specific user data, axis-specific user data, etc., are arranged
contiguously in SRAM and DRAM. The size of a data area in use can be
configured in the appropriate machine data. The order in which the data areas
are arranged is permanently defined by the CNC.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-7
Memory Configuration (S7) 06.05
2.2 Memory organization

Alteration of It is evident from the memory organization described above that any changes to
memory areas the memory areas must affect the data stored. Every time the system powers
up, the CNC compares the current requirement for memory with the existing
memory space on the basis of machine data for individual data areas. If the
comparison establishes that one or more modified data areas require
reallocation of the data areas, the memory is reorganized.
Loss of data Reconfiguring the memory always causes total loss of the entire memory
during contents (i.e. contents of active and passive file system).
reconfiguration All data stored in the active and passive file systems will also be lost if the total
SRAM and/or DRAM memory requirement specified via machine data exceeds
the amount of available memory. For this reason, it is absolutely essential to
save the data in a series startup file before modifying the memory configuration.
The amount of memory space available prior to a reconfiguration is displayed in
machine data

S MD18060: INFO_FREE_MEM_DYNAMIC (free static memory)


S MD18050: INFO_FREE_MEM_DYNAMIC (free dynamic memory)
displayed.

Memory- The following list shows some of the machine data which affect the memory
configuring configuration:
machine data
S System-specific memory settings
S Channel-specific memory settings
S Axis-specific memory settings.
The modification of machine data for the SRAM belonging to these groups
always leads to the loss of data in the backup memory. The name of these
machine data begins with MM_ (e.g. MM_NUM_TOA_MODULES).
The number of active channels also affects the memory configuration. If the
number of channels is altered, these channels are set up according to the
default settings for the channel-specific memory areas when the system is
powered up. Since these areas are also in the SRAM, changing the number of
channels also leads to a loss of data in the backup user memory.
After a new value has been entered in a machine data which reallocates the
memory area of the SRAM (see Section 2.4), message 4400 “MD alteration will
cause reorganization of buffer (data loss!)” is output. This warning indicates that
a machine data has been changed, which causes the backup memory to be
reorganized when the NCK is powered up, resulting in a loss of all user data
stored there. If the memory is to be reorganized and the control contains data
which have not been backed up, these should be saved before the next NCK
power-up.

Note
The reorganization can be avoided by changing the modified value back to the
original value at the time of the last power-up.

Copyright © Siemens AG, 2005.


2/S7/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.2 Memory organization

Only in exceptional cases does an MD change not cause reorganization of the


memory!
In the case of MD 18350: MM_USER_FILE_MM_MINIMUM (minimum parts
program memory), the memory reorganization is only performed if the remaining
RAM is too small.
Loading the memory-configuring standard machine data on the next system
power-up through setting system-specific MD 11200: INIT_MD (load standard
machine data on next power-up) to 2 causes the backed up user data to be lost
if the memory areas are not organized according to the memory default settings
before the system powers up.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-9
Memory Configuration (S7) 06.05
2.3 Memory configuration alarms

2.3 Memory configuration alarms


A modification to the memory allocation that is incorrect or requires memory
reorganization causes the output of an alarm message after CNC system
power-up. The causes of the faults and the response of the CNC can be
summarized as follows:

Alarm 6000 The user memory (static or dynamic) cannot be reallocated because the total
memory area available (static or dynamic) is less than the total number of
memory areas set by machine data. In this case, all machine data for
configuring memory are deleted and assigned their default values. NC
machining is no longer possible. This situation is indicated by alarm 6000
“Memory allocation with standard machine data”. It is not possible to pinpoint a
particular machine data as the cause of the error in memory allocation.
However, it is possible to find the error by altering the machine data for the
memory settings one by one. The alarm can be canceled with RESET.
Machining is possible only when the user data have been loaded.

Alarm 6010 After cycle programs, macro definitions or definitions of global user data have
been incorporated, alarm 6010 “Channel [name 1] data block [name 2] has not
been or is only partially created, error number [identifier]” is output in response
to an error. Either the machine data for the corresponding memory areas have
been incorrectly configured or the files contain an error. As an example, three
files for macro definitions _N_SMAC_DEF, _N_MMAC_DEF and
_N_UMAC_DEF contain a total of 30 macro definitions, but the setting in MD
18160: MM_NUM_USER_MACROS (number of macros) restricts the number of
macros to 10.
The identifier [name 1] indicates the name of the channel where the error has
occurred. The identifier [name 2] indicates the name of the file with the error.
The error number is coded as follows with respect to the cause:
Error number Explanation
1 No memory available
2 Maximum no. of symbols exceeded
3 Index 1 outside permissible value range
4 Name already exists on channel
5 Name already exists on NCK
>100 000 Unrecoverable system error
If the error number output is between 1 and 5, the user can eliminate the error
himself. In cases where the error number is > 100000, the error is an
unrecoverable system error.
Machining is possible when the machine data or files have been corrected, or
the changes have been canceled and the system rebooted.

Copyright © Siemens AG, 2005.


2/S7/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.3 Memory configuration alarms

Alarm 6020 The SRAM has been reorganized after a modification to the static memory
allocation. All stored data, with the exception of the machine data, have been
lost. Alarm 6020 “Machine data altered – memory reallocated” indicates this
situation. The SRAM is reallocated when the number of channels on the CNC or
the system, channel or axis-specific memory settings for the static memory are
altered. The alarm can be canceled with RESET. Machining can resume when
the user data are loaded.

Alarm 6030 The memory area set in MD 18210: MM_USER_MEM_DYNAMIC (user


memory in DRAM), MD 18220: MM_USER_MEM_DPR (user memory in
dual-port RAM) or MD 18230: MM_USER_MEM_BUFFERED (user memory in
SRAM) is larger than the physical memory actually available. In this case, the
CNC enters the available memory in the corresponding machine data and
displays it with alarm 6030 “User memory limit has been adapted”. In this case,
no user data are lost. This alarm message can be cleared by a RESET.
Alarm 6000 “Memory allocation with standard machine data” may arise,
however, if further machine data were used for the memory allocation assuming
that the excessively large data is correct and memory has been allocated over
and above the area actually available.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-11
Memory Configuration (S7) 06.05
2.4 Memory allocation in SRAM and DRAM

2.4 Memory allocation in SRAM and DRAM


Since in normal practice the SRAM and DRAM memory is only allocated as part
of the start-up process, we would recommend the following procedure for
allocating memory taking the SRAM as an example:

S Load standard machine data.


S MD 18230: MM_USER_MEM_BUFFERED (user memory in SRAM) is set to
a high value (3000). The NCK is then powered up. Alarm 6030 “User
memory limit has been adapted” is output and the maximum amount of
memory available to the user entered in MD 18230:
MM_USER_MEM_BUFFERED.
All other memory-configuring machine data are set to their defaults.

S Activate the number of channels and axes required, for further details see
References: / IAD / Installation & Start-Up Guide SINUMERIK 840D
/ HBI / SINUMERIK 840Di Manual

S The static memory still available is displayed in MD 18060:


INFO_FREE_MEM_STATIC (display data of free static memory).

S If the memory default settings do not allocate the memory satisfactorily, then
the memory areas can now be reconfigured (increase/decrease individual or
several areas via machine data) to adapt the memory provided to the
requirements on the machine tool.
Check: Which memory areas require more memory space?
Which memory areas are less important for the application in
question?

S After the appropriate machine data for the selected memory areas have
been set to define memory requirements, the NCK is reset in order to
reorganize the memory.

Copyright © Siemens AG, 2005.


2/S7/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.4 Memory allocation in SRAM and DRAM

Memory occupied by system

Tool management
MD 18080: MM_TOOL_MANAGEMENT_MASK
MD 18082: MM_NUM_TOOL
MD 18084: MM_NUM_MAGAZINE
MD 18086: MM_NUM_MAGAZINE_LOCATION
MD 18090: MM_NUM_CC_MAGAZINE_PARAM
MD 18092: MM_NUM_CC_MAGLOC_PARAM
MD 18094: MM_NUM_CC_TDA_PARAM
MD 18096: MM_NUM_CC_TOA_PARAM
MD 18098: MM_NUM_CC_MON_PARAM
MD 18100: MM_NUM_CUTTING_EDGE_IN_TOA
MD 18230: MM_USER_MEM_BUFFERED

Global user data


MD 18150: MM_GUD_VALUES_MEM

Program management
MD 18270: MM_NUM_SUBDIR_PER_DIR
MD 18280: MM_NUM_FILES_PER_DIR
MD 18290: MM_FILE_HASH_TABLE_SIZE
MD 18300: MM_DIR_HASH_TABLE_SIZE
MD 18310: MM_NUM_DIR_IN_FILESYSTEM
MD 18320: MM_NUM_FILES_IN_FILESYSTEM

R parameter:
MD 28050: MM_NUM_R_PARAM

Frames (zero offset)


MD 28080: MM_NUM_USER_FRAMES

Tool offset memory


MD 28085: MM_LINK_TOA_UNIT
Protection zones
MD 28200: MM_NUM_PROTECT_AREA_CHAN
MD 18190: MM_NUM_PROTECT_AREA_NCK

Interpolatory compensation
MD 38000: MM_ENC_COMP_MAX_POINTS[ i ]

Quadrant error compensation


MD 38010: MM_QEC_MAX_POINTS[ i ]

Y
Memory still available
MD 18060: INFO_FREE_MEM_STATIC
B

Fig. 2-1 Allocation of static RAM (SRAM)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-13
Memory Configuration (S7) 06.05
2.4 Memory allocation in SRAM and DRAM

2.4.1 Memory allocation SRAM

Table 2-1 Allocation of memory space in SRAM

Machine data Memory requirements Remarks


Tool management
MD 18080: See detailed description of MD in
MM_TOOL_MANAGEMENT_MASK Chapter 4.
MD 18082: 84 bytes per tool
MM_NUM_TOOL
MD 18084: 332 bytes per magazine
MM_NUM_MAGAZINE
MD 18086: 64 bytes per magazine location
MM_NUM_MAGAZINE_LOCATION
MD 18090: Input x no. of magazines x 4 bytes Corresponds to MD 18084:
MM_NUM_CC_MAGAZINE_PARAM MM_NUM_MAGAZINE
MD 18092: Input x no. of magazines x 4 bytes Corresponds to MD 18084:
MM_NUM_CC_MAGLOC_PARAM MM_NUM_MAGAZINE
MD 18094: Input x no. of tools x 4 bytes Corresponds to MD 18082:
MM_NUM_CC_TDA_PARAM MM_NUM_TOOL
MD 18096: Input x no. of TOs x 8 bytes Corresponds to MD 18100:
MM_NUM_CC_TOA_PARAM MM_NUM_CUTTING_EDGES_
IN_TOA
MD 18098: Input x no. of TOs x 4 bytes Corresponds to MD 18100:
MM_NUM_CC_MON_PARAM MM_NUM_CUTTING_EDGES_
IN_TOA
MD 18100: Without active monitor:
MM_NUM_CUTTING_EDGES_IN_ 250 bytes per tool edge
TOA
With active monitor:
Additional 48 bytes per tool edge
Global user data
MD 18118: See following example
MM_NUM_GUD_MODULES
MD 18120: 80 bytes per NCK name See following example
MM_NUM_GUD_NAMES_NCK
MD 18130: 80 bytes per channel name See following example
MM_NUM_GUD_NAMES_CHAN
MD 18140: 80 bytes per axis name
MM_NUM_GUD_NAMES_AXIS
MD 18150: See following example
MM_GUD_VALUES_MEM

Copyright © Siemens AG, 2005.


2/S7/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.4 Memory allocation in SRAM and DRAM

Example of GUD An example of how the calculate the memory requirements of global user data
is given below.

Supplementary
conditions
S Machine with two channels.
S The following GUD modules are defined:
UGUD User-specific
SGUD Siemens-specific
MGUD Machine manufacturer-specific
GUD7 (Contour table stock removal cycle, required for CYCLE95,
cycle version 3.4 and higher)

S NCK-specific and channel-specific variables are defined.

NCK variables
2 REAL values –> 2 x 8 bytes
= 16 bytes
1 BOOL values –> 1 x 1 byte
= 1 byte
Total 1 = 17 bytes
3 = Total NCK (no. of values)

CHAN variables 2 BOOL values –> 2 x 1 bytes


= 2 bytes
1 INT values –> 1 x 4 bytes
= 4 bytes
Total 2 = 6 bytes
3 = Total CHAN (no. of values)

6 bytes (total 2) x 2 (no. of channels) = 12 bytes (total 3)

Calculation of
memory required
S MD 18120: MM_NUM_GUD_NAMES_NCK = 3 (total NCK)
Memory space for management of NCK names
=> 3 x 80 bytes = 240 bytes

S MD 18130: MM_NUM_GUD_NAMES_CHAN = 3 (total CHAN)


Memory space for management of CHAN names
=> 3 x 80 bytes = 240 bytes

S Number of max. defined GUD modules = 7 (GUD7)


Memory space for management of GUD modules
=> 7 x 120 bytes = 840 bytes

S Memory requirements for variables


Total 1 + total 3 =
17 bytes + 12 bytes = 29 bytes, rounded up to whole KB gives:
MD 18150: MM_GUD_VALUES_MEM = 1

S Total memory space required for GUD is calculated as:


Memory space for management of NCK names = 240 bytes
Memory space for management of CHAN names = 240 bytes
Memory space for management of GUD modules = 840 bytes
Memory space required for variables = 1024 bytes
Total = 2344 bytes

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-15
Memory Configuration (S7) 06.05
2.4 Memory allocation in SRAM and DRAM

Machine data Memory requirements Remarks


Program management
MD 18270: 40 bytes per subdirectory
MM_NUM_SUBDIR_PER_DIR
MD 18280: 40 bytes per file
MM_NUM_FILES_PER_DIR
MD 18290: Assigned internally by the system and
MM_FILE_HASH_TABLE_SIZE must not be altered by user.
MD 18300: Assigned internally by the system and
MM_DIR_HASH_TABLE_SIZE must not be altered by user.
MD 18310: See detailed description of MD in
MM_NUM_DIR_IN_FILESYSTEM Chapter 4.
MD 18320: 320 bytes per file
MM_NUM_FILES_IN_FILESYSTEM
R variables
MD 28050: 8 bytes per R parameter
MM_NUM_R_PARAM
Frames (zero offsets)
MD 28080: 232 bytes per frame
MM_NUM_USER_FRAMES
An additional 120 bytes are required
once for management purposes.
Tool offset memory
MD 28085: 500 bytes per unit
MM_LINK_TOA_UNIT
Protection zones
MD 28200: 400 bytes for each defined block
MM_NUM_PROTECT_AREA_CHAN
MD 18190: 400 bytes for each defined area
MM_NUM_PROTECT_AREA_NCK
Compensation
MD 18340: 1KB permanently allocated
MM_NUM_CEC_NAMES
MD 18342: 8 bytes per compensation point
MM_CEC_MAX_POINTS
An additional 2 bytes are required
once for management purposes.
MD 38000: 8 bytes per compensation point
MM_ENC_COMP_MAX_POINTS
An additional 2 bytes are required
once for management purposes.
MD 38010: 4 bytes per compensation point
MM_QEC_MAX_POINTS
An additional 2 bytes are required
once for management purposes.

Copyright © Siemens AG, 2005.


2/S7/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.4 Memory allocation in SRAM and DRAM

2.4.2 Memory allocation DRAM

S The dynamic memory still available is displayed in MD 18050:


INFO_FREE_MEM_DYNAMIC (display data of available dynamic memory).

S If the memory default settings do not allocate the memory satisfactorily, then
the memory areas can now be reconfigured (increase/decrease individual or
several areas) to adapt the memory provided to the requirements on the
machine tool.
Check: Which memory areas require more memory space?
Which memory areas are less important for the application in
question?

S After the appropriate machine data for the selected memory areas have
been set to define memory requirements, the NCK is reset in order to
reorganize the memory.

Note
If more dynamic memory is demanded than the amount actually available, the
SRAM(!) is also automatically deleted during the next power-up and all
machine data for the memory configuration reset to their default values.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-17
Memory Configuration (S7) 06.05
2.4 Memory allocation in SRAM and DRAM

Macros:
MD 18160: MM_NUM_USER_MACROS

Miscellaneous functions and parameters:


MD 18170: MM_NUM_MAX_FUNC_NAMES
MD 18180: MM_NUM_MAX_FUNC_PARAM

Local user data:


MD 18240: MM_LUD_HASH_TABLE_SIZE
MD 28040: MM_LUD_VALUES_MEM

Hash tables:
MD 18250: MM_CHAN_HASH_TABLE_SIZE
MD 18210: MM_USER_MEM_DYNAMIC

MD 18260: MM_NCK_HASH_TABLE_SIZE

Tasks:
MD 18500: MM_EXTOM_TASK_STACK_SIZE
MD 18510: MM_SERVO_TASK_STACK_SIZE
MD 18520: MM_DRIVE_TASK_STACK_SIZE
MD 28500: MM_PREP_TASK_STACK_SIZE
MD 28510: MM_IPO_TASK_STACK_SIZE

Reorg function:
MD 27900: REORG_LOG_LIMIT
MD 28000: MM_REORG_LOG_FILE_MEM
MD 28010: MM_NUM_REORG_LUD_MODULES

Interpolation buffer:
MD 28060: MM_IPO_BUFFER_SIZE
MD 28070: MM_NUM_BLOCKS_IN_PREP

Compile cycles
MD 28090: MM_NUM_CC_BLOCK_ELEMENTS
MD 28100: MM_NUM_CC_BLOCK_USER_MEM

Protection zones:
MD 28210: MM_NUM_PROTECT_AREA_ACTIVE
Y
Dynamic memory still available
MD 18050: INFO_FREE_MEM_DYNAMIC
B

Fig. 2-2 Allocation of memory space in dynamic RAM (DRAM)

Copyright © Siemens AG, 2005.


2/S7/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.4 Memory allocation in SRAM and DRAM

Machine data Memory requirements Remarks


Macros
MD 18160: 375 bytes per macro
MM_NUM_USER_MACROS
Miscellaneous functions and their additional parameters
MD 18170: 150 bytes per miscellaneous function
MM_NUM_MAX_FUNC_NAMES
MD 18180: 72 bytes per parameter The entered value is the total of all
MM_NUM_MAX_FUNC_PARAM miscellaneous function parameters
required
Local user data
MD 18240: Assigned internally by the system and
MM_LUD_HASH_TABLE_SIZE must not be altered by user.
MD 18242: Block size depends on variable The machine data must be set for the
MM_MAX_SIZE_OF_LUD_VALUE used variable that requires the most
memory space. However, the machine
Data type Memory requirement data must not be set higher
REAL 8 bytes than this variable or an alarm mes-
INT 4 bytes sage is output
BOOL 1 byte
CHAR 1 byte See following example
STRING 1 byte per character, 100
characters permitted per string
AXIS 4 byte
FRAME 400 bytes
MD 28010: Assigned internally by the system and
MM_NUM_REORG_LUD_MODULES must not be altered by user.
MD 28020: 150 bytes per LUD name See following example
MM_NUM_LUD_NAMES_TOTAL
MD 28040: Total memory space required for LUD See following example
MM_LUD_VALUES_MEM

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-19
Memory Configuration (S7) 06.05
2.4 Memory allocation in SRAM and DRAM

Example of local Local user data defined in the parts programs are stored in the DRAM while the
user data program in which they are defined is being executed.
An example of how to calculate the memory requirements of local user data is
given below.

Parameters The following variables must be used:


of example 1 REAL value –> 1 x 8 bytes
= 8 bytes
2 BOOL values –> 2 x 1 byte
= 2 bytes
Total 1 = 10 bytes
3 = Total A (no. of values)

Calculation of
memory required
S Memory required for variables
Total 1 = 10 bytes

S MD 18242: MM_MAX_SIZE_OF_LUD_VALUES = 8 bytes


The machine data must be set according to the variable that requires the
most memory space. In this above example, this is the REAL value with 8
bytes.

S MD 28020: MM_NUM_LUD_NAMES_TOTAL = 3 (total A)


Memory space for management of LUD NAMES
=> 3 x 150 bytes = 450 bytes

S MD 28040: MM_LUD_VALUES_MEM

Total memory space required for LUD is calculated as:


Memory space for management of LUD NAMES = 450 bytes
Memory space required for variables = 10 bytes
Total = 456 bytes

The calculated sum must be rounded in KB and entered in


MD 28040: MM_LUD_VALUES_MEM (in this case, 1KB).
The memory provided by this setting is allocated in blocks of 8 bytes each in
size (according to MD 18242).
If, for example, 1 REAL value (8 bytes) and 1 BOOL value (1 byte) are used
in a program, then 2 blocks of memory of 8 bytes each are allocated.

Copyright © Siemens AG, 2005.


2/S7/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.4 Memory allocation in SRAM and DRAM

LUD defined in Local user data defined in the parts programs are stored in the DRAM while the
parts programs program in which they are defined is being executed.
During this period, it is possible to view the assigned values under the softkey
PARAMETER.

Definition of DEF INT LUD_VARIABLE1 Integer variable with the name VARIABLE1
variables in PP DEF REAL LUD_VARIABLE2 REAL variable with the name VARIABLE2
DEF REAL LUD_PAUL[19] Field with 20 REAL variables PAUL[0] –
PAUL[19]

Memory The system automatically controls the allocation of memory blocks.


management
S Reservation of a memory block when a parts program containing the LUD
definition is processed.

S Reservation of further blocks if the memory provided for the number of


variables is not sufficient.

S Release of memory space if LUD are no longer required (at end of program).

Variants of variable When a large number of variables is required, e.g. 20 REAL variables, it is
definition possible to save memory space by defining an ARRAY (field) at the beginning
of a parts program rather than defining each variable individually.

Example:
Case1
DEF REAL LUD_PAUL[19]
This field with 20 LUD variables PAUL[0] – PAUL[19] requires the following
memory space:
MD 28080 = 1 => 1 x 150 bytes = 150 bytes
Memory for 20 variables => 20 x 8 bytes = 160 bytes
Total memory required by 20 variables = 310 bytes

Case2
Individual definition of 20 variables: PAUL0, PAUL1 – PAUL19
MD 28080 = 20 => 20 x 150 bytes = 3000 bytes
Memory for 20 variables => 20 x 8 bytes = 160 bytes
Total memory required by 20 variables = 3160 Byte

Note
This alternative method of variables definition can also be applied
to GUD variables.

See MD: MM_MAX_SIZE_OF_LUD_VALUES for LUD variables.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-21
Memory Configuration (S7) 06.05
2.4 Memory allocation in SRAM and DRAM

Machine data Memory requirements Remarks


Hash tables
MD 18250: Input x no. of channel-spec. names x Assigned internally by the system and
MM_CHAN_HASH_TABLE_SIZE 68 bytes must not be altered by user.
MD 18260: Input x no. of NCK-spec. names x 68 Assigned internally by the system and
MM_NCK_HASH_TABLE_SIZE bytes must not be altered by user.
Tasks
MD 18500: Input x 1KB
MM_EXTCOM_TASK_STACK_SIZE
MD 18510: Input x 1KB
MM_SERVO_TASK_STACK_SIZE
MD 18520: Input x 1KB
MM_DRIVE_TASK_STACK_SIZE
MD 28500: Input x 1KB
MM_PREP_TASK_STACK_SIZE
MD 28510: Input x 1KB
MM_IPO_TASK_STACK_SIZE
Reorg function
MD 27900: Input x 1KB Assigned internally by the system and
REORG_LOG_LIMIT must not be altered by user.
MD 28000: Input x 1KB Assigned internally by the system and
MM_REORG_LOG_FILE_MEM must not be altered by user.
MD 28010: Input x 1KB Assigned internally by the system and
MM_NUM_REORG_LUD_MODULES must not be altered by user.
Interpolation buffer
MD 28060: 10KB for each NC block in IPO buffer
MM_IPO_BUFFER_SIZE
MD 28070: 10KB for each NC block for
MM_NUM_BLOCKS_IN_PREP preparation
Compile cycles
MD 28090: 1.2 KB per block element
MM_NUM_CC_BLOCK_
ELEMENTES
MD 28100: Input / 128 bytes = no. of blocks The entered value should be a multi-
MM_NUM_CC_BLOCKS_USER_ ple of 128 since the memory is en-
MEM abled in a grid of 128-byte blocks.
Active protection zones
MD 28210: The value entered should be deter-
MM_NUM_PROTECTED_AREA_ mined by the total of the settings in
ACTIVE MD 18190 and MD 28200.
MD 18190 = 2
MD 28200 = 2
=> MD 28210 = 4

Copyright © Siemens AG, 2005.


2/S7/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.5 Memory requirements calculation

2.5 Memory requirements calculation

Note
The memory required depends on the software version and type of NC control.
The values specified in the table below for the change in memory requirements
based on changes in machine data are intended as guide values for SW 4
and NCU 572. The defaults and machine data limits for other software versions
or other NC controls can be found in:
References: /LIS/, Lists (for relevant software version)

Overview The tables are arranged in the following order:

S DRAM
– General machine data
– Channelspecific machine data
– Axis-specific machine data

S SRAM
– General machine data
– Channelspecific machine data
– Axis-specific machine data

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-23
Memory Configuration (S7) 06.05
2.5 Memory requirements calculation

Table entries
1. MD no.
Number of the machine data. The associated identifier can be looked up in
/LIS/.
2. Meaning
Meaning of the machine data.
New line:
GD: Basic DRAM overhead, GS: Basic SRAM overhead
(This overhead is produced when the function controlled by the MD is used.
Values are only specified for MD which are not directly proportional to the
value specified in column 3 or which cannot be calculated.)
3. Default value (def)
Value set when the software is supplied.
4. Increase def. by 1, extra req. (bytes)
Specifies the number of bytes by which the memory requirement changes if
the default value is increased by 1.
The basic overheads for GD and GS specified in column 2 are included in
the changes shown.
5. Increase def. by further (n)
Specifies by how many additional units the value of the machine data was
increased in the capacity calculation. The increased memory allocation is
specified in column 6.
6. Extra requirement for n, (bytes)
Specifies how much additional memory is required if the machine data is
increased by the value specified in column 5.
The basic overheads for GD and GS specified in column 2 are included in
the changes shown.
7. SRAM also affected
DRAM also affected
An x appears in the column if the other type of memory is also occupied
proportionally.

Note
The actual dependencies between machine data and required memory are
complex. Some MD initiate further functions which also use memory. The
relationship between the amount of memory used and the number in the MD is
not always linear. The tables below therefore only provide an approximate
indication of where memory can be reduced or increased in order to achieve
the desired configuration. The information applies both to increasing and
reducing the values specified in the machine data.

Copyright © Siemens AG, 2005.


2/S7/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.5 Memory requirements calculation

2.5.1 DRAM memory requirements

Table 2-2 General machine data, DRAM

MD num- Meaning Default Increase Increase Extra req. SRAM


ber value def. by 1, def. by for n also
extra req. further (bytes) affected
(bytes) (n)
10010 Channels 1 1134608 See SRAM x
10134 Number of MMC communication part- 6 28236
ners
18082 Number of tools 30 120 10 1244 x
18088 Number of toolholders 0 588 n See SRAM x
GD: 588, GS: 1293
18120 Number of global user variables 10 84 10 828 x
18130 No. of channel-specific user variables 40 84 10 828 x
18140 No. of axis-specific user variables 0 84 10 828 x
18160 No. of macros 10 680 10 6864
18170 No. of miscellaneous functions 40 120 10 1272
(cycles)
18180 No. of additional parameters for 300 60 10 612
cycles
18190 Number of files for machine-related 0 504 n See SRAM x
protection zones
GD: 504, GS: 1062
18210 Dynamic user memory 3370 1024 10 10240
18280 No. of files per directory 100 76
18342 Max. number of interpolation points for 0 380 10 See SRAM x
beam sag compensation
GD: 380, GS: 1680

Table 2-3 Channel-specific machine data, DRAM

MD num- Meaning Default Increase Increase Extra req. SRAM


ber value def. by 1, def. by for n also
extra req. further (bytes) affected
(bytes) (n)
28000 Memory size for REORG 10 1084 10 10636
28020 Number of local user variables 200 160 10 1688
28040 Memory capacity for local user vari- 8 1024 10 10260
ables
28060 No. of NC blocks in IPO buffer 10 15452
28070 No. of blocks for block preparation 36 15576
28080 No. of settable frames 5 76 10 784 x
28085 Assignment of TOA unit to a channel 1,2,3... 84 See SRAM x
28090 No. of block elements for 0 924
compile cycles

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-25
Memory Configuration (S7) 06.05
2.5 Memory requirements calculation

Table 2-3 Channel-specific machine data, DRAM

MD num- Meaning Default Increase Increase Extra req. SRAM


ber value def. by 1, def. by for n also
extra req. further (bytes) affected
(bytes) (n)
28100 Capacity of block memory for 256 1056
compile cycles
28150 Number of elements for writing PLC 0 56
variables
28200 Number of files for channel-spec. 0 504 See SRAM x
protection zones
GD: 504, GS: 1062
28210 Number of simultaneously active 0 ~18000 10 174852
protection zones
28250 Number of elements for expressions 159 104
in synchronized actions
28252 Number of elements for FCTDEF defi- 3 32
nitions

Table 2-4 Axis-specific machine data, DRAM

MD num- Meaning Default Increase Increase Extra req. SRAM


ber value def. by 1, def. by for n also
extra req. further (bytes) affected
(bytes) (n)
38000 No. of interpolation points for inter- 0 10 212 x
polation compensation
GD: 212, GS: 976
38010 Number of values for quadrant error 0 10 548 x
compensation
GD: 548, GS: 1932

Copyright © Siemens AG, 2005.


2/S7/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
2.5 Memory requirements calculation

2.5.2 SRAM memory requirements

Table 2-5 General machine data, SRAM

MD num- Meaning Default Increase Increase Extra req. DRAM


ber value def. by 1, def. by for n also
extra req. further (bytes) affected
(bytes) (n)
10010 Channels 1 10032 x
18082 Number of tools 30 80 10 812 x
18084 Number of magazines 3 244 10 2416
18086 Number of magazine locations 30 244 31 7612
GD: 0, GS: 6
18088 Number of toolholders 0 1408 10 1152 x
GD: 588, GS: 1293
18090 Quantity of magazine data 0 40 10 32
for compile cycles
GD: 0, GS: 36
18092 Quantity of magazine location data 0 40 10 32
for compile cycles
GD: 0, GS: 36
18094 Number of tool-spec. data per tool 0 40 9 68
GD: 0, GS: 31
18096 Quantity of data per tool edge 0 40 9 68
GD: 0, GS: 31
18098 Quantity of monitoring data per tool 0 40 9 32
edge
GD: 0, GS: 36
18100 Tool offsets per TOA module 30 244 10 2408
GD: 0, GS: 13
18102 Type of D number programming 0 –2344
(reduced re-
quirement for
1: direct D no.
prog.)

18118 Number of GUD files in active file sys- 7 628


tem
18120 Number of global user variables 10 120 10 1200 x
18130 No. of channel-spec. user variables 40 120 10 1200 x
18140 No. of axis-spec. user variables 0 120 10 1200 x
18150 Memory location for user variables 12 1056 10 10548
18190 Number of files for machine-related 0 1464 5 2012 x
protection zones
GD: 504, GS: 1062
18230 User memory in SRAM 1900 1024 10 10232
18310 No. of directories in passive file sys- 30 1236
tem
18320 No. of files in passive file system 100 344
18342 Number of interpolation points for 0 10 1748 x
beam sag compensation
GD: 380, GS: 1680

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/2-27
Memory Configuration (S7) 06.05
2.5 Memory requirements calculation

Table 2-5 General machine data, SRAM

MD num- Meaning Default Increase Increase Extra req. DRAM


ber value def. by 1, def. by for n also
extra req. further (bytes) affected
(bytes) (n)
18400 Number of curve tables 0 104 1 100
GD: 0, GS: 4
18402 Number of curve segments 0 128 1 124
GD: 0, GS: 4
18404 Number of curve table polynomials 0 60 1 56
GD: 0, GS: 4

Table 2-6 Channel-specific machine data, SRAM

MD num- Meaning Default Increase Increase Extra req. DRAM


ber value def. by 1, def. by for n also
extra req. further (bytes) affected
(bytes) (n)
28050 Number of channel-specific R param- 100 8 10 64
eters
28080 No. of settable frames 5 428 10 4220 x
28085 Assignment of TOA unit to a channel 1,2,3 ... 2124 x
28200 Number of files for channel-specific 0 1468 5 2008 x
protection zones
GD: 504, GS: 1062

Table 2-7 Axis-specific machine data, SRAM

MD num- Meaning Default Increase Increase Extra req. DRAM


ber value def. by 1, def. by (bytes) also
(bytes) further affected
(n)
38000 No. of interpolation points for inter- 0 10 1040 x
polation compensation
GD: 212, GS: 976
38010 Number of values for quadrant error 0 10 1996 x
compensation
GD: 548, GS: 1932

Copyright © Siemens AG, 2005.


2/S7/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.1 General machine data

Supplementary Conditions 3
None
J

Data Descriptions (MD, SD) 4


4.1 General machine data

18050 INFO_FREE_MEM_DYNAMIC
MD number Display data of free dynamic memory
Default setting: 1048576 Minimum input limit: – Maximum input limit: –
Changes effective after POWER ON Protection level: 0 Unit: Byte
Data type: DWORD Applies from SW: 1.1
Meaning: The data is used to display the number of bytes available in the dynamic memory. The data
cannot be defined. The display is updated with every NCK power-up. Possible step-by-step
procedure for calculating the memory requirement:
– Increase the input value by 1
– Power up the NCK
– Read off the memory requirement
– Calculate possible increase
The content of the machine data specifies the amount of dynamic RAM currently available
via MD for the expansion of the volatile user data areas. Before expanding a parameter,
such as the number of local user data (LUD), it is advisable to check that sufficient memory
is available.
Special cases: If more dynamic memory is requested than is currently available, the SRAM is deleted on
the next power-up and all machine data are initialized with the default settings.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-29
Memory Configuration (S7) 06.05
4.1 General machine data

18060 INFO_FREE_MEM_STATIC
MD number Display data of free static memory
Default setting: 2621440 Minimum input limit: – Maximum input limit: –
NCU573: 2621440
840Di: 524288
810D: 262144
Changes effective after POWER ON Protection level: 0 Unit: Byte
Data type: DWORD Applies from SW: 1.1
Meaning: The contents of the machine data indicate how much non-volatile memory is available for
the passive file system at the time of the power-up. Then the value is no longer updated.
To determine the current value at any given time the following operations are available:
HMI Advanced: Services or programming: Free memory in NCK
HMI Embedded: Programming; softkey memory info.

If MDs that influence the amount of backed-up memory required are altered, then the
amount of memory available for the passive file system also changes since the amount of
memory allocated to the passive file system consists of the memory setting in MD 18230:
MM_USER_MEM_BUFFERED (SRAM user memory) minus all other backup user data
(see also description of MD 18350: MM_USER_FILE_MEM_MINIMUM (minimum part
program memory)).
The data cannot be written. The display is only updated after every NCK power-up.
Special cases: If more static memory is requested than is currently available, the SRAM is deleted on the
next power-up and all machine data are initialized with the default settings.

18070 INFO_FREE_MEM_DPR
MD number Display data of free memory in DUAL_PORT RAM
Default setting: 0 Minimum input limit: – Maximum input limit: –
Changes effective after POWER ON Protection level: 0 Unit: Byte
Data type: DWORD Applies from SW:
Meaning: None
MD irrelevant for ... ... The functionality is not available with SW 2.

Copyright © Siemens AG, 2005.


2/S7/4-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.1 General machine data

18080 MM_TOOL_MANAGEMENT_MASK
MD number Screen form for reserving memory for TM function
Default setting: 00H Minimum input limit: 00H Maximum input limit: FFFFH
Changes effective after POWER ON Protection level: 1 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: Step-by-step TM-specific memory reservation defined in particular by the following MD:
S MD 18086: MM_NUM_MAGAZINE_LOCATION
S MD 18084: MM_NUM_MAGAZINE
S MD 18096: MM_NUM_CC_TOA_PARAM
S MD 18094: MM_NUM_CC_TDA_PARAM
S MD 18098: MM_NUM_CC_MON_PARAM
S MD 18092: MM_NUM_CC_MAGLOC_PARAM
S MD 18090: MM_NUM_CC_MAGAZINE_PARAM
is implemented on a bit-coded basis as a function of this data.
Memory cannot be reserved simply by presetting the individual memory-configuring
machine data. The memory configuration is not changed until the appropriate machine data
is activated during the next power ON.
Bit 1: Make tool management data available:
S Memory-reserving MD for basic functionality of tools must be set:
MD 18092: MM_NUM_TOOL
MD 18100: MM_NUM_CUTTING_EDGES_IN_TOA
S Memory-reserving MD for tool management function must be set:
MD 18086: MM_NUM_MAGAZINE_LOCATION
MD 18084: MM_NUM_MAGAZINE
When bit 1 is set, TM-specific memory is added to the memory space defined in
MM_NUM_TOOL.
Bit 2: Make tool monitoring data available:
S Memory-reserving MD for basic functionality of tools must be set:
MD 18092: MM_NUM_TOOL
MD 18100: MM_NUM_CUTTING_EDGES_IN_TOA
When bit 2 is set, memory for monitoring data is made available. TM-specific memory is
added to the memory space programmed in MD 18100:
MM_NUM_CUTTING_EDGES_IN_TOA.
Bit 3: OEM/CC data available:
S Memory-reserving MD must be set:
MD: MM_NUM_CC_...
When bit 3 is set, memory is made available for OEM applications.
Bit 4: Consider adjacent location tool management:
S Make memory available for TM function “Consider adjacent location”
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Related to .... MD 18084: MM_NUM_MAGAZINE (number of magazines that the NCK can manage)
MD 18086: MM_NUM_MAGAZINE_LOCATION (number of magazine locations
that the NCK can manage)
MD 18090: MM_NUM_CC_MAGAZINE_PARAM (number of magazine data that are set
up and evaluated by the CC)
MD 18092: MM_NUM_CC_MAGLOC_PARAM (number of magazine location data that are
set up and evaluated by the CC)
MD 18094: MM_NUM_CC_TDA_PARAM ((number of tool-specific data per tool for OEM
and compile cycle)
MD 18096: MM_NUM_CC_TOA_PARAM (number of data per tool cutting edge for
OEM and compile cycle)
MD 18098: MM_NUM_CC_MON_PARAM (number of monitoring data per tool
cutting edge for OEM and compile cycle)
References: /FBW/, “Description of Functions Tool Management”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-31
Memory Configuration (S7) 06.05
4.1 General machine data

18082 MM_NUM_TOOL
MD number Number of tools managed by the NCK
Default setting: 30 Minimum input limit: 0 Maximum input limit: 600
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: The NC cannot manage more tools than the maximum number entered in the MD. One tool
has at least one cutting edge.
Special cases, errors, ... The maximum number of possible tools corresponds to the number of cutting edges.
...
This MD must be set even if no tool management function is used.

The buffered data are lost if this machine data is altered!


Related to .... MD 18100: MM_NUM_CUTTING_EDGES_IN_TOA (number of tool offsets in NCK)

18084 MM_NUM_MAGAZINE
MD number Number of magazines managed by NC
Default setting: 3 Minimum input limit: 0 Maximum input limit: 32
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: Number of magazines which NCK can manage.
The MD for TM MD 20310: TOOL_MANAGEMENT_MASK and MD 18080:
MM_TOOL_MANAGEMENT_MASK and the optional TM
$ON_TECHNO_FUNCTION_MASK must be set.
MD irrelevant for ... ... MD is irrelevant if the tool management function is not in use.
Special cases, errors, ... Only tool management stage 2:
...
Value = 0 –> tool management stage 2 cannot be activated because no memory area has
been set up for the data.
The buffered data are lost if this machine data is altered!
Related to .... MD 18080: MM_TOOL_MANAGEMENT_MASK (mask for reserving memory for TM
function)
MD 20310: TOOL_MANAGEMENT_MASK (activation of different variants of tool
management function)
$ON_TECHNO_FUNCTION_MASK
References /FBW/, “Description of Functions Tool Management”

18086 MM_NUM_MAGAZINE_LOCATION
MD number Number of magazine locations
Default setting: 30 Minimum input limit: 0 Maximum input limit: 600
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: Number of magazine locations which NCK can manage.
The MD for TM MD 20310: TOOL_MANAGEMENT_MASK and MD 18080:
MM_TOOL_MANAGEMENT_MASK and the optional TM
$ON_TECHNO_FUNCTION_MASK must be set.
MD irrelevant for ... ... MD is irrelevant if the tool management function is not in use.
Special cases, errors, ... Only tool management stage 2:
...
Value = 0 –> tool management stage 2 cannot be activated because no memory area has
been set up for the data.
The buffered data are lost if this machine data is altered!
Related to .... MD 18080: MM_TOOL_MANAGEMENT_MASK (mask for reserving memory for TM
function)
MD 20310: TOOL_MANAGEMENT_MASK (activation of different variants of tool
management function)
$ON_TECHNO_FUNCTION_MASK
References /FBW/, “Description of Functions Tool Management”

Copyright © Siemens AG, 2005.


2/S7/4-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.1 General machine data

18090 MM_NUM_CC_MAGAZINE_PARAM
MD number Compile cycles of tool management: Number of magazine data
Default setting: 0 Minimum input limit: 0 Maximum input limit: 10
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: Only if MD for tool management and tool management option are set:
Number of magazine data (format IN_int) for which a memory area is set up and which can
be evaluated by compile cycles.
MD irrelevant for ... ... MD is irrelevant if tool management function is not activated.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Related to .... MD 18080: MM_TOOL_MANAGEMENT_MASK (mask for reserving memory for TM
function)
MD 18084: MM_NUM_MAGAZINE (number of magazines managed by the NC)
References: /FBW/, “Description of Functions Tool Management”

18092 MM_NUM_CC_MAGLOC_PARAM
MD number Compile cycles of tool management: Number of magazine location data
Default setting: 0 Minimum input limit: 0 Maximum input limit: 10
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: Only if MD for tool management and tool management option are set:
Number of magazine data (format IN_int) for which a memory area is set up and which can
be evaluated by compile cycles.
MD irrelevant for ... ... MD is irrelevant if tool management function is not activated.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Related to .... MD 18080: MM_TOOL_MANAGEMENT_MASK (mask for reserving memory for TM
function)
References: /FBW/, “Description of Functions Tool Management”

18094 MM_NUM_CC_TDA_PARAM
MD number Compile cycles of tool management: Number of TDA data
Default setting: 0 Minimum input limit: 0 Maximum input limit: 10
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: Only if MD for tool management and tool management option are set:
Number of TDA (tool-specific) data (format IN_int) for which a memory area is set up and
which can be evaluated by compile cycles.
MD irrelevant for ... ... MD is irrelevant if tool management function is not activated.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Related to .... MD 18080: MM_TOOL_MANAGEMENT_MASK (mask for reserving memory for TM
function)
MD 18082: MM_NUM_TOOL (number of tools managed by the NCK)
References: /FBW/, “Description of Functions Tool Management”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-33
Memory Configuration (S7) 06.05
4.1 General machine data

18096 MM_NUM_CC_TOA_PARAM
MD number Compile cycles of tool management: Number of TOA data
Default setting: 0 Minimum input limit: 0 Maximum input limit: 10
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: Only if MD for tool management and tool management option are set:
Number of TOA (tool-specific) data (format IN_int) per cutting edge for which a memory
area is set up and which can be evaluated by compile cycles.
MD irrelevant for ... ... Tool management stages 1 and 2 not activated.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Related to .... MD 18080: MM_TOOL_MANAGEMENT_MASK (mask for reserving memory for TM
function)
MD 18100: MM_NUM_CUTTING_EDGES_IN_TOA (number of tool offsets in NCK)
References: /FBW/, “Description of Functions Tool Management”

18098 MM_NUM_CC_MON_PARAM
MD number Compile cycles of tool management: Number of monitor data
Default setting: 0 Minimum input limit: 0 Maximum input limit: 10
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: For tool management compile cycles:
Number of monitor data which are created for each tool and which can be evaluated by
compile cycles.
MD irrelevant for ... ... MD is irrelevant if tool management function is not activated.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Related to .... MD 18080: MM_TOOL_MANAGEMENT_MASK (mask for reserving memory for TM
function)
MD 18100: MM_NUM_CUTTING_EDGES_IN_TOA (number of tool offsets in NCK)
References: /FBW/, “Description of Functions Tool Management”

18100 MM_NUM_CUTTING_EDGES_IN_TOA
MD number Number of tool offsets in NCK
Default setting: 30 Minimum input limit: 0 Maximum input limit: 1500
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 1.1
Meaning: The MD specifies the number of tool edges in the NCK. This machine data reserves
approximately 250 bytes of backup memory per TOA module for each tool edge, irrespec-
tive of the tool type.
Tools with cutting edge types 400–499 (= grinding tools) also occupy the location of a cut-
ting edge.
E.g.:
Define 10 grinding tools with one cutting edge each.
At least the following must apply:
MM_NUM_TOOL = 10
MM_NUM_CUTTING_EDGES_IN_TOA = 20
See also MM_NUM_TOOL

Special cases, errors, ... The data in the buffer are lost when the machine data are changed!
...
References: /FBW/, “Description of Functions Tool Management”

Copyright © Siemens AG, 2005.


2/S7/4-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.1 General machine data

18118 MM_NUM_GUD_MODULES
MD number Number of GUD modules
Default setting: 3 Minimum input limit: 1 Maximum input limit: 9
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: A GUD block corresponds to a file in which user-defined data can be stored. 9 GUD blocks
are available of which 3 are already assigned to specific users/applications.
UGUD_DEF_USER (block for user)
SGUD_DEF_USER (block for SIEMENS)
MGUD_DEF_USER (block for machine manufacturer)
Special cases, errors, ... The number of GUD modules is determined by the GUD with the highest number.
... Example: If the following GUD modules are defined,
UGUD
MGUD
GUD5
GUD8
then the machine data must be set to a value of 8, signifying
a memory requirement of 8 x 120 bytes = 960 bytes.

It is therefore advisable to select the “lowest” possible GUD module. If GUD modules
UGUD and MGUD have not been assigned elsewhere, then they may be used for this
purpose.
Related to: MD 18150: MM_GUD_VALUES_MEM (memory for user variables)

18120 MM_NUM_GUD_NAMES_NCK
MD number Number of global user variables
Default setting: 10 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the number of user variables for NCK global user data (GUD). Approximately 80
bytes of memory per variable are reserved in the SRAM for the name of the variable. The
additional memory required for the value of the variable depends on the data type of the
variable. The number of available NCK-global user variables is restricted by the limit value
set in MM_NUM_GUD_NAMES_NCK or MD 18150: MM_GUD_VALUES_MEM (memory
for user variables).
Special cases, errors, ... The data in the buffer are lost when the machine data are changed!
...
Related to .... MD 18150: MM_GUD_VALUES_MEM (memory for user variables)

18130 MM_NUM_GUD_NAMES_CHAN
MD number Number of channel-specific user variables
Default setting: 10 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the number of user variables for channel-specific global user data (GUD).
Approximately 80 bytes of memory per variable are reserved in the SRAM for the name of
the variable. The additional memory required for the variable value is equal to the size of
the data type of the variable multiplied by the number of channels. This means that each
channel has its own memory available for the variable values. The number of
channel-specific, global user variables available is exhausted when the limit defined in MD
18130: MM_NUM_GUD_NAMES_CHAN or MD 18150: MM_GUD_VALUES_MEM
(memory for user variables).
Special cases, errors, ... The data in the buffer are lost when the machine data are changed!
...
Related to .... MD 18150: MM_GUD_VALUES_MEM (memory for user variables)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-35
Memory Configuration (S7) 06.05
4.1 General machine data

18140 MM_NUM_GUD_NAMES_AXIS
MD number Number of axis-specific user variables
Default setting: 0 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 0 Unit: –
Data type: DWORD Applies from SW:
Special cases, errors, ... The data in the buffer are lost when the machine data are changed!
...
MD irrelevant for ... ... The functionality is not available with SW 2.

18150 MM_GUD_VALUES_MEM
MD number Memory location for user variables
Default setting: 2 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit: KB
Data type: DWORD Applies from SW: 1.1
Meaning: The specified value reserves memory for the variable values of the global user data (GUD).
The dimensioning of the memory depends to a large extent on the data types used for the
variables.
Overview of memory used by data types:

Data type Memory used


REAL 8 bytes
INT 4 bytes
BOOL 1 byte
CHAR 1 byte
STRING 1 1 byte per character, 100 characters permitted per string
AXIS 4 bytes
FRAME 400 bytes

The total memory required by channel or axis-specific global user variables is the memory
used by the variables multiplied by the number of channels or axes.
The number of global user variables available is exhausted when the limits defined in the
MD: MM_NUM_GUD_NAMES_xxxx or MM_GUD_VALUES_MEM are reached.
The battery-backed memory is used.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Related to .... MD 18118: MM_NUM_GUD_MODULES: (number of GUD modules)
MD 18120: MM_NUM_GUD_NAMES_NCK (number of global user variables)
MD 18130: MM_NUM_GUD_NAMES_CHAN (number of channel-specific user variables)

18160 MM_NUM_USER_MACROS
MD number Number of macros
Default setting: 10 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the total number of macros which can be stored in the files _N_SMAC_DEF,
_N_NMAC_DEF and _N_UMAC_DEF. When opened, each of these files requires at least
one KB of part program memory for the file code. If this limit for the file code is exceeded,
another KB is reserved for the file.
Dynamic user memory is used. Approximately 375 bytes per macro are reserved for the
specified number of macros for management tasks.
Special cases, errors, ... The data in the buffer are lost when the machine data are changed!
...

Copyright © Siemens AG, 2005.


2/S7/4-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.1 General machine data

18170 MM_NUM_MAX_FUNC_NAMES
MD number Number of miscellaneous functions
Default setting: 30 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 1.1
Meaning: The machine data limits the maximum number of miscellaneous functions over and above
the predefined functions (such as sine, cosine, etc.) which can be used in
– cycle programs
– compile cycle software
The function names are entered in the global NCK dictionary and may not conflict with the
names that already exist.
The SIEMENS cycle package of SW version 1 contains miscellaneous functions that are
taken into account by the default setting of the MD.
The data are stored in volatile memory. Approximately 150 bytes are required for each
miscellaneous function for management purposes.
Related to .... MD 18180: MM_NUM_MAX_FUNC_PARAM (no. of miscellaneous function parameters)

18180 MM_NUM_MAX_FUNC_PARAM
MD number Number of additional parameters
Default setting: 300 Minimum input limit: 0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the maximum number of parameters required for the miscellaneous functions in
– cycle programs
– compile cycle software.
50 parameters are required for the miscellaneous functions of the Siemens cycle package
of SW version 1.
The data are stored in volatile memory. Approximately 72 bytes are reserved for each
parameter.
Related to .... MD 18170: MM_NUM_MAX_FUNC_NAMES (number of miscellaneous functions)

18190 MM_NUM_PROTECT_AREA_NCK
MD number Number of protection zones in NCK
Default setting: Minimum input limit: Maximum input limit:
0 0 10
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: This machine data defines how many blocks are created for the protection
zones available in the NCK.
Special cases, errors, ... The data in the buffer are lost when the machine data are changed!
...
References /FB/, A3, “Axis Monitoring, Protection Zones”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-37
Memory Configuration (S7) 06.05
4.1 General machine data

18210 MM_USER_MEM_DYNAMIC
MD number User memory in DRAM
Default setting: Minimum input limit: Maximum input limit:
1000 – –
Changes effective after POWER ON Protection level: 2/7 Unit: KB
Data type: DWORD Applies from SW: 1.1
Meaning: The DRAM which physically exists in the NC is shared by the system and the user.
MM_USER_MEM_DYNAMIC defines the amount of memory in the DRAM that is available
to the user. The input limits are dependent on the hardware and software configuration of
the CNC.
This memory area contains various types of user data such as
– local user data
– REORG-LOG data.
The data in the dynamic memory are not backed up.
The input limits ensure that the memory space reserved does not exceed the amount of
memory which is actually available in the hardware.
Application example(s) When the default values are set, the following DRAM memory is available to the user with
the NCU 572/573 depending on the number of defined channels:
– 1 MB (1 channel defined)
– 300 KB (2 channels defined).
Special cases, errors, ... During power-up, the system software compares the total demands for DRAM with the
... value set in MD: MM_USER_MEM_DYNAMIC.
If the memory required exceeds the capacity defined in the machine data, alarm 6000
“Memory allocation with standard machine data” is output.
Alarm 6030 “User memory limit has been adjusted” is output if the control system detects
during power-up that the memory capacity requested through MM_USER_MEM_DYNAMIC
is greater than the physical memory size.
Related to: The available dynamic memory is displayed in MD 18050: INFO_FREE_MEM_DYNAMIC
(display data for available DRAM).

18220 MM_USER_MEM_DPR
MD number User memory in dual-port RAM
Default setting: 0 Minimum input limit: – Maximum input limit: –
Changes effective after POWER ON Protection level: 0 Unit: KB
Data type: DWORD Applies from SW:
MD irrelevant for ... ... The functionality is not available with SW 2.

Copyright © Siemens AG, 2005.


2/S7/4-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.1 General machine data

18230 MM_USER_MEM_BUFFERED
MD number User memory in SRAM
Default setting: Minimum input limit: Maximum input limit:
280 – –
Changes effective after POWER ON Protection level: 1 / 7 Unit: KB
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the size of the battery-backed user memory. Various types of user data are stored
in this area such as, for example:
– NC part programs
– R parameters
– Tool data
– User macros
– Global user data

The settable values depend on the hardware and software configuration.


512 KB are available in the hardware for the NCU 571.
512 KB or 2 MB are available for the NCU 572/573 depending on the hardware
configuration.
The CNC requires approximately 30 KB of this for its operating system, leaving 480 KB.
Some of this remaining memory is allocated for further areas permanently reserved for
machine data, setting data and data management.
The CNC manufacturer guarantees 256 KB user memory in the SRAM.
The availability of more than 256 KB user memory cannot be guaranteed in conjunction
with the following software versions.

SRAM with 2 MB:

If the NCU 572/573 is used with a larger memory, then the memory must be
released.

S Enter the value 1900 in MD 18230

S Make a copy of a series start-up file

S Execute power ON (in order to reorganize the memory)

S Load the series start-up file back into the control system

During power-up, the system software compares the total amount of battery-backed
memory required with the value set in MD 18230: MM_USER_MEM_BUFFERED.
If the memory required exceeds the capacity defined in the machine data, alarm 6000
“Memory allocation with standard machine data” is output. Alarm 6030 “User memory limit
has been adjusted” is output if the control system detects during power-up that the memory
capacity requested in
MD 18230: MM_USER_MEM_BUFFERED is larger than the physical memory.
Special cases, errors, ... The data in the buffer are lost when the machine data are changed!
...

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-39
Memory Configuration (S7) 06.05
4.1 General machine data

18240 MM_LUD_HASH_TABLE_SIZE
MD number Hash table size for user variables
Default setting: 11 Minimum input limit: 3 Maximum input limit: 107
Changes effective after POWER ON Protection level: 0 Unit: prime number
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the memory size for local user data (LUD). The value entered must be a prime
number. The setting allows the optimization of
– the interpreter execution time (lower value = longer execution time) and
– memory requirements (lower value = less memory).
A larger table requires a smaller number of decoding operations for internal decoding of the
variables and consequently a shorter interpreter execution time. The value set in this
machine data affects the amount of dynamic memory required for the management of the
modules for the local user variables with REORG, see MD 28010:
MM_NUM_REORG_LUD_MODULES (number of modules for local user variables with
REORG (DRAM)).
Note This machine data is assigned internally by the control and must not be altered
by the user.

Copyright © Siemens AG, 2005.


2/S7/4-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.1 General machine data

18242 MM_MAX_SIZE_OF_LUD_VALUE
MD number Maximum field size of LUD variables
Default setting: 8192 Min. input limit: 128 Max. input limit: 8192
Default setting: 496 (SW4.1 and higher) 240 (from SW4.1) 496 (from SW4.1)
LUD / GUD up to 12 axes: 660 – –
LUD / GUD > 12 axes: 920 – –
NC memory GUD / LUD: – 240 8192
Changes effective after POWER ON Protection level: 2 Unit: Byte
Data type: DWORD Applies from SW: 2
Meaning: MD 18242: MM_MAX_SIZE_OF_LUD_VALUE specifies the block size in which the total
memory defined in
MD 28040: MM_LUD_VALUES_MEM is assigned to the part programs of the channel.
The first variable to occur in the part program occupies a block of the size specified in MD
18242: MM_MAX_SIZE_OF_LUD_VALUE. The following variables are also stored in this
block. If the block is full of values or cannot accommodate any further variable, then
another block is requested.
MD 18242: MM_MAX_SIZE_OF_LUD_VALUE must be set to the same value as the
memory required by the largest possible variable used.

Data type Memory used


REAL 8 bytes
INT 4 bytes
BOOL 1 byte
CHAR 1 byte
STRING 1 byte per character, 100 characters permitted per string
AXIS 4 bytes
FRAME 400 bytes
Related to .... MD 28040: MM_LUD_VALUES_MEM (memory size for local user variables (DRAM))
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...

18250 MM_CHAN_HASH_TABLE_SIZE
MD number Hash table size for channel-specific data
Default setting: 7 Minimum input limit: 7 Maximum input limit: 193
Changes effective after POWER ON Protection level: 0 Unit: prime number
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the size for channel-specific names. The value entered must be a prime number.
The setting allows the optimization of
– the interpreter execution time (lower value = longer execution time) and
– memory requirements (lower value = less dynamic memory).
A larger table requires a smaller number of decoding operations for internal decoding of the
variables and consequently a shorter interpreter execution time. The value of this machine
data affects the amount of dynamic memory required. The required memory for each
channel in bytes is equal to the value entered multiplied by 68.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Note This machine data is assigned internally by the control and must not be altered
by the user.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-41
Memory Configuration (S7) 06.05
4.1 General machine data

18260 MM_NCK_HASH_TABLE_SIZE
MD number Hash table size for global data
Default setting: 2503 Minimum input limit: 537 Maximum input limit: 4001
Changes effective after POWER ON Protection level: 0 Unit: prime number
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the size for NCK-specific names. The value entered must be a prime number. The
setting allows the optimization of
– the interpreter execution time (lower value = longer execution time) and
– memory requirements (lower value = less memory).
A larger table requires a smaller number of decoding operations for internal decoding of the
variables and consequently a shorter interpreter execution time. The value of this machine
data affects the amount of dynamic memory required. The required memory in bytes is
equal to the value entered multiplied by 68.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Note This machine data is assigned internally by the control and must not be altered
by the user.

18270 MM_NUM_SUBDIR_PER_DIR
MD number Number of subdirectories
Default setting: Minimum input limit: Maximum input limit:
30 24 250
Changes effective after POWER ON Protection level: 1 Unit: –
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the maximum number of subdirectories that a directory in the passive file system
can have. The number of directories is limited by MD 18310:
MM_NUM_DIR_IN_FILESYSTEM (no. of directories in passive file system). The memory
requirement is contained in the memory for the number of files per directory (see MD
18260: MM_NUM_FILES_PER_DIR).
Related to .... MD 18310: MM_NUM_DIR_IN_FILESYSTEM (no. of directories in passive file system)

18280 MM_NUM_FILES_PER_DIR
MD number Number of files per directory
Default setting: Minimum input limit: Maximum input limit:
100 64 512
Changes effective after POWER ON Protection level: 1 Unit:
Data type: DWORD Applies from SW: 1.1
Meaning: Specifies the maximum number of files which can be created in a directory or subdirectory
of the passive file system. The total number of files is limited by MD 18320:
MM_NUM_FILES_IN_FILESYSTEM (no. of files in passive file system). The memory in
bytes required for the management of files in the directory is the value entered multiplied by
40. The highest value of MD 18280: MM_NUM_FILES_PER_DIR (number of files per
directory) and MD 18270: MM_NUM_SUBDIR_PER_DIR (no. of subdirectories) must be
entered as the MD setting. The memory required to manage files in the passive file system
is reserved by MD 18320: MM_NUM_FILES_IN_FILESYSTEM.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
... Note:
An alteration of the MD has an effect on directories created after this. This means that if the
number of files in an existing directory is to be altered, the existing directory must first be
deleted and then a new directory must be created (but only after having first saved the
files)!
Related to .... MD 18320: MM_NUM_FILES_IN_FILESYSTEM (number of files in passive file system)

Copyright © Siemens AG, 2005.


2/S7/4-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.1 General machine data

18290 MM_FILE_HASH_TABLE_SIZE
MD number Hash table size for files in a directory
Default setting: Minimum input limit: Maximum input limit:
19 3 299
Changes effective after POWER ON Protection level: 0 Unit: prime number
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the size of the hash table for the files of a directory. The value entered must be a
prime number. The setting allows the optimization of
– the interpreter execution time (lower value – longer execution time) and
– memory requirements (lower value = less memory).
The value of this machine data affects the amount of static memory required for the
management of directories, see MD 18310: MM_NUM_DIR_IN_FILESYSTEM (no. of
directories in passive file system)
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Note This machine data is assigned internally by the control and must not be altered
by the user.

18300 MM_DIR_HASH_TABLE_SIZE
MD number Hash table size for subdirectories
Default setting: 7 Minimum input limit: 3 Maximum input limit: 349
Changes effective after POWER ON Protection level: 0 Unit: prime number
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the size of the hash table for the subdirectories of a directory. The value entered
must be a prime number. The setting allows the optimization of
– the interpreter execution time (lower value – longer execution time) and
– memory requirements (lower value = less memory).
The value of this machine data affects the amount of static memory required for the
management of directories, see MD 18310: MM_NUM_DIR_IN_FILESYSTEM (no. of
directories in passive file system)
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Note This machine data is assigned internally by the control and must not be altered
by the user.

18310 MM_NUM_DIR_IN_FILESYSTEM
MD number Number of directories in passive file system
Default setting: Minimum input limit: Maximum input limit:
30 30 256
Changes effective after POWER ON Protection level: 2 Unit: –
Data type:DWORD Applies from SW: 1.1
Meaning: This machine data limits the number of directories in the passive file system and can be
used to reserve memory in the SRAM for the management of the directories. The
directories and subdirectories of the passive file system set up by the system are included
in this machine data. The memory required for the management of the directories can be
calculated as follows:
Memory required = a (440+28 (b+c)) bytes
a = Input value of MD 18310: MM_NUM_DIR_IN_FILESYSTEM (no. of directories in
passive file system)
b = Input value of MD 19300: MM_DIR_HASH_TABLE_SIZE (HASH table size for
subdirectories)
c = Input value of MD 18290: MM_FILE_HASH_TABLE_SIZE (hash table size for the files
of a directory)
Special cases, errors, ... The data in the buffer are lost when the machine data are changed!
...
Related to .... MD 18270: MM_NUM_SUBDIR_PER_DIR (no. of subdirectories)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-43
Memory Configuration (S7) 06.05
4.1 General machine data

18320 MM_NUM_FILES_IN_FILESYSTEM
MD number Number of files in passive file system
Default setting: Minimum input limit: Maximum input limit:
100 64 512
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the number of files available in the part program memory. This machine data is
used to reserve memory in SRAM – approximately 320 bytes – for file management. Each
file created requires a minimum of one KB of memory for the file code. If the one KB limit for
the file code is exceeded another KB is reserved for the file.
Special cases, errors, ... The data in the buffer are lost when the machine data are changed!
...
Related to: MD 18280: MM_NUM_FILES_PER_DIR (number of files in directories)

18342 MM_CEC_MAX_POINTS
MD number Maximum table size for sag compensation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 2000
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 2
Meaning: Maximum table size for interpolative compensation between axes.

When MM_CEC_MAX_POINTS = 0, no memory is set up for the table. The sag


compensation function cannot then be used.
Special cases: A change in this machine data causes reconfiguration of the buffered memory area.

18350 MM_USER_FILE_MEM_MINIMUM
MD number Minimum NC program memory
Default setting: 20 Minimum input limit: 20 Maximum input limit: 100
Changes effective after POWER ON Protection level: 1 Unit: KB
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the minimum backup memory area remaining for the files of the passive file
system. The settable value depends on the hardware and software configurations (SRAM
memory allocation) and on MD 18230: MM_USER_MEM_BUFFERED (SRAM user
memory). When the SRAM memory is allocated, the remaining memory is allocated to the
files of the passive file system. In order to ensure that the file system can operate, the
memory space specified in MM_USER_FILE_MEM_MINIMUM must be available to the
memory. If this condition is not met, the memory is allocated with the default data on the
control and all the data stored in the SRAM by the user is lost. Alarm 6000 “Memory
allocation with standard machine data” is also output.
The available part program memory capacity is displayed in MD 18060:
INFO_FREE_MEM_STATIC (display of free static memory).
Special cases, errors, ... The buffered data are lost if this machine data is altered and the remaining memory is
... smaller than the value in MM_USER_FILE_MEM_MINIMUM.

Copyright © Siemens AG, 2005.


2/S7/4-44 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.1 General machine data

18500 MM_EXTCOM_TASK_STACK_SIZE
MD number Stack size for external communication task
Default setting: 17 Minimum input limit: 4 Maximum input limit: 20
Changes effective after POWER ON Protection level: 0 Unit: KB
Data type: DWORD Applies from SW: 1.1
Meaning: The size of the stack for external communication. The dynamic memory area is used.
Note This machine data is assigned internally by the control and must not be altered by the user.

18510 MM_SERVO_TASK_STACK_SIZE
MD number Stack size of servo task
Default setting: 8 Minimum input limit: 4 Maximum input limit: 20
Changes effective after POWER ON Protection level: 0 Unit: KB
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the stack size for the SERVO task. The dynamic memory is used for this purpose.
Note This machine data is assigned internally by the control and must not be altered by the user.

18520 MM_DRIVE_TASK_STACK_SIZE
MD number Stack size of drive task
Default setting: 8 Minimum input limit: 4 Maximum input limit: 20
Changes effective after POWER ON Protection level: 0 Unit: KB
Data type: DWORD Applies from SW: 1.1
Meaning: The stack size for the SIMODRIVE task is stored in this data.
The stack is set up in dynamic memory.
Note This machine data is assigned internally by the control and must not be altered by the user.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-45
Memory Configuration (S7) 06.05
4.2 Channelspecific machine data

4.2 Channelspecific machine data

27900 REORG_LOG_LIMIT
MD number Percentage of IPO buffer for log file enable
Default setting: 1 Minimum input limit: – Maximum input limit: –
Changes effective after POWER ON Protection level: 0 Unit: –
Data type: BYTE Applies from SW: 1.1
Meaning: The machine data defines the percentage of the IPO buffer above which data in the
REORG LOG memory can be released in stages, if the block preparation has been
interrupted due to an overflow of the REORG LOG data memory. The released data are no
longer available to the REORG function (References: /FB/, K1, “Mode Groups, Channels,
Program Operation Mode”). A consequence of this status is that a further REORG
command is canceled with an error message. If the status of non-reorganizability occurs,
warning 15110 is output. The output of the warning can be suppressed by enabling the
highest significant bit. The bit is set by adding the value 128 to the input value in
REORG_LOG_LIMIT.
In addition to the instructions of the NC blocks, the size of the IPO buffer and the REORG
data memory also affect the frequency of data release.
Related to .... MD 28000: MM_REORG_LOG_FILE_MEM (memory size for REORG)
MD 28060: MM_IPO_BUFFER_SIZE (no. of blocks in the IPO buffer)

28000 MM_REORG_LOG_FILE_MEM
MD number Memory size for REORG
Default setting: Minimum input limit: Maximum input limit:
10 1 500
Changes effective after POWER ON Protection level: 2 Unit: KB
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the size of dynamic memory for the REORG LOG data. The size of the memory
determines the amount of data available for the REORG function.
References /FB/, K1, “Mode Group, Channels, Program Operation”

Copyright © Siemens AG, 2005.


2/S7/4-46 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.2 Channelspecific machine data

28010 MM_NUM_REORG_LUD_MODULES
MD number Number of modules for local user variables with REORG
Default setting: 4 Minimum input limit: 0 Maximum input limit: 100
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the number of additional LUD modules provided for the REORG function (see
Description of Functions, Mode Groups, Channels, Program Operation Mode (K1)). If the
REORG function is not used, this value can be 0. The CNC always opens 12 LUD
modules: 8 for NC programs and 4 for asynchronous subprograms. One LUD module is
required for each NC program or asynchronous subprogram containing a definition of a
local variable. It may be necessary to increase this value for REORG if a larger IPO buffer
is provided and a large number of short NC programs containing LUD variable definitions
are active (the NC blocks of the program are stored in prepared format in the IPO buffer.
One LUD module is required for each of these programs. The capacity of the reserved
memory is affected by the number of LUD per NC program and their individual memory
requirements.
The LUD modules are stored in dynamic memory.
The memory required for managing the modules for local user variables with REORG can
be calculated as follows:
Memory = a x (200 + b x 160) bytes
a = Total number of LUD modules = 8 + 4 + value in MD:
MM_NUM_REORG_LUD_MODULES
b = Input value of MD 18240: MM_LUD_HASH_TABLE_SIZE (hash table size for user
variables)
The size of the LUD modules depends on the number of active LUD and their data types.
The memory for LUD modules is limited by MD 28000: MM_REORG_LOG_FILE_MEM
(memory size for REORG).
Application example(s) Example:
A main program consisting of 4 NC blocks is started:
– A LUD variable is defined in the first block.
– A subprogram, nested up to 8 levels, is called in each of the second and third blocks.
– The fourth block terminates the program.
Each subprogram comprises 3 NC blocks:
– An LUD variable is defined in the first block.
– A subprogram call to the next program level is executed in the second block.
– The third block terminates the subprogram.
Instead of a subprogram call, the subprogram in the last program level contains a different
command, such as a traversing movement. This makes a total of 15 programs with 46 NC
blocks which can all be stored in prepared format in the IPO buffer. Since the REORG
function requires all the data of the 46 blocks, LUD modules for 3 programs are missing. A
value of 3 for the additionally required LUD data blocks must be entered in
MM_NUM_REORG_LUD_MODULES for the example given.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-47
Memory Configuration (S7) 06.05
4.2 Channelspecific machine data

28020 MM_NUM_LUD_NAMES_TOTAL
MD number Number of local user variables
Default setting: Minimum input limit: Maximum input limit:
200 0.0 plus
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies from SW: 1.1
Meaning: Defines the number of variables for the local user data (LUD) which are permitted to exist in
the active sections of the program. Approximately 150 bytes of memory per variable are
reserved for the names of the variables and the variable value. The memory required for
the variable value is equal to the size of the data type. If the total of the local user variables
from the active main program and the related subprograms are larger than the defined limit,
the variables which are over the limit are not accepted during execution of the program.
Dynamic memory is used to store the variable names and values.

Overview of the memory used by data types:


Data type Memory used
REAL 8 bytes
INT 4 bytes
BOOL 1byte
CHAR 1byte
STRING 1 byte per character, 200 characters per string
AXIS 4 bytes
FRAME 400 bytes

28040 MM_LUD_VALUES_MEM
MD number Memory size for local user variables
Default setting: 12, 12, ..., Minimum input limit: 0.0 Maximum input limit: plus
Changes effective after POWER ON Protection level: 2 Unit: KB
Data type: DWORD Applies from SW: 4.3
Meaning: This MD defines the amount of memory space available for LUD variables.
The number of available LUD is exhausted when one of the limit values in either
MD 28020: MM_NUM_LUD_NAMES_TOTAL or MM_LUD_VALUES_MEM is reached.
The memory defined here is subdivided into (MM_LUD_VALUES_MEM * 1024) /
MM_MAX_SIZE_OF_LUD_VALUE blocks and allocated to part programs which request
memory. Each part program which contains at least one definition of LUD variables or
which has call parameters uses at least one such block.
It should be remembered that several part programs can be open at once and thus use
memory on the NCK. The number depends on the type of programming, the program length
and the size of the internal NCK block memory upwards of (MM_IPO_BUFFER_SIZE,
MM_NUM_BLOCKS_IN_PREP).
Related to: MD 28020: MM_NUM_LUD_NAMES_TOTAL (number of local user variables (DRAM))

28050 MM_NUM_R_PARAM
MD number Number of channel-specific R parameters
Default setting: Minimum input limit: 0 Maximum input limit: 32535
100
Changes effective after POWER ON Protection level: 0 / 0 Unit: –
Data type: DWORD Applies from SW: 4.3
Meaning: Defines the number of R parameters available on the channel. A maximum of 32535 R
parameters are available for each channel. This machine data is used to reserve 8 bytes of
backup user memory for each R parameter. R parameters require substantially less
management overhead compared with LUD and GUD variables.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...

Copyright © Siemens AG, 2005.


2/S7/4-48 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.2 Channelspecific machine data

28060 MM_IPO_BUFFER_SIZE
MD number Number of NC blocks in the IPO buffer
Default setting: Minimum input limit: Maximum input limit:
10, 10, 10, 10, 10, 10, 10, 10 2
NCU 571: 300
NCU 572, 573: 300
810D: 180
810D_2: 300
Changes effective after POWER ON Protection level: 0 / 0 Unit: –
Data type: DWORD Applies from SW: 4.3
Meaning: Defines the number of blocks in the interpolation buffer. This buffer contains prepared NC
blocks which are provided for interpolation. Approximately 10 Kbytes of dynamic user
memory is reserved for each NC block. The data also limits the number of Look Ahead
blocks for limiting the speed in the Look Ahead function.

The MM_IPO_BUFFER_SIZE is set by the system.


Related to: MD 28070: MM_NUM_BLOCKS_IN_PREP (number of blocks for block preparation)
SD MAX_BLOCKS_IN_IPOBUFFER

28070 MM_NUM_BLOCKS_IN_PREP
MD number Number of blocks for block preparation
Default setting: Minimum input limit: Maximum input limit:
NCU 570: 38 20 NCU 570: ***
NCU 571: 30 NCU 571: ***
NCU 572: 38 NCU 572: ***
NCU 573: 38 NCU 573: ***
810D: 30 810D: ***
810D_2: 38 810D_2: ***
Changes effective after POWER ON Protection level: 0 / 0 Unit: Number of internal
blocks
Data type: DWORD Applies as of SW 4.3
Meaning: Defines the number of blocks available for NC block preparation. This figure is determined
mainly by the system software and is used for optimization. A part of dynamic memory is
reserved (approximately 10 KB per NC block).
Related to: MD 28060: MM_IPO_BUFFER_SIZE (number of NC blocks with IPO buffer)

28080 MM_NUM_USER_FRAMES
MD number Number of settable frames
Default setting: 5 Minimum input limit: 5 Maximum input limit: 100
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies as of SW 1.1
Meaning: Defines the number of predefined user frames. Approximately 400 bytes of backup memory
are reserved per frame.
The standard configuration on the system provides four frames for G54 to G57 and one
frame for G500.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-49
Memory Configuration (S7) 06.05
4.2 Channelspecific machine data

28085 MM_LINK_TOA_UNIT
MD number Allocation of a TO unit to a channel
Default setting: Minimum input limit: Maximum input limit:
1, 2, 3, 4, 5 ... 1 Max. no. chan. in system –1
Changes effective after POWER ON Protection level: Unit: –
Data type: DWORD Applies as of SW 2
Meaning: A TO unit is assigned to each channel through a default setting. The memory is thus
reserved for the data blocks (tools, magazines).
A TOA unit can also be assigned to several channels.
Def.: The TOA area is the sum of all TOA and magazine blocks in the NC.
The TOA unit consists of a TOA block and, with activated TM function, a magazine block.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...

28090 MM_NUM_CC_BLOCK_ELEMENTS
MD number Number of block elements for Compile cycles
Default setting: Minimum input limit: Maximum input limit:
Compile cycles: 0 0 0
NC570: – – –
840di: 2, 2, 0, 0... – –
Transf. 810D: 2, 2, 0, 0 ... – –
Changes effective after POWER ON Protection level: 0 Unit: –
Data type: DWORD Applies as of SW 1.1
Meaning: The value defines the number of block elements used for compile cycles.
Approximately 1.2 KB of dynamic memory per block element is required for SW 2.

28100 MM_NUM_CC_BLOCK_USER_MEM
MD number Size of block memory for Compile cycles
Default setting: Minimum input limit: Maximum input limit:
NCU 570: – – –
NCU 572, 573: 256, 0, 0, 0... – –
840Di: 2, 2, 0, 0, – –
810D: 2, 2, 0, 0, 0 – –
Changes effective after POWER ON Protection level: 0 Unit: KB
Data type: DWORD Applies as of SW 1.1
Meaning: The value defines the total capacity of block memory available to the user in the dynamic
memory area for the compile cycles. The memory is allocated in staggered blocks of 128
bytes.

Copyright © Siemens AG, 2005.


2/S7/4-50 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.2 Channelspecific machine data

28200 MM_NUM_PROTECT_AREA_CHAN
MD number Number of modules for channel-specific protection zones
Default setting: Minimum input limit: Maximum input limit:
0 0 10
Changes effective after POWER ON Protection level: 2 Unit:
Data type: DWORD Applies as of SW 2
Meaning: This machine data defines how many blocks are created for channel-specific protection
zones.
Related to .... MD 28210: MM_NUM_PROTECT_AREA_ACTIVE (number of simultaneously active
protection zones)
MD 18190: MM_NUM_PROTECT_AREA_NCK (number of files for machine-related
protection zones (SRAM))
Additional references /FB/, A3, “Axis Monitoring, Protection Zones”

28210 MM_NUM_PROTECT_AREA_ACTIVE
MD number Number of simultaneously active protection zones
Default setting: Minimum input limit: Maximum input limit:
0 0 10
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies as of SW 2
Meaning: The machine data specifies for each channel the number of protection zones that may be
activated simultaneously. The NCU-specific max. input limit specified above cannot be
exceeded in total for all channel-specific parameters.
A numerical value higher than the setting in MD 18190:
MM_NUM_PROTECT_AREA_NCK +
MD 28200: MM_NUM_PROTECT_AREA_CHAN is not meaningful.
Related to .... MD 28200: MM_NUM_PROTECT_AREA_CHAN (number of blocks for channel-specific
protection zones)
MD 281212: MM_NUM_PROTECT_AREA_CONTOUR (elements for active protection
zones (DRAM))
MD 18190: MM_NUM_PROTECT_AREA_NCK (number of files for machine-related
protection zones (SRAM))
Additional references /FB/, A3, “Axis Monitoring, Protection Zones”

28212 MM_NUM_PROTECT_AREA_CONTOUR
MD number Elements for active protection zones (DRAM)
Default setting: Minimum input limit: Maximum input limit:
30 0 50
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies as of SW 6.4
Meaning: This machine data specifies for each channel the number of internal contour elements to be
kept available simultaneously for the individual active protection zones.
Dynamic memory space is used,
determining the amount of memory required for active protection zones. This machine data
only takes effect when MD 28210: MM_NUM_PROTECT_AREA_ACTIVE does not equal
zero.
Related to .... MD 28210: MM_NUM_PROTECT_AREA_ACTIVE (number of simultaneously active
protection zones)
Additional references /FB/, A3, “Axis Monitoring, Protection Zones”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-51
Memory Configuration (S7) 06.05
4.2 Channelspecific machine data

28500 MM_PREP_TASK_STACK_SIZE
MD number Stack size for preparation task
Default setting: Minimum input limit: Maximum input limit:
45 10 70
Changes effective after POWER ON Protection level: 0 Unit: KB
Data type: DWORD Applies as of SW 1.1
Meaning: Defines the stack size for the preparation task. The stack is stored in dynamic memory.
Note This machine data is assigned internally by the control and must not be altered
by the user.

28510 MM_IPO_TASK_STACK_SIZE
MD number Stack size of IPO task
Default setting: Minimum input limit: Maximum input limit:
NCU 571: 12 NCU 571: 4 NCU 571: 40
NCU 572: 12 NCU 572: 4 NCU 572: 40
NCU 573: 12 NCU 573: 4 NCU 573: 40
810D : 12 810D :4 810D : 40
Changes effective after POWER ON Protection level: 0 Unit: KB
Data type: DWORD Applies as of SW 1.1
Meaning: The stack size for the IPO task is stored in this data. The stack is set up in dynamic
memory.
Note This machine data is assigned internally by the control and must not be altered
by the user.

28550 MM_PRSATZ_MEM_SIZE
MD number Available memory for internal blocks
Default setting: 400 Minimum input limit: 100 Maximum input limit: 4000
Changes effective after POWER ON Protection level: 0 Unit: KB
Data type: DWORD Applies as of SW 1.1
Meaning: None.
This MD no longer exists in SW 2.

Copyright © Siemens AG, 2005.


2/S7/4-52 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
4.3 Axis-specific machine data

4.3 Axis-specific machine data

38000 MM_ENC_COMP_MAX_POINTS
MD number Number of intermediate points with interpolatory compensation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 5000
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies as of SW 1,1
Meaning: Defines the number of leadscrew compensation values per encoder for the axis. This value
reserves 8 bytes of backup user memory for each compensation value. If more memory for
compensation values is required than available in the SRAM, the control outputs alarm
6000 “Memory allocation with standard machine data” on power-up.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Additional references /FB/, K3, “Compensation”

38010 MM_QEC_MAX_POINTS
MD number Number of values for quadrant error compensation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1040
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: DWORD Applies as of SW 2
Meaning: Number of possible values for quadrant error compensation with neural network (option).
When value = 0 : The quadrant error compensation function cannot be activated, no
memory is set up for the function.
Special cases, errors, ... The buffered data are lost if this machine data is altered!
...
Additional references /IAD/, “SINUMERIK 840D Installation and Start-up Guide”
/FB/, K3, “Compensations”

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/4-53
Memory Configuration (S7) 06.05
4.3 Axis-specific machine data

Notes

Copyright © Siemens AG, 2005.


2/S7/4-54 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
7.1 Machine data

Signal Descriptions 5
None
J

Example 6
None
J

Data Fields, Lists 7


7.1 Machine data

Number Names Name Refer-


ence
General ($MN_ ... )
18050 INFO_FREE_MEM_DYNAMIC Display data of the free dynamic memory
18060 INFO_FREE_MEM_STATIC Display data of the free static memory
18070 INFO_FREE_MEM_DPR Display data of free memory in DUAL_PORT
RAM
18080 MM_TOOL_MANAGEMENT_MASK Screen form for reserving memory for the tool /FBW/
management
18082 MM_NUM_TOOL Number of tools managed by NCK
18084 MM_NUM_MAGAZINE Number of magazines managed by NCK /FBW/
18086 MM_NUM_MAGAZINE_LOCATION Number of magazine locations /FBW/
18090 MM_NUM_CC_MAGAZINE_PARAM Compile cycles of tool management: Number /FBW/
of magazine data

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/7-55
Memory Configuration (S7) 06.05
7.1 Machine data

Number Names Name Refer-


ence
General ($MN_ ... )
18092 MM_NUM_CC_MAGLOC_PARAM Compile cycles of tool management: Number /FBW/
of magazine location data
18094 MM_NUM_CC_TDA_PARAM Compile cycles of tool management: Number /FBW/
of TDA data
18096 MM_NUM_CC_TOA_PARAM Compile cycles of tool management: Number /FBW/
of TOA data
18098 MM_NUM_CC_MON_PARAM Compile cycles of tool management: Number /FBW/
of monitor data
18100 MM_NUM_CUTTING_EDGES_IN_TOA Number of tool offsets in NCK
18118 MM_NUM_GUD_MODULES Number of GUD modules
18120 MM_NUM_GUD_NAMES_NCK Number of global user variables
18130 MM_NUM_GUD_NAMES_CHAN Number of channel-specific user variables
18140 MM_NUM_GUD_NAMES_AXIS No. of axis-specific user variables
18150 MM_GUD_VALUES_MEM Memory reserved for global user variables
18160 MM_NUM_USER_MACROS Number of macros
18170 MM_NUM_MAX_FUNC_NAMES Number of miscellaneous functions
18180 MM_NUM_MAX_FUNC_PARAM Number of additional parameters
18190 MM_NUM_PROTECT_AREA_NCK Number of protection zones in NCK /FB/, A3
18210 MM_USER_MEM_DYNAMIC User memory in DRAM
18220 MM_USER_MEM_DPR User memory in dual-port RAM
18230 MM_USER_MEM_BUFFERED User memory in SRAM
18240 MM_LUD_HASH_TABLE_SIZE Hash table size for user variables
18242 MM_MAX_SIZE_OF_LUD_VALUE Maximum field size of the LUD variables
18250 MM_CHAN_HASH_TABLE_SIZE Hash table size for channel-specific data
18260 MM_NCK_HASH_TABLE_SIZE Hash table size for global data
18270 MM_NUM_SUBDIR_PER_DIR Number of subdirectories
18280 MM_NUM_FILES_PER_DIR Number of files per directory
18290 MM_FILE_HASH_TABLE_SIZE Hash table size for files in a directory
18300 MM_DIR_HASH_TABLE_SIZE Hash table size for subdirectories
18310 MM_NUM_DIR_IN_FILESYSTEM Number of directories in passive file system
18320 MM_NUM_FILES_IN_FILESYSTEM Number of files in passive file system
18330 MM_CHAR_LENGTH_OF_BLOCK Max. length of an NC block
18340 MM_NUM_CEC_NAMES Number of LEC tables
18342 MM_CEC_MAX_POINTS Maximum table size for sag compensation
18350 MM_USER_FILE_MEM_MINIMUM Minimum NC program memory
18500 MM_EXTCOM_TASK_STACK_SIZE Stack size for external communication task
18510 MM_SERVO_TASK_STACK_SIZE Stack size of servo task
18520 MM_DRIVE_TASK_STACK_SIZE Stack size of drive task
Channelspecific ($MC_ ... )

Copyright © Siemens AG, 2005.


2/S7/7-56 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Memory Configuration (S7)
7.2 Interrupts

Number Names Name Refer-


ence
General ($MN_ ... )
20096 T_M_ADDRESS_EXIT_SPINO Spindle number as address extension /FBW/,
(SW 5 and higher) W1
27900 REORG_LOG_LIMIT Percentage of IPO buffer for log file enable
28000 MM_REORG_LOG_FILE_MEM Memory size for REORG /FB/, K1
28010 MM_NUM_REORG_LUD_MODULES Number of modules for local user variables
with REORG
28020 MM_NUM_LUD_NAMES_TOTAL Number of local user variables
28040 MM_LUD_VALUES_MEM Memory size for local user variables
28050 MM_NUM_R_PARAM Number of channel-specific R parameters
28060 MM_IPO_BUFFER_SIZE Number of NC blocks in the IPO buffer
28070 MM_NUM_BLOCKS_IN_PREP Number of blocks for block preparation
28080 MM_NUM_USER_FRAMES Number of settable frames
28085 MM_LINK_TOA_UNIT Allocation of a TO unit to a channel /FBW/,
W1
28090 MM_NUM_CC_BLOCK_ELEMENTS Number of block elements for Compile cycles
28100 MM_NUM_CC_BLOCK_USER_MEM Size of block memory for Compile cycles
28200 MM_NUM_PROTECT_AREA_CHAN Number of modules for channel-specific /FB/, A3
protection zones
28210 MM_NUM_PROTECT_AREA_ACTIVE Number of simultaneously active protection /FB/, A3
zones
28212 MM_NUM_PROTECT_AREA_CONTOUR Elements for active protection zones (DRAM) /FB/, A3
28500 MM_PREP_TASK_STACK_SIZE Stack size of preparation task
28510 MM_IPO_TASK_STACK_SIZE Stack size of IPO task
28550 MM_PRSATZ_MEM_SIZE Available memory for internal blocks
Axisspecific ($MA_ ... )
38000 MM_ENC_COMP_MAX_POINTS Number of intermediate points with /FB/, K3
interpolatory compensation
38010 MM_QEC_MAX_POINTS Number of values for quadrant error /FB/, K3
compensation /IAD/

7.2 Interrupts
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, “Diagnostics Guide”
or in the Online help.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/S7/7-57
Memory Configuration (S7) 06.05
7.2 Interrupts

Notes

Copyright © Siemens AG, 2005.


2/S7/7-58 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
09.01
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Indexing Axes (T1)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/2-5
2.1 Traversing indexing axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/2-5
2.1.1 Traversing indexing axes in manual JOG mode . . . . . . . . . . . . . . . . 2/T1/2-5
2.1.2 Traversing indexing axes in AUTOMATIC modes . . . . . . . . . . . . . . . 2/T1/2-7
2.1.3 Traversing of indexing axes by PLC . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/2-8
2.2 Parameterization of indexing axes . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/2-9
2.3 Programming of indexing axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/2-10
2.4 Equidistant index intervals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/2-15
2.4.1 Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/2-15
2.4.2 Modified activation of machine data . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/2-18
2.4.3 Examples of equidistant indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/2-19
2.5 Starting up indexing axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/2-21
2.6 Special features of indexing axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/2-24
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/4-25
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/4-25
4.1 General machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/4-25
4.2 Axis-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/4-29
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/5-31
5.1 Axisspecific signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/5-31
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/7-33
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/7-33
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/7-33
7.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/7-33
7.3 Setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/7-34
7.4 System variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/7-34
7.5 Alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/T1/7-34
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/i
06.05

Notes

Copyright © Siemens AG, 2005.


2/T1/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
1 Brief Description

Brief Description 1
Indexing axes In certain applications, the axis is only required to approach specific grid points
on machine tools (e.g. location numbers).
It is necessary to approach the defined grid points (called indexes) both in auto-
matic and set-up modes. These axes are known as “indexing axes”. The posi-
tions defined on the indexing axes are known as “coded positions” or “index
positions”.
Special functions are available for equidistant indexing on linear and rotary axes
and for the Hirth tooth system.

Applications Indexing axes are used predominantly in connection with specific types of tool
magazine such as tool turrets, tool chain magazines or tool cartridge maga-
zines. The coded positions refer to the individual locations of the tools in the
magazines. During a tool change, the magazine is positioned at the location
containing the tool to be loaded.

Display index A system variable can specify the number of the current indexing position de-
pending on the specifications in a machine data:
– when the exact stop fine window of the index position is reached or
– when half the distance to the next indexing position is crossed.
The programmed index position can be scanned using a further system vari-
able.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/1-3
Indexing Axes (T1) 06.05
1 Brief Description

Notes

Copyright © Siemens AG, 2005.


2/T1/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
2.1 Traversing indexing axes

Detailed Description 2
2.1 Traversing indexing axes

General Indexing axes can be traversed manually in the setup mode types JOG and
INC, from a parts program with special instructions for “Coded positions” and by
the PLC. When the indexing position has been reached, the “indexing axis in
position” interface signal (DB31–61, DBX76.6) is output to the PLC.
Hirth indexing axes cannot be traversed in JOG mode before reference point
approach.

2.1.1 Traversing indexing axes in manual JOG mode

Reference point An indexing axis approaches the reference point in the same way as other
approach axes. It is not necessary for the reference point to match an indexing position.
Only when the reference point has been reached (IS “Referenced/synchro-
nized 1 or 2” (DB31–61, DBX60.4 or 5) = “1”) does the indexing axis start to
approach indexing positions in JOG mode with JOG and incremental traversing.
Exception: When traversing with the handwheel, no indexing positions are ap-
proached.

If the axis is not referenced (IS “Referenced/synchronized 1 or 2” = “0”), the in-


dexing positions are ignored when the axis is traversed in manual jog mode!

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/2-5
Indexing Axes (T1) 06.05
2.1 Traversing indexing axes

Continuous
traversal in JOG
S Jog mode (SD: JOG_CONT_MODE_LEVELTRIGGRD = “1”):
Pressing a “+” or “–” traversing key causes the indexing axis to move in the
same way as with conventional JOG traversing. When the traversing key is
released, the indexing axis traverses to the next indexing position in the di-
rection of traversing.

S Continuous mode (SD: JOG_CONT_MODE_LEVELTRIGGRD = “0”):


Pressing the traversing key briefly (first rising signal edge) starts the travers-
ing movement of the indexing axis in the desired direction. Traversing con-
tinues when the traversing key is released. When the traversing key is
pressed again (second rising signal edge), the indexing axis traverses to the
next indexing position in the direction of traversing.
Indexing axes are generally traversed in JOG mode (standard setting). Continu-
ous mode plays a less important role.
If the operator changes the direction of traversing before the indexing position
has been reached, the indexing axis is positioned on the next indexing position
in the direction of traversing. The traversing movement must be started in the
opposite direction.
For further information on continuous traversing in jog or continuous mode,
please see:
References: /FB/, H1 “Manual and Handwheel Travel”

Incremental Irrespective of the current increment setting (INC1; ... , INCvar), the indexing
jogging (JOG INC) axis always traverses through one indexing position in the selected direction
when a traversing key “+” or “–” is pressed.
In jog mode, the traversing movement is interrupted when the traversing key is
released. The indexing position can be approached by pressing the traversing
key again.
In continuous mode, the traversing movement is aborted when the traversing
key is pressed again. The indexing axis is, in this case, not located on the in-
dexing position.

Between indexing If an indexing axis is situated between 2 indexing positions, then it approaches
positions the next-higher indexing position when the “+” traversing key is pressed in JOG-
INC mode. Similarly, pressing the “–” traversing key causes the next-lower in-
dexing position to be approached.

Handwheel When the indexing axis is traversed by means of the handwheel in JOG mode,
traversal the indexing positions are ignored. Rotating the handwheel traverses the in-
dexing axis to any position in mm, inches or degrees, according to the selected
unit of measurement.
The PLC user program can disable the handwheel for traversing the indexing
axis.

Signal from PLC When the indexing axis is traversed in JOG mode, the signal “Indexing axis in
“Indexing axis in position” (DB31–61, DBX76.6) is output at the PLC interface to indicate that an
position” indexing position has been reached. The indexing axis must have been refer-
enced (IS “Referenced/synchronized 1 or 2” = “1”).

Copyright © Siemens AG, 2005.


2/T1/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
2.1 Traversing indexing axes

Alarms in JOG If the indexing axis leaves the traversing range defined in the indexing position
mode table (see 2.2) when traversing in JOG mode, alarm 20054 “wrong index for
indexing axis in JOG” is output.

Revolutional In JOG mode the behavior of the axis/spindle also depends on the setting of
feedrate setting data JOG_REV_IS_ACTIVE (revolutional feedrate when JOG active).

S If this setting data is active, an axis/spindle is always moved with revolu-


tional feedrate MD JOG_REV_VELO (revolutional feedrate with JOG) or MD
JOG_REV_VELO_RAPID (revolutional feedrate with JOG with rapid tra-
verse overlay) depending on the master spindle.

S If the setting data is not active, the behavior of the axis/spindle depends on
the setting data ASSIGN_FEED_PER_REV_SOURCE (revolutional fee-
drate for positioning axes/spindles).

S If the setting data is not active, the behavior of a geometry axis on which a
frame with rotation is effective depends on the channel-specific setting data
JOG_FEED_PER_REV_SOURCE. (In the operating mode JOG, revolu-
tional feedrate for geometry axes on which a frame with rotation is effective).

2.1.2 Traversing indexing axes in AUTOMATIC modes

Traversal to An axis defined as an indexing axis can be made to approach any selected
selected positions position from the NC parts program in AUTOMATIC mode. This includes posi-
tions between the defined indexing positions. These positions are programmed,
in the usual way, in the unit of measurement (mm/inches or degrees) for the
axis. The general programming instructions used for this purpose (G90, G91,
AC, IC, etc.) are described in the Programming Guide.

Traversal to Special instructions can also be programmed in the parts program:


“Coded positions”
S CAC Approach absolute coded position

S CACP Approach absolute coded position in positive direction

S CACN Approach absolute coded position in negative direction

S CIC Approach incremental coded position

S CDC Approach coded position along direct (shortest) path


to traverse in the specified manner.
With absolute positioning, the indexing position to be approached is pro-
grammed, and with incremental positioning, the number of indexes to be tra-
versed in the “+” or “–” direction is programmed.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/2-7
Indexing Axes (T1) 06.05
2.1 Traversing indexing axes

On rotary axes, the indexing position can be approached directly across the
shortest path (CDC) or with a defined direction of rotation (CACP, CACN).
Please refer to Section 2.3 for further information on the special programming
instructions for indexing axes.

Interface signal If the “Exact stop fine” window is reached and the indexing axis is positioned on
“Indexing axis in an indexing position, the signal is enabled regardless of how the indexing posi-
position” tion was reached.

2.1.3 Traversing of indexing axes by PLC

Traversal from PLC Indexing axes can also be traversed from the PLC user program. There are
various methods:

S With concurrent positioning axes


In this case, the indexing position to be approached can be specified by the
PLC.
References: /FB/, P2, “Positioning Axes”

S With asynchronous subprograms (ASUB)


References: /FB/, K1 “Mode Groups, Channels, Program Operation”

Copyright © Siemens AG, 2005.


2/T1/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
2.2 Parameterization of indexing axes

2.2 Parameterization of indexing axes

Definition of the An axis (linear or rotary axis) can be defined as an indexing axis with the axial
indexing axis machine data MD 30500: INDEX_AX_ASSIGN_POS_TAB. The number of the
indexing position table (1 or 2) must be entered in the machine data.
Several axes can be assigned to an indexing position table on condition that
these indexing axes are of the same type (linear axis, rotary axis, modulo 360°
function). Otherwise alarm 4080 “Incorrect configuration for indexing axis in MD
[Name]” is output at boot.

Indexing position The axis positions (in mm or degrees) assigned to the indexes must be stored
tables for each indexing axis in the form of a table in machine data. Any value can be
entered for the distance between the individual indexing positions.
The following should be noted when entering the indexing positions:

Number of tables Up to two indexing position tables are permitted:


MD 10910: INDEX_AX_POS_TAB_1 [n]
MD 10930: INDEX_AX_POS_TAB_2[n]

Number of entries Up to 60 positions can be entered in each indexing position table [n = 0 ... 59].
for each table
The actual number of entries used must be defined with machine data
MD 10900: INDEX_AX_LENGTH_POS_TAB_1 or
MD 10920: INDEX_AX_LENGTH_POS_TAB_2
for table 1 and/or 2.
All positions entered in the table which are higher than the number defined in
the machine data are inactive.

Inch/metric The indexing positions refer to the configured system of units in MD 10270:
switchover POS_TAB_SCALING_SYSTEM.
MD 10270: POS_TAB_SCALING_SYSTEM=0: metric
MD 10270: POS_TAB_SCALING_SYSTEM=1: inch

Note
MD 10270 defines the system of units for position specifications for the
following machine data:
MD 10900: INDEX_AX_POS_TAB_1
MD 10920: INDEX_AX_POS_TAB_2
MD 10270 also affects SD 41500 to SD 41507 (see /N3/).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/2-9
Indexing Axes (T1) 06.05
2.3 Programming of indexing axes

Entry format
S The indexing positions must be entered in the table in ascending order
(starting with the negative to the positive traversing range) with no gaps be-
tween the entries. Consecutive position values cannot be identical.

S The axis positions must be entered in the basic coordinate system.


If the indexing axis is defined as a rotary axis with modulo 360o (MD:
IS_ROT_AX = “1” and MD: ROT_IS_MODULO = “1”), the following points
should also be observed with respect to indexing positions:
S Indexing positions may be programmed in the range from 0o x Pos < 360o .
Positions outside this range generate alarm 4080 on power-up.

S Since the indexing axis is defined as a continuously rotating rotary axis, in-
dexing position 1 is approached after the highest valid indexing position in
the table has been reached and the axis continues to traverse in the positive
direction with INC. Similarly, indexing position 1 is followed by the highest
valid indexing position in the negative direction with INC.

2.3 Programming of indexing axes

Note Detailed information about programming indexing axes can be found in


References: /PA/, “Programming Guide: Fundamentals”

Coded position To allow indexing axes to be positioned from the NC parts program, special in-
structions (so-called Coded positions) are provided with which the indexing
numbers (e.g. location number) are programmed rather than axis positions in
mm or degrees. The following coded position instructions are possible, depend-
ing on whether the indexing axis is defined as a linear or rotary axis:
Indexing axis is a linear axis: CAC(i), CIC(i)
Indexing axis is a rotary axis: CAC(i), CIC(i), CACP(i), CACN(i), CDC(i)
i = coded position (indexing position)
Value range of i: 0 ... 59; integer; with the exception of CIC positive only

Absolute Indexing axis B approaches coded position (index) 20 in absolute mode. The
POS[B]=CAC(20) direction of traversing depends on the current actual position.

Absolute in Indexing axis B approaches coded position (index) 10 in absolute mode in the
positive direction positive direction of rotation (only possible with rotary axes).
POS[B]=CACP(10)

Absolute in Indexing axis B approaches coded position (index) 10 in absolute mode in the
negative direction negative direction of rotation (only possible with rotary axes).
POS[B]=CACN(10)

Copyright © Siemens AG, 2005.


2/T1/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
2.3 Programming of indexing axes

Direct absolute Indexing axis B approaches indexing position 50 directly along the shortest path
POS[B]=CDC(50) (only possible with rotary axes).

Incremental Indexing axis B traverses incrementally by four indexing positions in a negative


POS[B]=CIC(–4) direction from its current position.

POS[B]=CIC(35) Indexing axis B traverses incrementally from the current indexing position
across 35 indexing positions in the positive direction.
The leading sign defines the direction of approach.

Note
On modulo rotary axes, the indexing positions are divided in factors of 360
degrees and are approached directly.

Between indexing If an indexing axis is located between two indexing positions in automatic mode,
positions the program command

POS[B]=CIC(1) causes the next higher indexing position to be approached.


Similarly, the program instruction
POS[B]=CIC(–1) causes the next lower indexing position to be approached.
With
POS[B]=CIC(0) the indexing axis does not traverse.

Display of The last programmed indexing position can be read using system variable
indexing position $AA_PROG_INDEX_AX_POS.
The system variable for the number of the last overrun indexing position
$AA_ACT_INDEX_AX_POS can display, depending on the setting in
MD 10940: INDEX_AX_MODE:
MD 10940: $MN_INDEX_AX_MODE Bit0 = 0
(compatible behavior to older SW versions) means:
The indexing position changes when the indexing position is reached (Exact
stop fine window) and remains unchanged until the next indexing position is
reached. The indexing area thus begins at one indexing position and ends in
front of the next indexing position.

MD 10940: $MN_INDEX_AX_MODE Bit0 = 1


means:
The indexing position changes when half the indexing position is reached.
Therefore, a quasi symmetrical indexing area is applied around the indexing
position (symmetrical only for linear axes with equidistant indexing or modulo
rotary axes with which the indexing area is an integer multiple of the modulo
area (MD 30330: MODULO_RANGE), otherwise proportional to the dis-
tances between the indexing positions).
For modulo rotary axes, the area between the last indexing position and the
first indexing position is proportionally divided in accordance with the lengths
of the first indexing area and last indexing area.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/2-11
Indexing Axes (T1) 06.05
2.3 Programming of indexing axes

The following figure illustrates the difference for Bit0 = 0 and Bit0 = 1:

Explanations:
TP ––> programmed indexing position
TPA––> displayed indexing position
GHFF––> exact stop fine window

Fig. 2-1 Indexing position displays, linear axis (tabular indexing axis positions)

Fig. 2-2 Indexing position displays, modulo rotary axis (tabular indexing positions)

$AA_ACT_INDEX_ The expected value ranges of system variable $AA_ACT_INDEX_AX_POS


AX_POS_NO (OPI variable aaActIndexAxPosNo) are for:

Copyright © Siemens AG, 2005.


2/T1/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
2.3 Programming of indexing axes

Table 2-1 Indexing positions from table

Modulo rotary axis 1...n None 0, n = maximum 60


Linear axis 0* 1 2 3 . . . 59 60 61* * 0: below,
61: above the total
indexing area

Table 2-2 Equidistant indexing positions

Modulo rotary axis 1 ... m None 0,


m = denominator (numerator)
Linear axis 0 1 2 3 . . . 65535 actIndexAxPosNo (old variable)
Linear axis ... –3 –2 –1 0 1 2 3 . . . aaActIndexAxPosNo

Note
The OPI variable actIndexAxPosNo is only present for compatibility
purposes.
If possible, only the OPI variable aaActIndexAxPosNo should be
used.

Next indexing
position
Response to command “Traverse to next indexing position”
Bit0 = 0: Next indexing position is approached
Bit0 = 1: The next indexing position in the direction of motion is always
approached

Explanation:
Bit0 = 1 and the axis is below the indexing position (or outside of the Exact stop
fine window):
Although, e.g., $AA_ACT_INDEX_AX_POS_NO is indicating indexing position
2, indexing position 2 and NOT indexing position 3 is approached exactly. The
next indexing position (in this case indexing position 3) is not approached with
the “Traverse to next position” command until the axis is located exactly at (ex-
act stop fine) or above the indexing position.
The indexing position which is the next in the direction of motion is always ap-
proached first!
Therefore, the “Traverse to next position” command may have to be issued
twice so that the next indexing position number can be reached from the cur-
rently displayed indexing position (e.g. from 2 to 3).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/2-13
Indexing Axes (T1) 06.05
2.3 Programming of indexing axes

Alarms If an indexing position is programmed outside the valid range of the indexing
position table, alarm 17510 “Impermissible index for indexing axis“ is output.
When an indexing position is programmed for an axis, alarm 17500 “Axis is not
an indexing axis” is generated if an indexing position table is not assigned to
this axis (MD: INDEX_AX_ASSIGN_POS_TAB (axis is an indexing axis)).

FRAMES Since the control interprets the positions stored in the indexing position table as
programmed positions in mm, inches or degrees,
FRAMES are not disabled with indexing axes.
FRAMES are not generally required with indexing axes, depending on the ap-
plication. It is therefore in most cases advisable to suppress FRAMES and zero
offsets in the parts program for indexing axes.

Copyright © Siemens AG, 2005.


2/T1/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
2.4 Equidistant index intervals

2.4 Equidistant index intervals

2.4.1 Function

General There are:

S Any number of equidistant index intervals


S Modified action of MD for indexing axes
Equidistant index intervals can be used for:

S Linear axes
S Modulo rotary axes
S Rotary axes

Distance between The index distance is determined as follows for equidistant index intervals:
indexes
Numerator (MD 30501: $MA_INDEX_AX_NUMERATOR)
Distance =
Denominator (MD 30502: $MA_INDEX_AX_DENOMINATOR)

Linear axis

MD 30503: $MA_INDEX_AX_OFFSET (1st distance from zero point,


positive)

0
...
Distance (same for all indexes, see above)

MD 30503: $MA_INDEX_AX_OFFSET (1st distance from zero point,


negative)

0
...
Distance (same for all indexes, see above)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/2-15
Indexing Axes (T1) 06.05
2.4 Equidistant index intervals

Modulo rotary axis

Numerator (MD 30330: $MA_MODULO_RANGE)


Index =
Denominator (MD 30502: $MA_INDEX_AX_DENOMINATOR)

MD 30503: $MA_INDEX_AX_OFFSET

0o
Spacing

.
.
.
.

Size of modulo range (MD 30330: $MA_MODULO_RANGE)


Index =
Number of indexes in modulo range (MD 30502: $MA_INDEX_AX_DENOMINATOR)

Activation The functions with equidistant indexing for linear axes and rotary axes or mo-
dulo rotary axes are activated by specifying “table number” 3 in MD 30500:
$MA_INDEX_AX_ASSIGN_POS_TAB[axis].

Hirth tooth system

Introduction With Hirth tooth systems, positions of rotation on a rotary axis are usually inter-
locked using a latch or other toothed wheel via a linear axis. The interlock
should only be activated when an indexing position has been reached precisely.
The distance between the indexing positions is the same (equidistant) across
the entire circumference.

Preconditions The rotary axis must be an indexing axis. The axis must be referenced. See
References: /R1/, Reference Point Approach

Activation MD 30505: $MA_HIRTH_IS_ACTIVE must be set to 1.


MD 30500: $MA_INDEX_AX_ASSIGN_POS_TAB must be set to 3 (equidistant
indexes).

Copyright © Siemens AG, 2005.


2/T1/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
2.4 Equidistant index intervals

Activation
S The rotary axis can only approach indexing positions in all modes and oper-
ating states.

S In JOG mode, the axis can be traversed


under JOG control or
incrementally.
Precondition: The axis is referenced.

S Jogging with the handwheel is not possible. See


References: /H1/, Handwheel Travel

S Only “coded positions” can be approached in AUTO, MDA or via ASUBs


S The PLC can only move the axis to indexing positions. An alarm is output on
an attempt to approach any other position.

Response of the Hirth axes in particular situations

STOP/RESET On NC STOP and RESET during a traversing movement, the next indexing po-
sition is approached before the command is activated.

EMERGENCY After an EMERGENCY STOP, the PLC or the operator must move the indexing
STOP axis back to an indexing position in JOG mode before the longitudinal axis can
be moved in/down.

Override = 0 or If the axis has already moved away from the previous indexing position when
“Stop axis” signal these events occur, the control moves the axis to the next possible indexing
position before the response is initiated.

Deletion of After traversing to the next possible indexing position, the movement is aborted
distance-to-go at this position.

Command axes See References:/FBSY/, Synchronized Actions


If MOV = 0 is specified for a moving command axis, the axis continues travers-
ing to the next possible indexing position.

Move command MOV = 1 Works on indexing axes with and without Hirth tooth system. Move = 0
works the same with both, the next position is approached.

DELDTG command For indexing axes without Hirth tooth system: Axis stops immediately...
For indexing axes with Hirth tooth system: Axis traverses to next position.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/2-17
Indexing Axes (T1) 06.05
2.4 Equidistant index intervals

Restrictions

Transformations The axis for which the Hirth tooth system is defined cannot take part in kine-
matic transformations.

PRESET The axis for which the Hirth tooth system is defined cannot be set to a new
value with PRESET.

Rev. feedrate The axis for which the Hirth tooth system is defined cannot be traversed at re-
volutional feedrate.

Path/velocity The axis for which the Hirth tooth system is defined cannot be used with path or
overlay velocity overlay.

Frames, ext. work The axis for which the Hirth tooth system is defined does not support frames or
offset, DRF interpolation compensation such as external zero offsets, DRF, etc.

Couplings The axis for which the Hirth tooth system is defined cannot be a

S following axis with master value coupling


S coupled-motion axis
S gantry following axis
See:
References: /M3/, Coupled Motion

2.4.2 Modified activation of machine data

A RESET is required in order to activate the following MD after new values have
been assigned to them.
MD 10900: $MN_INDEX_AX_LENGTH_POS_TAB_1
MD 10920: $MN_INDEX_AX_LENGTH_POS_TAB_2
MD 10910: $MN_INDEX_AX_POS_TAB_1
MD 10930: $MN_INDEX_AX_POS_TAB_2
MD 30500: $MA_INDEX_AX_ASSIGN_POS_TAB
You will find a complete list of MD for indexing axes in Chapter 4.

Copyright © Siemens AG, 2005.


2/T1/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
2.4 Equidistant index intervals

2.4.3 Examples of equidistant indexes

Modulo rotary axis $MA__INDEX_AX_DENOMINATOR[AX4] =18


$MA_INDEX_AX_OFFSET[AX4]=5
$MA_INDEX_AX_ASSIGN_POS_TAB[AX4] = 3
$MA_IS_ROT_AX[AX4] = TRUE
$MA_ROT_IS_MODULO[AX4] = TRUE
With the machine data above, axis 4 is defined as a modulo rotary axis and an
indexing axis with equidistant positions every 20 degrees starting at 5 degrees.
This results in the following indexing positions: 5, 25, 45, 65, 85, 105, 125, 145,
165, 185, 205, 225, 245, 265, 285, 305, 325 and 245 degrees.

Note
The $MA__INDEX_AX_DENOMINATOR[AX4] =18 assignment produces a 20o
division because the default for $MA_MODULO_RANGE is 360.

Rotary axis $MA_INDEX_AX__NUMERATOR[AX4] = 360


$MA__INDEX_AX_DENOMINATOR[AX4] =18
$MA_INDEX_AX_OFFSET[AX4]=100
$MA_INDEX_AX_ASSIGN_POS_TAB[AX4] = 3
$MA_IS_ROT_AX[AX4] = TRUE
$MA_POS_LIMIT_MINUS[AX1]=100
$MA_POS_LIMIT_PLUS[AX1]=260
With the machine data above, axis 4 is defined as a rotary axis and an indexing
axis with equidistant positions every 20 degrees starting at 100 degrees. This
results in the following indexing positions: 100, 120, 140 degrees etc. Positions
less than 100 degrees cannot be approached as indexing positions. It is there-
fore advisable to place the lower software limit switch in this case. The indexing
positions continue until the software limit switch is reached (in this case 260
degrees). The rotary axis can therefore only traverse between 100 and 260 de-
grees.

Linear axis $MA_INDEX_AX__NUMERATOR[AX1] = 10


$MA__INDEX_AX_DENOMINATOR[AX1] =1
$MA_INDEX_AX_OFFSET[AX1]=–200
$MA_INDEX_AX_ASSIGN_POS_TAB[AX1] = 3
$MA_IS_ROT_AX[AX1] = FALSE
$MA_POS_LIMIT_MINUS[AX1]=–200
$MA_POS_LIMIT_PLUS[AX1]=200
With the machine data above, axis 4 is defined as a linear axis and an indexing
axis with equidistant positions every 10 mm starting at –200 mm. This results in
the following indexing positions: –200, –190, –180 mm etc. The indexing posi-
tions continue until the software limit switch is reached (in this case 200 mm).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/2-19
Indexing Axes (T1) 06.05
2.4 Equidistant index intervals

Hirth tooth system $MA__INDEX_AX_DENOMINATOR[AX4] =360


$MA_INDEX_AX_OFFSET[AX4]=0
$MA_INDEX_AX_ASSIGN_POS_TAB[AX4] = 3
$MA_IS_ROT_AX[AX4] = TRUE
$MA_ROT_IS_MODULO[AX5] = TRUE
$MA_HIRTH_IS_ACTIVE[AX4] = TRUE
With the machine data above, axis 4 is defined as a modulo rotary axis and an
indexing axis with Hirth tooth system and equidistant positions every 1 degree
starting at 0 degrees.

Copyright © Siemens AG, 2005.


2/T1/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
2.5 Starting up indexing axes

2.5 Starting up indexing axes

Procedure The procedure for starting up indexing axes is identical to normal NC axes (lin-
ear and rotary axes).

Rotary axis If the indexing axis is defined as a rotary axis (MD: IS_ROT_AX = “1”) with mo-
dulo 360 conversion (MD: ROT_IS_MODULO = “1”), the indexing positions are
traversed with modulo 360. Only positions within the range from 0 to 359.999
can then be entered in the indexing position table. Otherwise alarm 4080 “Incor-
rect configuration for indexing axis in MD [Name]” is output during power-up.
MD: DISPLAY_IS_MODULO = “1” can be programmed to set the position dis-
play to modulo 360.

Special machine The following machine data, described in Chapter 4, must also be defined:
data

General machine MD: INDEX_AX_LENGTH_POS_TAB_1 (no. of indexing positions


data used in table 1)
MD: INDEX_AX_LENGTH_POS_TAB_2 (no. of indexing positions
used in table 2)
MD: INDEX_AX_POS_TAB_1 [n] Indexing position table 1
MD: INDEX_AX_POS_TAB_2 [n] Indexing position table 2

Axial machine data MD: INDEX_AX_ASSIGN_POS_TAB Axis is an indexing axis


(assignment of indexing
position table 1 or 2,
or 3 for equidistant indexing)

MD: HIRTH_IS_ACTIVE Axis has “Hirth


tooth system” property,
MD: INDEX_AX_NUMERATOR Numerator for equidistant indexing
MD: INDEX_AX_DENOMINATOR Denominator for equidistant indexing
MD: INDEX_AX_OFFSET Distance of the 1st indexing
position from zero

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/2-21
Indexing Axes (T1) 06.05
2.5 Starting up indexing axes

Machine data The assignment of the above machine data is described in the following para-
examples graphs using two examples.

Example of Tool turret with eight turret locations


indexing axis as
rotary axis The tool turret is defined as a continuously rotating rotary axis. The distances
between the eight turret locations are constant, the first location is at position 0°
(see Fig. 2-3).

Indexing position

8 2

315° 45°
Axis position
7 270° 90° 3

225° 135°
180°
6 4

Fig. 2-3 Example: Tool turret with 8 locations

Indexing position The indexing positions for the tool turret are entered in table 1.
table
$MN_INDEX_AX_POS_TAB_1[0] = 0 ; 1st indexing position at 0
$MN_INDEX_AX_POS_TAB_1[1] = 45 ; 2nd indexing position at 45
$MN_INDEX_AX_POS_TAB_1[2] = 90 ; 3rd indexing position at 90
$MN_INDEX_AX_POS_TAB_1[3] = 135 ; 4th indexing position at 135
$MN_INDEX_AX_POS_TAB_1[4] = 180 ; 5th indexing position at 180
$MN_INDEX_AX_POS_TAB_1[5] = 225 ; 6th indexing position at 225
$MN_INDEX_AX_POS_TAB_1[6] = 270 ; 7th indexing position at 270
$MN_INDEX_AX_POS_TAB_1[7] = 315 ; 8th indexing position at 315

Other machine $MN_INDEX_AX_LENGTH_POS_TAB_1= 8 ; 8 indexing positions in


data Table 1
$MA_INDEX_AX_ASSIGN_POS_TAB [AX5] = 1; Axis 5 is defined as an
indexing axis, indexing
positions in Table 1
$MA_IS_ROT_AX [AX5] = 1 ; Axis 5 is a rotary axis
$MA_ ROT_IS_MODULO [AX5] = 1 ; Modulo conversion is
activated

Copyright © Siemens AG, 2005.


2/T1/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
2.5 Starting up indexing axes

Example of Workholder with ten locations (see Fig. 2-4).


indexing axis as The distances between the ten locations vary; the first workholder location is at
linear axis position –100 mm.

1 2 3 4 5 6 7 8 9 10 Indexing position

–100

1250

1650
+100
+200
+300

500

700

900
0
Axis position [mm]

Fig. 2-4 Example: Workholder as an indexing axis

Indexing position The indexing positions for the tool turret are entered in table 2.
table
$MN_INDEX_AX_POS_TAB_2[0] = –100 ; 1st indexing position at –100
$MN_INDEX_AX_POS_TAB_2[1] = 0 ; 2nd indexing position at 0
$MN_INDEX_AX_POS_TAB_2[2] = 100 ; 3rd indexing position at 100
$MN_INDEX_AX_POS_TAB_2[3] = 200 ; 4th indexing position at 200
$MN_INDEX_AX_POS_TAB_2[4] = 300 ; 5th indexing position at 300
$MN_INDEX_AX_POS_TAB_2[5] = 500 ; 6th indexing position at 500
$MN_INDEX_AX_POS_TAB_2[6] = 700 ; 7th indexing position at 700
$MN_INDEX_AX_POS_TAB_2[7] = 900 ; 8th indexing position at 900
$MN_INDEX_AX_POS_TAB_2[8] = 1250 ; 9th indexing position at 1250
$MN_INDEX_AX_POS_TAB_2[9] = 1650 ; 10th indexing position at 1650

Other machine $MN_INDEX_AX_LENGTH_POS_TAB_2=10 ; 10 indexing positions in


data Table 2
$MA_INDEX_AX_ASSIGN_POS_TAB [AX6] = 2 ; Axis 6 is defined as an
indexing axis
; indexing positions in Table 2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/2-23
Indexing Axes (T1) 06.05
2.6 Special features of indexing axes

2.6 Special features of indexing axes

DRF An additional incremental zero offset can also be generated for indexing axes in
AUTOMATIC mode with the handwheel using the DRF function.

Software limit After the indexing axis has been referenced, the software limit switches are ac-
switches tive when the axis is traversed.
When traversing manually in continuous JOG or incremental JOG mode, the
indexing axis stops at the last indexing position before the software
limit switch.

Reference point An indexing axis will approach indexing positions in JOG mode (continuous or
approach incremental) only after it has reached its reference point (IS “Referenced/
synchronized 1 or 2” (DB31–48, DBX60.4 or 5) = “1”).
If the axis is not referenced (IS “referenced/synchronized 1 or 2” = “0”), the in-
dexing positions are ignored when traversing manually.
Since the axis positions stored in the indexing position tables only correspond
to the machine positions when the axis is referenced, an NC start must be dis-
abled for as long as the indexing axis is not referenced.

Position display Positions on indexing axes are displayed in the units of measurement normally
used for the axes (mm, inches or degrees).

Abort through Reset causes the traversing movement on an indexing axis to be aborted and
reset the axis to be stopped. The indexing axis is no longer positioned on an indexing
position.

Note
The response of the Hirth tooth system is described in Subsection 2.4.1.

Copyright © Siemens AG, 2005.


2/T1/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
4.1 General machine data

Supplementary Conditions 3
There are no supplementary conditions stipulated for this Description of Func-
tions.
J

Data Descriptions (MD, SD) 4


4.1 General machine data

10270 POS_TAB_SCALING_SYSTEM
MD number Measuring system of the position tables
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after RESET Protection level: 2 / 7 Unit: –
Data type: BYTE Applies from SW: 5
Meaning: This machine data is for setting the measuring system for position specifications of indexing
axis tables and switching points for software cams.
S MD 10270=0: Metric
S MD 10270=1: Inch
MD 10270 defines the measuring system for position specifications for the following ma-
chine data:
MD 10900: INDEX_AX_POS_TAB_1
MD 10920: INDEX_AX_POS_TAB_2
SD 41500: SW_CAM_MINUS_POS_TAB_1
SD 41501: SW_CAM_PLUS_POS_TAB_1
SD 41502: SW_CAM_MINUS_POS_TAB_2
SD 41503: SW_CAM_PLUS_POS_TAB_2
SD 41504: SW_CAM_MINUS_POS_TAB_3
SD 41505: SW_CAM_PLUS_POS_TAB_3
SD 41506: SW_CAM_MINUS_POS_TAB_4
SD 41507: SW_CAM_PLUS_POS_TAB_4

Note: Only effective when MD 10260: CONVERT_SCALING_SYSTEM=1. (see /G2/)


Related to .... See machine and setting data under significance;
MD 10260: CONVERT_SCALING_SYSTEM

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/4-25
Indexing Axes (T1) 06.05
4.1 General machine data

10900 INDEX_AX_LENGTH_POS_TAB_1
MD number Number of indexing positions used in Table 1
Default setting: 0 Minimum input limit: 0 Maximum input limit: 60
Modification effective after power ON or RESET with Protection level: 2 / 7 Unit: –
SW 4.3 and higher
Data type: DWORD Applies from SW: 1.1
Meaning: The indexing position table is used to assign the axis positions in the valid unit of measure-
ment (mm, inches or degrees) to the indexing positions [n] on the indexing axis.
The number of indexing positions used in table 1 is defined by the MD: IN-
DEX_AX_LENGTH_POS_TAB_1.
These indexing positions must contain valid values in table 1. Any indexing positions in the
table greater than the number specified in the machine data are ignored.
Up to 60 indexing positions (0 to 59) can be entered in the table.
Table length = 0 means that the table is not evaluated. If the length is not equal to 0, the
table must be assigned to an axis with the MD: INDEX_AX_ASSIGN_POS_TAB.

If the indexing axis is defined as a rotary axis (MD: IS_ROT_AX = “1”) with modulo 360
(MD: ROT_IS_MODULO = “1”), the machine data defines the last indexing position after
which the indexing positions begin again at 1 with a further traversing movement in the
positive direction.
Application example(s) Tool magazines (tool turrets, chain magazines)
Special cases, errors, ...... Alarm 17090 “Value violates upper limit” if a value over 60 is entered in the MD:
INDEX_AX_LENGTH_POS_TAB_1.
Related to .... MD: INDEX_AX_ASSIGN_POS_TAB (axis is an indexing axis)
MD: INDEX_AX_POS_TAB_1 (indexing position table 1)
MD: IS_ROT_AX (rotary axis)
MD: ROT_IS_MODULO (modulo conversion for rotary axis)

10920 INDEX_AX_LENGTH_POS_TAB_2
MD number Number of indexing positions used in Table 2
Default setting: 0 Minimum input limit: 0 Maximum input limit: 60
Modification effective after power ON or RESET with Protection level: 2 / 7 Unit: –
SW 4.3 and higher
Data type: DWORD Applies from SW: 1.1
Meaning: The indexing position table is used to assign the axis positions in the valid unit of measure-
ment (mm, inches or degrees) to the indexing positions [n] on the indexing axis.
The number of indexing positions used in table 2 is defined by the MD: IN-
DEX_AX_LENGTH_POS_TAB_2.
These indexing positions must contain valid values in table 2. Any indexing positions in the
table greater than the number specified in the machine data are ignored.
Up to 60 indexing positions (0 to 59) can be entered in the table.
Table length = 0 means that the table is not evaluated. If the length is not equal to 0, the
table must be assigned to an axis with the MD: INDEX_AX_ASSIGN_POS_TAB.

If the indexing axis is defined as a rotary axis (MD: IS_ROT_AX = “1”) with modulo 360
(MD: ROT_IS_MODULO = “1”), the machine data defines the last indexing position after
which the indexing positions begin again at 1 with a further traversing movement in the
positive direction.
MD irrelevant for ...... Tool magazines (tool turrets, chain magazines)
Special cases, errors, ...... Alarm 17090 “Value violates upper limit” if a value over 60 is entered in the MD:
INDEX_AX_LENGTH_POS_TAB_2.
Related to .... MD: INDEX_AX_ASSIGN_POS_TAB (axis is an indexing axis)
MD: INDEX_AX_POS_TAB_2 (indexing position table 2)
MD: IS_ROT_AX (rotary axis)
MD: ROT_IS_MODULO (modulo conversion for rotary axis)

Copyright © Siemens AG, 2005.


2/T1/4-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
4.1 General machine data

10910 INDEX_AX_POS_TAB_1[n]
MD number Indexing position table 1 [n]
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Modification effective after power ON or RESET with Protection level: 2 / 7 Unit: mm or degrees
SW 4.3 and higher
Data type: DOUBLE Applies from SW: 1.1
Meaning: The indexing position table is used to assign the axis positions in the valid unit of measure-
ment (mm, inches or degrees) to the indexing positions [n] on the indexing axis.
[n] = Index for the entry of the indexing positions in the indexing position table.
Range: 0 y n x 59, where 0 is the 1st indexing position and 59 the
60th indexing position.
Note: Programming with the absolute indexing position (e.g. CAC) starts with
indexing position 1. This corresponds to the indexing position with index n = 0
entered in the table of indexing positions.
The following should be noted when entering the indexing positions:
S Up to 60 different indexing positions can be stored in the table.
S The 1st entry in the table corresponds to indexing position 1; the nth entry thus to
indexing position n.
S The indexing positions should be entered in the table in ascending order (starting with
the negative to the positive traversing range) with no gaps between the entries.
Consecutive position values cannot be identical.
S If the indexing axis is defined as a rotary axis (MD: IS_ROT_AX = “1”) with modulo
360 (MD: ROT_IS_MODULO = “1”) then the position values are limited to a
range of 0 x pos. < 360.

The number of indexing positions used in the table is defined by the MD:
INDEX_AX_LENGTH_POS_TAB_1.
Entering the value 1 in the axial machine data INDEX_AX_ASSIGN_
POS_TAB assigns indexing position table 1 to the current axis.
Application example(s) Tool magazines (tool turrets, chain magazines)
Special cases, errors, ...... Alarm 17020 “Illegal array index” if over 60 positions are entered in the table.
Related to .... MD: INDEX_AX_ASSIGN_POS_TAB (axis is an indexing axis)
MD: INDEX_AX_LENGTH_POS_TAB_1(number of indexing positions used in Table 1)
MD: IS_ROT_AX (rotary axis)
MD: ROT_IS_MODULO (modulo conversion for rotary axis)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/4-27
Indexing Axes (T1) 06.05
4.1 General machine data

10930 INDEX_AX_POS_TAB_2 [n]


MD number Indexing position table 2 [n]
Default setting: 0 Minimum input limit: *** Maximum input limit: ***
Modification effective after power ON or RESET with Protection level: 2 / 7 Unit: mm or degrees
SW 4.3 and higher
Data type: DOUBLE Applies from SW: 1.1
Meaning: The indexing position table is used to assign the axis positions in the valid unit of measure-
ment (mm, inches or degrees) to the indexing positions [n] on the indexing axis.
[n] = Index for the entry of the indexing positions in the indexing position table.
Range: 0 y n x 59, where 0 is the 1st indexing position and 59 the
60th indexing position.
Note: Programming with the absolute indexing position (e.g. CAC) starts with
indexing position 1. This corresponds to the indexing position with index n = 0
entered in the table of indexing positions.
The following should be noted when entering the indexing positions:
S Up to 60 different indexing positions can be stored in the table.
S The 1st entry in the table corresponds to indexing position 1; the nth entry thus to
indexing position n.
S The indexing positions should be entered in the table in ascending order (starting with
the negative to the positive traversing range) with no gaps between the entries.
Consecutive position values cannot be identical.
S If the indexing axis is defined as a rotary axis (MD: IS_ROT_AX = “1”) with modulo
360 (MD: ROT_IS_MODULO = “1”) then the position values are limited to a
range of 0 x pos. < 360.

The number of indexing positions used in the table is defined by the MD:
INDEX_AX_LENGTH_POS_TAB_2.
Entering the value 1 in the axial machine data INDEX_AX_ASSIGN_POS_TAB assigns
indexing position table 1 to the current axis.
Application example(s) Tool magazines (tool turrets, chain magazines)
Special cases, errors, ...... Alarm 17020 “Illegal array index” if over 60 positions are entered in the table.
Related to .... MD: INDEX_AX_ASSIGN_POS_TAB (axis is an indexing axis)
MD: INDEX_AX_LENGTH_POS_TAB_2(number of indexing positions used in Table 2)
MD: IS_ROT_AX (rotary axis)
MD: ROT_IS_MODULO (modulo conversion for rotary axis)

10940 INDEX_AX_MODE
MD number Options for indexing position
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2 / 7 Unit: –
Data type: DWORD Applies from SW: 7.2
Meaning: The machine data controls the display of indexing positions in system variable
AA_ACT_INDEX_AX_POS_NO and OPI variable aaActIndexAxPosNo.
Bit 0 = 0: Indexing position display changes when
indexing position is reached/crossed (indexing area is
between the indexing positions, compatible behavior).
Bit 0 = 1: Indexing position display changes when
half the indexing axis position is crossed (indexing area is
quasi-symmetrical around the indexing position).
Related to .... System variable $AA_ACT_INDEX_AX_POS_NO

Copyright © Siemens AG, 2005.


2/T1/4-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
4.2 Axis-specific machine data

4.2 Axis-specific machine data

30500 INDEX_AX_ASSIGN_POS_TAB
MD number Axis is indexing axis
Default setting: 0 Minimum input limit: 0 Maximum input limit: 3
Modification effective after power ON or RESET with Protection level: 2 / 7 Unit: –
SW 4.3 and higher
Data type: BYTE Applies from SW: 1.1
Meaning: The axis is declared as an indexing axis by assignment of indexing position table 1 or 2.
0: The axis is not declared as an indexing axis
1: The axis is an indexing axis. The associated indexing positions are stored in
Table 1 (MD: INDEX_AX_POS_TAB_1).
2: The axis is an indexing axis. The associated indexing positions are stored in
Table 2 (MD: INDEX_AX_POS_TAB_2).
3: Equidistant indexing with SW 4.3 and higher (840D) and SW 2.3 and higher (810D)
>3: Alarm 17090 “Value violates upper limit”
Application example(s) Tool magazines (tool turrets, chain magazines)
Special cases, errors, ... Several axes can be assigned to an indexing position table on condition that these indexing
... axes are of the same type (linear axis, rotary axis, modulo 360_ function). Alarm 4000 is
otherwise generated at boot.
Alarm 17500 “Axis is not an indexing axis”
Alarm 17090 “Value violates upper limit”
Related to .... MD: INDEX_AX_POS_TAB1 (indexing position table 1)
MD: INDEX_AX_LENGTH_POS_TAB_1 (no. of indexing positions
used in table 1)
MD: INDEX_AX_POS_TAB2 (indexing position table 2)
MD: INDEX_AX_LENGTH_POS_TAB_2 (no. of indexing positions
used in table 2)
For equidistant indexes with a value of 3:
MD: INDEX_AX_NUMERATOR Numerator
MD: INDEX_AX_DENOMINATOR Denominator
MD: INDEX_AX_OFFSET First indexing position
MD: HIRTH_IS_ACTIVE Hirth tooth system

30501 INDEX_AX_NUMERATOR
MD number Numerator for indexing axes with equidistant positions
Default setting: 0 Minimum input limit: >0 Maximum input limit: ***
Changes effective after RESET Protection level: 2/7 Unit: mm/inches/de-
grees
Data type: DOUBLE Applies from SW: 4.3
Meaning: Defines the value of the numerator for calculating the distances between two indexing posi-
tions when the positions are equidistant. Modulo axes ignore this value and use $MA_MO-
DULO_RANGE instead.
MD irrelevant for ... ... Non-equidistant indexes in accordance with tables
Application example(s) See 2.4
Related to .... MD 30502: INDEX_AX_DENOMINATOR, MD 30503: INDEX_AX_OFFSET; MD 30500:
INDEX_AX_ASSIGN_POS_TAB

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/4-29
Indexing Axes (T1) 06.05
4.2 Axis-specific machine data

30502 INDEX_AX_DENOMINATOR
MD number Denominator for indexing axes with equidistant positions
Default setting: 1 Minimum input limit: 1 Maximum input limit: ***
Changes effective after RESET Protection level: 2/7 Unit: –
Data type: DWORD Applies from SW: 4.3
Meaning: Defines the value of the denominator for calculating the distances between two indexing
positions when the positions are equidistant. For modulo axes it therefore specifies the
number of indexing positions.
MD irrelevant for ... ... Non-equidistant indexes in accordance with tables
Application example(s) See 2.4
Related to .... MD 30501: INDEX_AX_NUMERATOR, MD 30503: INDEX_AX_OFFSET; MD 30500: IN-
DEX_AX_ASSIGN_POS_TAB

30503 INDEX_AX_OFFSET
MD number First indexing position for indexing axes with equidistant positions
Default setting: 0.0 Minimum input limit: *** Maximum input limit: ***
Changes effective after RESET Protection level: 2/7 Unit: mm/inches/de-
grees
Data type: DOUBLE Applies from SW: 4.3
Meaning: Defines the position of the first indexing position from zero for an indexing axis with equidis-
tant positions.
MD irrelevant for ... ... Non-equidistant indexes in accordance with tables
Application example(s) See 2.4
Related to .... MD 30501, 30502, 30500

30505 HIRTH_IS_ACTIVE
MD number Hirth tooth system is active
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after RESET Protection level: 2/7 Unit: –
Data type: BOOLEAN Applies from SW: 4.3
Meaning: Hirth tooth system is active when a value of 1 is set.
MD irrelevant for ... ... Non-equidistant indexes in accordance with tables
Application example(s) See 2.4
Related to .... MD 30500, 30501, 30502, 30503

Copyright © Siemens AG, 2005.


2/T1/4-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
5.1 Axisspecific signals

Signal Descriptions 5
5.1 Axisspecific signals
DB31, ...
DBX76.6 Indexing axis in position
Data Block Signal(s) from axis/spindle (NCK ––> PLC)
Edge evaluation: no Signal(s) updated: Cyclic Signal(s) valid from SW: 1.1
Signal state 1 or signal The signal is influenced according to the “Exact stop fine”.
transition 0 –––> 1 When “Exact stop fine” is achieved, the signal is set. When exiting “Exact stop fine”, the
signal is reset again.
S The indexing axis is at an indexing position.
The indexing axis has been positioned by coded position instructions.
SW 4.3 and higher (840D), SW 2.3 and higher (810D)
If the “Exact stop fine” window is reached and the indexing axis is positioned on an indexing
position, the signal is enabled regardless of how the indexing position was reached.
Signal state 0 or signal S The axis is not defined as an indexing axis.
transition 1 –––> 0 S The indexing axis is traversing (IS “Travel command +/–” (DB31, ... DBX64.7/64.6) is
active)
S The indexing axis is located at a position which is not an indexing position.
Examples: In JOG mode after abortion of travel movement, e.g. with RESET
In Automatic mode: Indexing axis has, for example, approached
a selected position controlled by an AC or DC instruction.
S The indexing axis has not been positioned with instructions for coded positions (CAC,
CACP, CACN, CDC, CIC) in automatic mode.
S The “Servo enable” signal for the indexing axis has been canceled (IS “Servo enable”
DB31, ... DBX2.1).
Signal irrelevant for ...... Axes that are not defined as indexing axes
(MD 30500: INDEX_AX_ASSIGN_POS_TAB = “0”)
Application example(s) Tool magazine: the activation of a gripper for removing a tool from a magazine is triggered
when the indexing axis is in position (“indexing axis in position” = 1).
This must be programmed in the PLC user program.
Special cases, errors, ...... Notes:
The axis positions entered in the indexing position table for the individual divisions can be
changed through zero offsets (including DRF). The “indexing axis in position” interface
signal is then set to 1 when the actual position of the indexing axis matches the value en-
tered in the index table plus the offset. If a DRF is applied to an indexing axis in AUTO-
MATIC mode, then interface signal “Indexing axis in position” remains active even though
the axis is no longer at an indexing position. For exceptions, see 2.4 Hirth tooth system.
Related to .... MD 30500: INDEX_AX_ASSIGN_POS_TAB (axis is an indexing axis)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/5-31
Indexing Axes (T1) 06.05
5.1 Axisspecific signals

Notes

Copyright © Siemens AG, 2005.


2/T1/5-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Indexing Axes (T1)
7.2 Machine data

Example 6
For an example, please see Sections 2.4, 2.5
J

Data Fields, Lists 7


7.1 Interface signals

DB number Bit, byte Name Refer-


ence
Axis/spindle-specific
31–61 76.6 Indexing axis in position
31–61 60.4, 60.5 Referenced/synchronized 1, referenced/synchronized 2 R1

7.2 Machine data

Number Names Name Refer-


ence
General ($MN_ ... )
10260 CONVERT_SCALING_SYSTEM Basic system switchover active G2
10270 POS_TAB_SCALING_SYSTEM System of measurement of position tables
10900 INDEX_AX_LENGTH_POS_TAB_1 Number of indexing positions used in Table 1
10920 INDEX_AX_LENGTH_POS_TAB_2 Number of indexing positions used in Table 2
10910 INDEX_AX_POS_TAB_1[n] Indexing position table 1
10930 INDEX_AX_POS_TAB_2 [n] Indexing position table 2
10940 INDEX_AX_MODE Options for indexing positions
Axis/channelspecific ($MA_ ... )
30300 IS_ROT_AX Rotary axis R2
30310 ROT_IS_MODULO Modulo conversion for rotary axis R2
30320 DISPLAY_IS_MODULO Position display “Modulo 360º” R2

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/T1/7-33
Indexing Axes (T1) 06.05
7.5 Alarms

Number Names Name Refer-


ence
30500 INDEX_AX_ASSIGN_POS_TAB Axis is indexing axis
30501 INDEX_AX_NUMERATOR Counter for indexing axes with equidistant positions
30502 INDEX_AX_DENOMINATOR Denominator for indexing axes with equidistant posi-
tions
30503 INDEX_AX_OFFSET Indexing position for indexing axes with equidistant
positions
30505 HIRTH_IS_ACTIVE Hirth tooth system is active

7.3 Setting data

Number Names Name Refer-


ence
General ($SN_ ...)
41050 JOG_CONT_MODE_LEVELTRIGGRD JOG continuous mode H1

7.4 System variables


The following system variables exist in SW 4.3 and higher:

Names Name, meaning Refer-


ence
$AA_ACT_INDEX_AX_POS_NO[axis] Number of last indexing position reached or overtraveled PGA 1
$AA_PROG_INDEX_AX_POS_NO[axis] Number of programmed indexing position PGA 1

7.5 Alarms
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, “Diagnostics Guide”
or in the Online help.
J

Copyright © Siemens AG, 2005.


2/T1/7-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Tool Change (W3)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/2-5
2.1 Overview of Tool Change Function . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/2-5
2.2 Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/2-6
2.3 Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/2-6
2.4 Tool change point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/2-7
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/5-9
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/5-9
4.1 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/5-9
5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/5-9
6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/6-11
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/7-13
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/7-13
7.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/7-13
7.3 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W3/7-13
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W3/i
06.05

Notes

Copyright © Siemens AG, 2005.


2/W3/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Tool Change (W3)
1 Brief Description

Brief Description 1
CNC-controlled machine tools are equipped with tool magazines and automatic
tool change facility for the complete machining of workpieces.

Sequence The procedure for changing tools comprises three steps:


– Movement of the tool carrier from the machining position to the tool
change position
– Tool change
– Movement of the tool carrier from the tool change position to the new
machining position

Control The tool change can be actuated using a


– T function or an
– M command (preferably M06)
There are two options for tool change:
Immediate change with T number or preparation with T number:
1. Immediate change
– The T function loads the new tool immediately.
– Typical application: Turning machines with tool turret
2. Preparation
– The new tool is prepared for the change on execution of the T function.
– The M function is used to remove the old tool from the spindle and load
the new tool.
– The M command for tool change can be defined in a machine data.
– Typical application: Milling machines with a tool magazine, in order to
bring the new tool into the tool change position without interrupting the
machining process.

Tool change point The selection of the tool change point has a significant effect on the cut-to-cut
time. The tool change point is chosen according to the machine tool concept
and, in certain cases, according to the current machining task.
Fixed positions on a machine axis stored in machine data can be approached
by means of the Fixed-point approach function G75. This can be used to
define and control one or several tool change points.
The tool change requires, amongst other things, a tool management system
which ensures that the tool to be loaded is available at the tool change position
at the right time.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W3/1-3
Tool Change (W3) 06.05
1 Brief Description

Notes

Copyright © Siemens AG, 2005.


2/W3/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Tool Change (W3)
2.1 Overview of tool change function

Detailed Description 2
2.1 Overview of tool change function
CNC-controlled machine tools are equipped with tool magazines and automatic
tool change facility for the complete machining of workpieces.

Tool changing Tool magazines and tool changing equipment are selected according to the
equipment machine type.
Turning machines: Tool turret (disc, flat or inclined tool turret);
no special equipment required: Tool is changed
through rotation of revolver.
Milling machines: Magazines (chain, plate, disc, cassette) with
gripper/double gripper for changing.
Since the tool change interrupts machining, the idle times must be minimized.

Tool change times Tool change times are largely determined by the construction of the machine
tool.
Typical tool change times are
0.1 to 0.2 secs for rotation of a tool turret
0.3 to 2 secs for a tool change with a gripper for an available
tool.

Cut-to-cut time The cut-to-cut time is the period that elapses when a tool is changed between
retraction from the interruption point on the contour (from cut) and repositioning
on the interruption point (return to cut) with the new tool when the spindle is
rotating.
Typical cut-to-cut times are:
0.3 to 1 secs for a turning machine with tool turret
0.5 to 5 secs for a milling machine with a tool changer.

Requirements A tool change operation must fulfill the following requirements:


– Short idle times
– Fast search, preparation and return of the tool during machining
– Simple programming of the tool change cycle

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W3/2-5
Tool Change (W3) 06.05
2.3 Control

– Automatic operation of the required axis and gripper movements


– Easy fault recovery

2.2 Sequence

Tool change The procedure for changing tools comprises three steps:
sequence
– Movement of the tool carrier from the machining position to the tool
change position
– Tool change
– Movement of the tool carrier from the tool change position to the new
machining position
The tool change position depends on the machine concept and is described in
more detail in Section 2.4.

Control of spindle The method by which the spindle is controlled during a tool change also
depends on the machine design. The various options include systems where
– the spindle continues to rotate
– the spindle is brought to a halt, or
– the spindle is positioned

2.3 Control

Control The tool change can be actuated using a


– T function or an
– M command (preferably M06).
The selection is made in MD: TOOL_CHANGE_MODE, as follows:
TOOL_CHANGE_MODE = 0
– The T function loads the new tool immediately
– Typical application: Turning machines with tool turret
TOOL_CHANGE_MODE = 1
– The new tool is prepared for the change on execution of the T function.
– The M function is used to remove the old tool from the spindle and load
the new tool.
– The M command for the tool change is defined in the MD:
TOOL_CHANGE_M_CODE. The default setting is 6 for compatibility with
DIN 66025.

Copyright © Siemens AG, 2005.


2/W3/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Tool Change (W3)
2.4 Tool change point

– Typical application: Milling machines with a tool magazine, in order to


bring the new tool into the tool change position without interrupting the
machining process.
Note: If the tool offset number is supplied from the PLC or an MMC tool
manager, a STOPRE block search stop must be inserted at a suitable point.
STOPRE must be avoided, however, when tool radius compensation (G41/G42)
or SPLINE interpolation are active, since several blocks are required here in
advance for the path calculation.
Further information on M functions which apply to the M06 tool change, such as
– Extended address
– Output time to PLC
– Auxiliary function groups
– Block search response
– Response to overstore
can be found in:
References: /FB/, S5, “Synchronized Actions”

2.4 Tool change point

Tool change point The selection of the tool change point has a significant effect on the cut-to-cut
time. The tool change point is chosen according to the machine tool concept
and, in certain cases, according to the current machining task.
The fixed point approach function (G75) can be used to approach fixed
positions on a machine axis:
N20 G75 FP=2 X1=0 Y1=0 Z1=0 LF

Fixed points Two fixed positions are stored for each machine axis in MD:
FIX_POINT_POS[N]. They are addressed with FP=1 or FP=2. If no value is
defined, then FP=1.
Each machine axis which is required to travel to one of these points has to be
specified with its machine name and a dummy position (which is not evaluated).
The positions stored in the MD are approached with rapid traverse G0.
In a block with G75, the spindle can be positioned using SPOS and SPOSA.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W3/2-7
Tool Change (W3) 06.05
2.4 Tool change point

Notes

Copyright © Siemens AG, 2005.


2/W3/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Tool Change (W3)
4.1 Machine data

Supplementary Conditions 3
The tool change requires, amongst other things, a tool management system
which ensures that the tool to be loaded is available at the tool change position
at the right time.
J

Data Descriptions (MD, SD) 4


4.1 Machine data
The machine data required for the tool change are documented in the following
publications:
MD number Identifier Description of Functions
22500 TOOL_CHANGE_MODE W1
22600 TOOL_CHANGE_M_CODE W1
30600 FIX_POINT_POS[n] K1
22200 AUXFU_M_SYNC_TYPE H2
22220 AUXFU_T_SYNC_TYPE H2
J

Signal Descriptions 5
No separate signals exist for this Description of Functions.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W3/5-9
Tool Change (W3) 06.05
4.1 Machine data

Notes

Copyright © Siemens AG, 2005.


2/W3/5-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Tool Change (W3)
6 Example

Example 6
The following example shows a typical cut-to-cut sequence of operations for a
tool change with a tool changer and a fixed absolute tool change point on a
milling machine.

Machining program
N 970 G0 X= Y= Z= LF ; Retract from the contour
N 980 T1 LF ; Tool selection
N 990 W_WECHSEL LF ; Subroutine call without
parameters
N 1000 G90 G0 X= Y= Z= M3 S1000 LF; Machining resumed

Subroutine for tool change


PROC W_WECHSEL LF
N 10 SPOSA= S0 LF ; Spindle positioning
N 20 G75 FP=2 X1=0 Y1=0 Z1=0 ; Approach tool change point
(see Section 2.4)
N 30 M06 LF ; Change tools
N 40 M17 LF

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W3/6-11
Tool Change (W3) 06.05
6 Example

N10 N40

Current block number N20 N30 N1000

IS: Feed disable 0

IS: +/– travel command (axis)

IS: Exact stop fine (axis)

1
IS: Exact stop coarse (axis)

PLC: New tool loaded


0

1
IS: Read enable through M6

IS: Exact stop fine (spindle)


0

IS: Positioning mode active


0

Spindle speed in rpm 0


Time

TOOL–TO–TOOL TIME

CUT–TO–CUT TIME

t1 t2 t3 t4 t5

Fig. 6-1 Chronological sequence of tool change

t1 Axes stationary
Spindle rotating
Start of tool change cycle in N 10
t2 Traverse axis with G75 in N 20 to tool change point
t3 Spindle reaches programmed position from block N 10
t4 Axes reach fine stop coarse from N 20; N 30 starts here:
N 30:
M06 removes the previous tool from the spindle and loads
and secures the new tool.
t5 Tool changer swivels back to original position.

Following this, in N 1000 of the calling main program, the


– new tool offset can be selected
– the axes can be returned to the contour, or
– the spindle can be accelerated
J

Copyright © Siemens AG, 2005.


2/W3/6-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Tool Change (W3)
7.3 Interrupts

Data Fields, Lists 7


7.1 Interface signals

DB number Bit, byte Name Refer-


ence
Channel-specific
21–28 194.6 M function M06

7.2 Machine data

Number Names Name Refer-


ence
General ($MN_ ...
18082 MM_NUM_TOOL Number of tools S7
Channelspecific ($MC_ ... )
22200 AUXFU_M_SYNC_TYPE Output timing for M functions H2
22220 AUXFU_T_SYNC_TYPE Output timing of T functions H2
22550 TOOL_CHANGE_MODE New tool offset for M function
22560 TOOL_CHANGE_M_CODE M function for tool change
Axisspecific ($MA_ ... )
30600 FIX_POINT_POS[n]. Fixed point positions of the machine axes with
G75

7.3 Interrupts
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, “Diagnostics Guide”
or in the Online help.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W3/7-13
Tool Change (W3) 06.05
7.3 Interrupts

Notes

Copyright © Siemens AG, 2005.


2/W3/7-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

SINUMERIK 840D sl/840D/840Di/810D


Description of Functions
Extended Functions (FB2)

Grinding-specific Tool Offset and Tool


Monitoring (W4)

1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/1-3


2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-5
2.1 Tool offset for grinding operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-5
2.1.1 Structure of tool data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-5
2.1.2 Edge-specific offset data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-7
2.1.3 Tool-specific grinding data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-9
2.1.4 Examples of grinding tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-14
2.2 Online tool offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-18
2.2.1 Write online tool offset: Continuous . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-20
2.2.2 Activate/deactivate online tool offset . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-22
2.2.3 Example of writing online tool offset continuously . . . . . . . . . . . . . . . 2/W4/2-23
2.2.4 Write online tool offset discretely . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-24
2.2.5 Information about online offsets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-25
2.3 Online tool radius compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-26
2.4 Grinding-specific tool monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-27
2.4.1 Geometry monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-27
2.4.2 Speed monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-28
2.4.3 Selection/deselection of tool monitoring . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-29
2.5 Constant grinding wheel peripheral speed (GWPS) . . . . . . . . . . . . . 2/W4/2-30
2.5.1 Selection/deselection and programming of GWPS, system
variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-31
2.5.2 GWPS in all operating modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-32
2.5.3 Example of how to program GWPS . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/2-33
3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/3-35
3.1 Tool changes with online tool offset . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/3-35
4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/4-37
4.1 Channelspecific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/4-37
4.2 Axis-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/4-37

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/i
06.05

5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/6-39


6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/6-39
7 Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/7-41
7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/7-41
7.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/7-41
7.3 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2/W4/7-41
J

Copyright © Siemens AG, 2005.


2/W4/ii SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
1 Brief Description

Brief Description 1
Table of Contents This Description of Functions deals with the following subjects:

S Tool offset for grinding operations


S Online tool offsets (continuous dressing)
S Grinding-specific tool monitoring
S Constant grinding wheel peripheral speed (GWPS)

Note
This Description is based on information in
References: /FB/, W1, “Tool Offset”
For information about programming, mode of operation and handling, please
refer to
References: /PG/, Programming Guide Fundamentals

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/1-3
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
1 Brief Description

Notes

Copyright © Siemens AG, 2005.


2/W4/1-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.1 Tool offset for grinding operations

Detailed Description 2
2.1 Tool offset for grinding operations

2.1.1 Structure of tool data

Grinding tools Grinding tools (see Subsection 2.1.4 and Chapter 3) are tools of type 400 to
499.

Tool offset for Apart from edge-specific data, data that are specific to the tool and dressing
grinding tools process are generally also programmed for grinding tools.
The data specific to a grinding wheel for the left-hand and right-hand wheel
geometry can be stored in D1 or D2 under a T number.
If data are required for the dressing geometry, they can be stored, for example,
starting at D3 of a T number or in additional edge-specific data (MD18096
MM_NUM_CC_TOA_PARAM).
Examples:
a)

T number
Grinding wheel

D1 D2 > D3
Left-hand wheel Right-hand wheel Additional data
geometry geometry

b)

T number
Grinding wheel

D1 D2
Left-hand wheel Right-hand wheel
geometry geometry

$TC_DP1[t,d] $TC_DP1[t,d]
: :
$TC_DP25[t,d] $TC_DP25[t,d]

MD18096 MM_NUM_CC_TOA_PARAM MD18096 MM_NUM_CC_TOA_PARAM


$TC_DPC1[t,d] $TC_DPC1[t,d]
$TC_DPC10[t,d] $TC_DPC10[t,d]

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-5
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.1 Tool offset for grinding operations

All offsets belonging to a grinding wheel and dresser can be combined in the
tool edges D1 and D2 for the grinding wheel and, for example, D3 and D4 for
the dresser:
D1: Grinding wheel geometry left D2: Grinding wheel geometry right
D3: Dresser geometry left D4: Dresser geometry right

Edge-specific Tool-specific
offset data grinding data
Tool D4
D3
T...
D2

D1
Additional
parameters
Additional $TC_TPG9[t]
parameters up to
$TC_DP1[t,d] $TC_TPC1[t]
$TC_TPG2[t]
$TC_DP2[t,d] Up to Up to
$TC_DPC10[t,d] $TC_TPC10[t] $TC_TPG1[t]
$TC_DP25[t,d]
up to
$TC_DPC1[t,d]

Fig. 2-1 Structure of tool offset data for grinding tools

Copyright © Siemens AG, 2005.


2/W4/2-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.1 Tool offset for grinding operations

2.1.2 Edge-specific offset data

Tool parameters The tool parameters for grinding tools have the same meaning as those for turn-
ing and milling tools.

Tool parameter Meaning Remarks Reserved for


expansions
1 Tool type
2 Cutting edge posi- For turning and grinding
tion tools only
Geometry tool length compensation
3 Length 1
4 Length 2
5 Length 3
Geometry tool radius compensation
6 Radius 1
7 Reserved
8 Reserved
9 Reserved
10 Reserved
11 Reserved
Wear tool length compensation
12 Length 1
13 Length 2
14 Length 3
Wear tool radius compensation
15 Radius 1
16 Reserved
17 Reserved
18 Reserved
19 Reserved
20 Reserved
Base dimension/adapter dimension tool length compensation
21 Basic length 1
22 Basic length 2
23 Basic length 3
Technology
24 Undercut angle Only for turning tools
25 Reserved

Reserved ... means that this tool parameter of the 840D/810D is not used
(reserved for expansions).

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-7
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.1 Tool offset for grinding operations

With/without monitoring With/without monitoring


with tool base dimension without tool base dimension

Tool base dimension


Length 1
Tool base dimension
Length 1 Length 1

Length 1
Note
The cutting edge data for D1 and D2 of a selected grinding tool can be
chained, i.e. if a parameter in D1 or D2 is modified, then the same parameter in
D1 or D2 is automatically overwritten with the new value (see tool-specific data
$TC_TPG2).

Definition of For user-specific cutting edge data, the additional parameters $TC_DPC1 to 10
additional can be set up using general MD18096: MM_NUM_CC_TOA_PARAM, regard-
parameters less of the tool type.
$TC_DPC1...10
Caution
! Changes to the MD take effect after POWER ON and will lead to initialization of
the memory (back data up beforehand if necessary!).

An automatic changeover between grinding wheel offset left and right does not
take place during contour grinding. This changeover must be programmed.

Copyright © Siemens AG, 2005.


2/W4/2-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.1 Tool offset for grinding operations

Tool types for The structure of tool types for grinding tools is as follows:
grinding tools
0: Without monit. with base dimension for GWPS
Tool type 4 X Y
1: With monit. with base dimension for GWPS
2: Without monit. without base dim. for GWPS
3: With monit. without base dim. for GWPS

0: Surface grinding wheel


1: Facing wheel
9: Dresser

Fig. 2-2 Structure of tool type for grinding tools, see Fig. 2–1

Note
Channel-specific MD20350: TOOL_GRIND_AUTO_TMON can be set to define
whether the monitoring function must already be active when tools with
monitoring (i.e. uneven tool types) are selected.

Examples:
This structure can be used to create the following tool types:

S Type 400: Surface grinding wheel


S Type 401: Surface grinding wheel with monitoring and tool base dimension
for GWPS

S Type 403: Surface grinding wheel with monitoring/without tool base dimen-
sion for GWPS

S Type 410: Facing wheel


S Type 411: Facing wheel with monitoring with base dimension for GWPS
S Type 413: Facing wheel with monitoring without base dimension for GWPS
S Type 490: Dresser

2.1.3 Tool-specific grinding data

Tool-specific grinding data are available once for every T number (type
400–499). They are automatically set up with every new grinding tool (type
400–499).

Note
Tool-specific grinding data have the same characteristics as a tool edge. This
may need to be taken into account when the number of cutting edges is
specified in MD18100:
MM_NUM_CUTTING_EDGES_IN_TOA.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-9
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.1 Tool offset for grinding operations

When all the cutting edges of a tool are deleted, the existing tool-specific grind-
ing data are deleted at the same time.

Tool-specific The parameters are assigned as follows:


grinding data
Parameters Meaning Data type
$TC_TPG1 Spindle number Integer
$TC_TPG2 Chaining rule Integer
$TC_TPG3 Minimum wheel radius Real
$TC_TPG4 Minimum wheel width Real
$TC_TPG5 Current wheel width Real
$TC_TPG6 Maximum speed Real
$TC_TPG7 Maximum peripheral speed Real
$TC_TPG8 Angle of inclined wheel Real
$TC_TPG9 Parameter number for radius calculation Integer
Additional parameters (user-specific cutting edge data)
$TC_TPC1 Real
Up to
$TC_TPC10 Real

Definition of For user-specific cutting edge data, the additional parameters $TC_DPC1 to 10
additional can be set up using general MD 18096: MM_NUM_CC_TDA_PARAM, regard-
parameters less of the tool type concerned.
$TC_DPC1...10
Caution
! Changes to the MD take effect after POWER ON and will lead to initialization of
the memory (back data up beforehand if necessary!).

Spindle number Number of programmed spindle (e.g. grinding wheel peripheral speed) and
$TC_TPG1 spindle to be monitored (e.g. wheel radius and width)

Chaining rule This parameter is set to define which tool parameters of tool edge 2 (D2) and
$TC_TPG2 tool edge 1 (D1) must be chained to one another. When the setpoint of a
chained parameter is modified, the value of the parameter with which it is
chained is modified automatically.

Tool para- Meaning Bit in Hex Dec


meter $TC_TPG2
$TC_DP1 Tool type 0 0001 1
$TC_DP2 Length of cut- 1 0002 2
ting edge
Geometry tool length compen-
sation
$TC_DP3 Length 1 2 0004 8
$TC_DP4 Length 2 3 0008 16

Copyright © Siemens AG, 2005.


2/W4/2-10 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.1 Tool offset for grinding operations

Tool para- Meaning Bit in Hex Dec


meter $TC_TPG2
$TC_DP5 Length 3 4 0010 32
$TC_DP6 Radius 5 0020 64
$TC_DP7 Reserved 6 0040 128
$TC_DP8 7 0080 256
$TC_DP9 8 0100 512
$TC_DP10 9 0200 1024
$TC_DP11 Reserved 10 0400 2048
Wear tool length compensation
$TC_DP12 Length 1 11 0800 4096
$TC_DP13 Length 2 12 1000 8192
$TC_DP14 Length 3 13 2000 16384
$TC_DP15 Radius 14 4000 32768
$TC_DP16 Reserved 15 8000 65536
$TC_DP17 16 10000 131072
$TC_DP18 17 20000 262144
$TC_DP19 18 40000 524288
$TC_DP20 Reserved 19 80000 1048576
Base dimension/adapter dimen-
sion tool length compensation
$TC_DP21 Basic length 1 20 100000 2097152
$TC_DP22 Basic length 2 21 200000 4194304
$TC_DP23 Basic length 3 22 400000 8388608
Technology
$TC_DP24 Reserved 23 800000 16777216
$TC_DP25 Reserved 24 1000000 33554432

Example of parameter chain:

S Lengths 1, 2 and 3 of the geometry, the length wear and the tool base/adapter dimen-
sions of lengths 1, 2 and 3 on a grinding tool (T1 in the example) must be automatically
transferred.

S Furthermore, the same tool type applies to tool edges 1 and 2.

Tool type $TC_DP1 Bit 0


Length 1 $TC_DP3 Bit 2
Length 2 $TC_DP4 Bit 3
Length 3 $TC_DP5 Bit 4

Wear
Length 1 $TC_DP12 Bit 11
Length 2 $TC_DP13 Bit 12
Length 3 $TC_DP14 Bit 13

Base/adapter dimension
Length 1 $TC_DP21 Bit 20
Length 2 $TC_DP22 Bit 21
Length 3 $TC_DP23 Bit 22

Parameter $TC_TPG2 must therefore be assigned as follows:

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-11
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.1 Tool offset for grinding operations

a) Binary
$TC_TPG2[1]= ’B111 0000 0011 1000 0001 1101’
(Bit 22 ... Bit 0)
b) Hexadecimal
$TC_TPG2[1]= ’H70381D’
c) Decimal
$TC_TPG2[1]=’D7354397’

Note
If the chaining specification is subsequently altered, the values of the two
cutting edges are not automatically adjusted, but only after one parameter has
been altered.

Min. wheel radius The limit values for the grinding wheel radius and width must be entered in this
and width parameter. These parameter values are used to monitor the grinding wheel ge-
$TC_TPG3 ometry.
$TC_TPG4
Note
It must be noted that the minimum grinding wheel radius must be specified in
the cartesian coordinate system for an inclined grinding wheel. A signal is
output at the PLC interface if the grinding wheel width and radius drop below
the minimum limits. The user can use these signals to define his error strategy.

Current width The width of the grinding wheel measured, for example, after the dressing op-
$TC_TPG5 eration, is entered here.

Max. speed and The upper limit values for maximum speed and peripheral speed of the grinding
grinding wheel wheel must be entered in this parameter.
peripheral speed Precondition: A spindle has been declared.
$TC_TPG6
$TC_TPG7

Copyright © Siemens AG, 2005.


2/W4/2-12 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.1 Tool offset for grinding operations

Angle of inclined This parameter specifies the angle of inclination of an inclined wheel in the cur-
wheel $TC_TPG8 rent plane. It is evaluated for GWPS.

MU
a

AS

Grinding disc

Workpiece

Z MZ

Fig. 2-3 Machine with inclined infeed axis

Note
The tool lengths are not automatically compensated when the angle is altered.

The angle must be within the –90  $TC_TPG8 < +90 range.
In the case of machines with inclined axes, the same angle must be set for the
inclined axis and the inclined grinding wheel. With SW versions NCU 5.1.11/P5
and 4.4.35/P4 and earlier with GWPS for grinding wheel cutting rate and
inclined axis, the input value in tool parameter $TC_TPG8 must be set in RAD
rather than DEGREE. $TC_TPG8 in RAD = PI/180* angle.

Parameter number This parameter specifies which offset values are to be used for the
for radius GWPS calculation and tool monitoring for minimum wheel radius ($TC_TPG3).
calculation
$TC_TPG9
$TC_TPG9 = 3 Length 1 (geometry + wear + base, depending on tool type)
$TC_TPG9 = 4 Length 2 (geometry + wear + base, depending on tool type)
$TC_TPG9 = 5 Length 3 (geometry + wear + base, depending on tool type)
$TC_TPG9 = 6 Radius

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-13
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.1 Tool offset for grinding operations

Access from parts Parameters can be read and written from the parts program.
program
Example Programming
Read the current width of tool 2 and store in R10 R10 = $TC_TPG5 [2]
Write value 2000 to the maximum speed of tool 3 $TC_TPG6 [3] = 2000

$P_ATPG[m] for This system variable allows the tool-specific grinding data for the current tool to
current tool be accessed.
m: Parameter number (data type: Real)
Example:
Parameter 3 ($TPG3[<T No.>])

$P_ATPG[3]=R10

Note

S The monitoring data apply to both the left-hand and the right-hand cutting
edge of the grinding wheel.

S The tool-specific grinding data take effect when the following are pro-
grammed:
GWPSON (selection of constant wheel peripheral speed),
TMON (selection of tool monitoring function). To make a changed data effec-
tive, GWPSON or TMON must be programmed again.

S The length compensations always specify the distances between the tool
carrier reference point and the tool tip in the cartesian coordinates (must be
noted for inclined grinding wheel).

2.1.4 Examples of grinding tools

Tool length compensations for the geometry axes or radius compensation in the
plane are assigned on the basis of the current plane.

Planes The following planes and axis assignments are possible (abscissa, ordinate,
applicate for 1st, 2nd and 3rd geometry axes):

Com- Axis perpendicular to plane (appli-


Plane (abscissa/ordinate)
mand cate)
G17 X/Y Z
G18 Z/X Y
G19 Y/Z X

Copyright © Siemens AG, 2005.


2/W4/2-14 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.1 Tool offset for grinding operations

Y 2. Geometry axis

G18

G17
X
1. Geometry axis

Z 3. Geometry axis

Fig. 2-4 Planes and axis assignment

Surface grinding
wheel

Entries in tool
parameters e.g.
G18: Z/X plane
$TC_DP1 400 F
X
$TC_DP3 Length 1
$TC_DP4 Length 2
Z
$TC_DP6 Radius
Length 1
Effect (X)
Radius
G17 Length 1 in Y
Length 2 in X
Radius in X/Y

G18 Length 1 in X
Length 2 in Z
Radius in Z/X
Unused parameters Length 2 (Z)
must be set to 0. Length 1 in Z
G19 F: Tool holder reference point
Length 2 in Y
Radius in Y/Z

Fig. 2-5 Offset values required by a surface grinding wheel

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-15
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.1 Tool offset for grinding operations

Inclined wheel Without tool base dimension for GWPS

Entries in tool
parameters

$TC_DP1 403
a
$TC_DP3 Length 1
$TC_DP4 Length 2
$TC_DP6 Radius F

Effect

G17 Length 1 in Y
Length 2 in X
Radius in X/Y Length 1
Radius (X)
G18 Length 1 in X
Length 2 in Z
Radius in Z/X
Unused parameters
must be set to 0. Length 1 in Z Length 2 (Z)
G19
Length 2 in Y
Radius in Y/Z F: Tool holder reference point

Fig. 2-6 Offset values required for inclined wheel with implicit monitoring selection

Inclined wheel With tool base dimension for GWPS

Entries in tool
parameters
$TC_DP1 401 F: Tool holder reference point
$TC_DP3 Length 1
$TC_DP4 Length 2
$TC_DP6 Radius
a
$TC_DP21 L1 base
$TC_DP22 L2 base F’

Wear values acc. to Effect Geometry


requirements Length 1 in Y length 1
G17
Length 2 in X
Radius in X/Y Base
length 1
Length 1 in X Radius
Unused parameters G18
Length 2 in Z
must be set to 0. Radius in Z/X
F

G19 Length 1 in Z Base length 2


Length 2 in Y Geometry length 2
Radius in Y/Z

Fig. 2-7 Required offset values shown by example of inclined grinding wheel with implicit monitoring selection and with
base selection for GWPS calculation

Copyright © Siemens AG, 2005.


2/W4/2-16 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.1 Tool offset for grinding operations

Surface grinding
wheel

Entries in tool
parameters
F
$TC_DP1 403

$TC_DP3 Length 1
$TC_DP4 Length 2 Base
length 1
$TC_DP6 Radius
$TC_DP21 L1 base F’

$TC_DP22 L2 base Effect

G17 Length 1 in Y
Length 2 in X Geometry
Wear values acc. to Radius in X/Y length 1 Radius
requirements Base
Length 1 in X length 2
G18
Length 2 in Z
Radius in Z/X Geometry
Unused parameters length 2
must be set to 0. Length 1 in Z
G19
Length 2 in Y
Radius in Y/Z F: Tool holder reference point

Fig. 2-8 Required offset values of a surface grinding wheel without base dimension for GWPS

Facing wheel

Entries in tool e.g.


parameters G18: Z/X plane

$TC_DP1 411 X

$TC_DP3 Length 1
Z
$TC_DP4 Length 2
$TC_DP6 Radius
Effect
F
Wear values acc. to Length 1 in Y
G17
requirements Length 2 in X
Radius in X/Y Radius
Length 1
Length 1 in X (X)
G18
Length 2 in Z
Unused parameters must Radius in Z/X
be set to 0.
Length 2
G19 Length 1 in Z (Z)
Length 2 in Y
Radius in Y/Z F: Tool holder reference point

Fig. 2-9 Required offset values of a facing wheel with monitoring parameters

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-17
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.2 Online tool offset

2.2 Online tool offset

Application A grinding operation involves both machining of a workpiece and dressing of


the grinding wheel. These processes can be operated in the same channel or in
separate channels.
To allow the wheel to be dressed while it is machining a workpiece, the machine
must offer a function whereby the reduction in the size of the grinding wheel
caused by dressing is compensated on the workpiece.
This type of compensation can be implemented by means of the “Online tool
offset” (Continuous Dressing) function (see Chapter 3).

Dressing during To allow machining to continue while the grinding wheel is being dressed, the
machining process reduction in the size of the grinding wheel caused by dressing must be trans-
ferred to the current tool in the machining channel as a tool offset that is applied
immediately.
This parallel dressing operation can be implemented by means of the “Continu-
ous Dressing (parallel dressing), Online tool offset” function (see Chapter 3).

Note
The online tool offset may only be used for grinding tools.

Dressing roller

Dressing
amount
Grinding disc

ÉÉÉÉÉÉÉÉÉÉÉÉÉÉ
ÉÉÉÉÉÉÉÉÉÉÉÉÉÉ
Length 1

ÉÉÉÉÉÉÉÉÉÉÉÉÉÉ Workpiece

Fig. 2-10 Dressing with a dressing roller in parallel to machining

Copyright © Siemens AG, 2005.


2/W4/2-18 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.2 Online tool offset

General An online tool offset can be activated for every grinding tool in any channel.
information
The online tool offset is generally applied as a length compensation. Like geom-
etry and wear data, lengths are assigned to geometry axes on the basis of the
current plane as a function of the tool type.
The grinding spindle monitoring function (see Section 2.3) remains active when
an online tool offset is selected.

Note
The offset always corrects the wear parameters of the selected length. If the
length compensation is identical for several cutting edges, then a chaining
specification must be used to ensure that the values for the 2nd cutting edge
are automatically corrected as well.
If online offsets are active in the machining channel, then the wear values for
the active tool in this channel may not be changed from the machining program
or via operator inputs.
Modifications to the radius wear (P15) are not taken into account until the tool is
reselected (<SW4).
Online offsets are also applied to the constant grinding wheel peripheral speed
(GWPS), i.e. the spindle speed is corrected by the corresponding value.

Commands The following commands are provided for online tool offsets:

Command Meaning
FCTDEF Parameterize function (up to 3rd degree polyno-
(<polynomial_no>, <lower_limit_value>, <upper_limit_value>, <co- mial)
efficient 0>, <coefficient 1>, <coefficient 2>, <coefficient 3>) (Fine Tool Offset Definition)
PUTFTOCF Write online tool offset continuously
( <polynomial_no.>, <reference_value>, <Length1_2_3>, <chan- (Put Fine Tool Offset Compensation)
nel_no.>, <spindle_no.>)
PUTFTOC Write online tool offset discretely
(<value>, <Length1_2_3>, <channel_no.>, <spindle_no.>) (Put Fine Tool Offset Compensation)
FTOCON Activation of online tool offset
(Fine Tool Offset Compensation ON)
FTOCOF Deactivation of online tool offset
(Fine Tool Offset Compensation OFF)

Note
Changes to the correction values in the TOA memory do not take effect until T
or D is programmed again.

References: /PA/, Programming Guide

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-19
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.2 Online tool offset

2.2.1 Write online tool offset: Continuous

Certain dressing strategies (e.g. dressing roller) are characterized by the fact
that the grinding wheel radius is continuously (linearly) reduced as the dressing
roller is fed in. This strategy requires a linear function between infeed of the
dressing roller and writing of the wear value of the respective length.
Function FCTDEF allows 3 independent functions to be defined according to
the following syntax:

Parameterize The function parameters are set in a separate block according to the following
function syntax:
FCTDEF(<polynomial_no.>, <lower_limit_value>, <upper_limit_value>,
<coefficient a0>, <coefficient a1>, <coefficient a2>, <coefficient a3>)
FCTDEF Function Definition
Polynomial no.: Number of function (e.g. 1, 2 or 3)
Lower/upper limit value: Determines value range of function
(limit values in input resolutions)
Coefficients a0, a1, a2 Coefficients of polynomial
A polynomial of the 3rd degree is generally defined as follows:
y = a0 + a1  x + a2  x2 + a3  x3

y = f(x) = a0 + a1

Dy
a1 = Dy
Dx

a0

Dx X

Fig. 2-11 Straight line equation

Note
FCTDEF must be programmed in a separate NC block.

Copyright © Siemens AG, 2005.


2/W4/2-20 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.2 Online tool offset

Example:
Let us assume: Pitch a1 = +1
a2 = 0
a3 = 0
The value of the function must be y = 0 at the instant of
definition and be derived from machine axis XA
(e.g. dresser axis).

100 Upper limit value

XA
XAi
Definition point
–100

Lower limit value

FTCDEF(1,–100,+100,–$AA_IW[XA],1)

Fig. 2-12 Straight line with gradient 1

Write online tool PUTFTOCF( <polynomial_no.>, <reference_value>, <Length1_2_3>,


offset <channel_no.>, <spindle_no.>)
continuously PUFTOCF
Polynomial no.: Number of function (1, 2, 3)
Reference value: Reference value of function
Length_1_2_3: Wear parameter to which correction value is added
Channel no.: Channel in which offset must take effect
Spindle no.: Spindle to which offset must be applied
The online tool offset is activated before the dresser axis movement block.

Example:
FCTDEF (1, –100, 100, –$AA_IW[X], 1) ; Define function
PUTFTOCF (1, $AA_IW[X], 1, 2, 1) ; Write online TO
; continuously
Length 1 of tool for spindle 1 in channel 2 is modified as a function of X axis
movement.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-21
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.2 Online tool offset

Note

The online tool offset for a (geometric) grinding tool that is not active can be
activated by specifying the appropriate spindle number.

If there is ... then ...


no channel no. is spe- the online offset will take effect in this channel
cified
no spindle no. is spe- the online offset will be applied to the current tool
cified

With SW 3.2 and higher, an online tool offset can be called as a synchronized
action.
References: /FB/, S5, “Synchronized Actions”

2.2.2 Activate/deactivate online tool offset

Activation/ The following commands activate and deactivate the online tool offset in the
deactivation of machining channel (grinding, destination channel):
online tool offset
S FTOCON Activation of online tool offset
The machining channel can process online tool offsets (PUTFTOC) only if
the offset is active (FTOCON). Alarm 20204 “PUTFTOC command not al-
lowed” is otherwise output.

S FTOCOF Deactivation of online tool offset


FTOCOF deactivates the online tool offset. The written values remain stored
in the appropriate length compensation data.
Online offsets are traversed in the basic coordinate system, i.e. even when the
workpiece coordinate system has been rotated, the length compensations al-
ways act in parallel to the coordinates of the unrotated system.
The offset is applied regardless of whether or not the axis to be compensated is
traversed in the current block.

Note
Command FTOCON must be written to the channel in which the offset must be
applied (machining channel for grinding operation).

FTOCOF always corresponds to reset position. PUTFTOC commands are ef-


fective only when the parts program and command FTOCON are active.

Copyright © Siemens AG, 2005.


2/W4/2-22 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.2 Online tool offset

2.2.3 Example of writing online tool offset continuously

F Z
p

ÂÂÂ
ÂÂÂ
Workpiece table

ÂÂÂ
X

Fig. 2-13 Surface grinding machine:

Y: Infeed axis for grinding wheel


V: Infeed axis for dressing roller
X: Oscillation axis, left – right
Plane for tool offset: G19 (Y/Z plane)
Length 1 acts in Z, length 2 in Y, tool type = 401
Machining: Channel 1 with axes Y, X
Dressing: Channel 2 with axis V
Task After the grinding operation has started at Y100, the grinding wheel must be
dressed by 0.05 (in V direction). The dressing amount must be compensated
continuously by means of an online offset.
Main machining ...
program G1 G19 F10 G90 ;Basic setting
in channel 1 T1 D1 ;Select current tool
S100 M3 Y100 ;Spindle ON, traverse to starting position
FTOCON ;Activate online offset
INIT (2, “/_N_MPF_DIR/_N_ABRICHT_MPF”, “S”)
;Select program in channel 2
START (2) ;Start program in channel 2

Y200 ;Traverse to target position


...
M30

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-23
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.2 Online tool offset

Dressing program ...


in channel 2 FCTDEF (1, –1000, 1000, –$AA_IW[V], 1)
_N_ABRICHT_MPF ;Define function
PUTFTOCF (1, $AA_IW[V], 2, 1) ;Write online tool offset continuously
U–0.05 G1 F0.01 G91 ;Infeed movement to dress wheel
...
M30

Note
Axis V operates (dresses) in parallel to Y, i.e. length 2 acts in Y and must
therefore be compensated.

2.2.4 Write online tool offset discretely

This command writes an offset value by means of a program command.

PUTFTOC(<value>, <Length1_2_3>, <channel_no.>, <spindle_no.>)


Put Fine Tool-Offset-Compensation
The wear of the specified length (1, 2 or 3) is modified online by the pro-
grammed value.

Note

The online tool offset for a (geometric) grinding tool that is not active can be
activated by specifying the appropriate spindle number.
If there is ... then ...
no channel no. is spe- the online offset will take effect in this channel
cified
no spindle no. is spe- the online offset will be applied to the current tool
cified

Copyright © Siemens AG, 2005.


2/W4/2-24 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.2 Online tool offset

2.2.5 Information about online offsets

Response in the case of tool change

S In cases where FTOCON has been active since the last tool or cutting edge
change, preprocessing stop with resynchronization is initiated in the control
when a tool is changed.

S Cutting edge changes can be implemented without preprocessing stop.

Note
Tool changes can be executed in conjunction with the online tool offset through
the selection of T numbers.
Tool changes with M6 cannot be executed in conjunction with the online tool
offset function.

Machining plane and transformation

S FTOCON can be used only in conjunction with the “Inclined axis” trans-
formation.

S It is not possible to change transformations or planes (e.g. G17 to G18)


when FTOCON is active, but only in the FTOCOF state.

Resets and operating mode changes

S When online offset is active, NC STOP and program end with M2/M30 are
delayed until the amount of compensation has been traversed.

S The online tool offset is immediately deselected in response to NC RESET.


S Online tool offsets can be activated in AUTOMATIC mode and when the
program is active.

Supplementary conditions

S The online tool offset is overlaid on the programmed movement of the axis.
The programmed limit values (e.g. speed) are taken into account.
If a DRF offset and online tool offset are both activated for an axis, the DRF
offset has higher priority and is applied first.

S The valid offset is traversed at JOG velocity allowing for the specified maxi-
mum acceleration rate.
Channel-specific MD20610: ADD_MOVE_ACCEL_RESERVE is taken into
account with respect to FTOCON. An acceleration margin can thus be re-
served for the movement which means that the overlaid movement can be
executed immediately.

S The valid online offset is deleted on reference point approach with G74.
S The fine offset is not deselected for tool changes with M6.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-25
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.3 Online tool radius compensation

2.3 Online tool radius compensation

General When the longitudinal axis of the tool and the contour are mutually perpendicu-
lar, the offset quantity can be applied as a length compensation to one of the
three geometry axes (online tool length compensation, see Section 2.2).
If this condition is not fulfilled, then the offset quantity can be entered as a real
radius compensation value (online tool radius compensation).

Enabling of The online tool radius compensation function is enabled via


function MD 20254: $MC_ONLINE_CUTCOM_ENABLE (enable online tool radius com-
pensation).

Activation/ An online tool radius compensation is activated and deactivated by means of


deactivation commands FTOCON and FTOCOF (in the same way as an online tool length
compensation, see Subsection 2.2.2).

Parameterization The parameters of the online tool offset are set by means of commands PUTF-
TOCF (see Subsection 2.2.1) and PUTFTOC (see Subsection 2.2.4). Parameter
LENGTH 1_2_3 must be supplied as follows for an online tool radius com-
pensation:
Parameter <length 1_2_3> = 4
Wear parameter to which correction value is added

Supplementary
conditions
S A tool radius compensation, and thus also an online tool radius compensa-
tion, can be activated only when the selected tool has a radius other than
zero. This means that machining operations cannot be implemented solely
with a tool radius compensation.

S The online offset values should be low in comparison to the original radius to
prevent the permitted dynamic tolerance range from being exceeded when
the offset is overlaid on the axis movement.

S Application of online tool radius compensation


On grinding and turning tools (types 400–599), the compensation value is
applied as a function of the tool point direction, i.e. it acts as a radius com-
pensation when tool radius compensation is active and as a length com-
pensation when tool radius compensation is deactivated in the axes speci-
fied by the tool point direction.
On all other tool types, the compensation value is applied only when tool
radius compensation has been activated with G41 or G42. The compensa-
tion value is canceled when tool radius compensation is deactivated with
G40.

Copyright © Siemens AG, 2005.


2/W4/2-26 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.4 Grinding-specific tool monitoring

2.4 Grinding-specific tool monitoring

The tool monitoring function is a combination of geometry and speed monitors


and can be activated for any grinding tool (tool type: 400 to 499).

Selection The monitoring function is selected

S by programming (TMON) in the parts program or


S automatically through selection of tool length compensation of a grinding
tool with uneven tool type number.

Note
Automatic selection of the monitor must be set via channel-specific MD20350:
TOOL_GRIND_AUTO_TMON.

Monitoring active The monitor for a grinding tool remains active until it is deselected again by
means of program command TMOF.

Note

S Monitoring of one tool is not deselected if the monitoring function is selected


for another tool provided the two tools are referred to different spindles.

S One tool and thus also one tool monitor can be active for every spindle at
any point in time.

S Activated monitors remain active after a RESET.

2.4.1 Geometry monitoring

The following quantities can be monitored:

S The current grinding wheel radius


S The current grinding wheel width
The current wheel radius is compared to the value stored in parameter
$TC_TPG3 (see Subsection 2.1.3).
The current radius is compared to the parameter number of the first edge (D1)
of a grinding tool declared in parameter $TC_TPG9.

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-27
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.4 Grinding-specific tool monitoring

The current wheel width is generally calculated by the dressing cycle and can
be entered in parameter $TC_TPG5 of a grinding tool. The value entered in this
parameter is compared to the value stored in parameter $TC_TPG4 when the
monitoring function is active.

When does The monitoring function for the grinding wheel radius remains active when an
monitoring online tool offset is selected.
take place?
S when the monitoring function is activated
S when the current radius (online tool offset, wear parameter) or the current
width ($TC_TPG5) is altered.

Monitor reactions If the current grinding wheel radius becomes smaller than the value stored in
parameter $TC_TPG3 or the current grinding wheel width ($TC_TPG5) drops
below the value defined in $TC_TPG4, the axis/spindle-specific bit DBX83.3 is
set to “1” in DB31–48 at the PLC interface.
This bit is otherwise set to “0”.
DB31–48, DBX83.3 = 1 ⇒ Geometry monitor has responded
DB31–48, DBX83.3 = 0 ⇒ Geometry monitor has not responded

Note
No error reaction is initiated internally in the control system.

2.4.2 Speed monitoring

The speed monitor checks the grinding wheel peripheral speed (parameter
$TC_TPG7) as well as the maximum spindle speed (parameter $TC_TPG6).
The unit of measurement is:

S Grinding wheel peripheral speed m * s–1


S Spindle speed rev/min
The monitoring function operates cyclically and is designed to react to the first
limit value reached.

When does Monitoring of the speed for violation of the limit value takes place cyclically, al-
monitoring lowing for the spindle speed override.
take place?

When is the speed The speed limit value is recalculated


limit value reset?
S when the monitoring function is selected,
S when the online offset values (wear parameters) are altered.

Copyright © Siemens AG, 2005.


2/W4/2-28 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.4 Grinding-specific tool monitoring

Monitor reactions The system reacts as follows when the speed monitor responds

S The speed is restricted to the limit value and


S IS “Speed monitoring” (DB31–48, DBX83.6) is output.
DB31–48, DBX83.6 = 1 ⇒ Limit value of speed monitoring reached
DB31–48, DBX83.6 = 0 ⇒ Limit value of speed monitoring not reached

Note
No error reaction is initiated internally in the control system.

2.4.3 Selection/deselection of tool monitoring

The following parts program commands are provided for selecting and deselect-
ing the grinding-specific tool monitor of an active or inactive tool:

Command Meaning
TMON Selection of tool monitoring for the active tool in the channel
Tool monitoring on
TMOF Deselection of tool monitoring for the active tool in the channel
Tool monitoring Off
TMON (T number) Selection of tool monitoring for a non-active tool with T number
Tool monitoring on (t no.)
TMOF (T number) Deselection of tool monitoring for a non-active tool with T number
Tool monitoring off (t no.)
TMOF (0) Deselection of tool monitoring for all tools
Tool monitoring off (0)

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-29
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.5 Constant grinding wheel peripheral speed (GWPS)

2.5 Constant grinding wheel peripheral speed (GWPS)

What is GWPS? The grinding wheel peripheral speed is generally programmed for grinding
wheels rather than a spindle speed. This is a quantity that is determined by the
technological process (e.g. grinding wheel characteristic, material pairing). The
speed is then calculated from the programmed value and the current wheel ra-
dius.

Note
GWPS can be selected for grinding tools (types 400–499).

Speed calculation The formula for calculating the speed is as follows:


GWPS[m*s–1] * 60
n[rev/min] = –––––––––––––––
2π ∗ R[m]

Note

S The grinding wheel peripheral speed can be programmed and selected for
grinding tool types (400 to 499).
Wear is taken into account in calculating the radius (parameter
$TC_TPG9).

S This function also applies to inclined wheels/axes.


S The relevant wear and the tool base dimension (as a function of tool type)
are added to the parameter selected by $TC_TPG9. The product is divided
by cos ($TC_TPG8) if parameter $TC_TPG8 (angle of inclined grinding
wheel) is positive and by sin ($TC_TPG8) if it is negative.

When is the speed The speed is recalculated in response to the following events:
recalculated?
S GWPS programming
S Change in the online offset values (wear parameters).

Copyright © Siemens AG, 2005.


2/W4/2-30 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.5 Constant grinding wheel peripheral speed (GWPS)

2.5.1 Selection/deselection and programming of GWPS, system vari-


able

The GWPS is selected and deselected with the following parts program com-
mands:

Command Meaning
GWPSON Selection of GWPS for the active tool in chan-
Grinding wheel peripheral speed On nel
GWPSOF Deselection of GWPS for the active tool in
Grinding wheel peripheral speed Off channel
GWPSON(T number) Selection of GWPS for a non-active tool with
Grinding wheel peripheral speed on (t T number
no.)

GWPSOF(T number) Deselection of GWPS for a non-active tool


Grinding wheel peripheral speed off (t with T number
no.)
S[spindle number] = value Programming of constant grinding wheel pe-
ripheral speed.
Unit of value setting depends on basic sys-
tem (m/s or ft/s).

References: /PA/, Programming Guide

Note

S Parameter $TC_TPG1 assigns a spindle to the tool. Every following S value


for this spindle is interpreted as a grinding wheel peripheral speed when
GWPS is active (see above).

S If GWPS must be selected with a new tool for a spindle for which the GWPS
function is already active, the active function must be deselected first with
GWPSOF before it can be activated again with the new tool (otherwise an
alarm is output).

S GWPS can be active simultaneously for several spindles, each with a


different grinding tool, in the same channel.

S Selection of GWPS with GWPSON does not automatically result in


activation of tool length compensation or of the geometry and speed
monitoring functions. When GWPS is deselected, the last speed to be
calculated remains valid as the setpoint.

$P_GWPS[spindle This system variable can be used in the part program to determine whether
number] GWPS is active for a specific spindle.
TRUE: GWPS programming of spindle active
FALSE: GWPS programming of spindle not active
References: /PG/, Programming Guide

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-31
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.5 Constant grinding wheel peripheral speed (GWPS)

2.5.2 GWPS in all operating modes

General This function allows the constant grinding wheel peripheral speed (GWPS) func-
tion to be selected for a spindle immediately after POWER ON and to ensure
that it remains active after an operating mode changeover, RESET or parts pro-
gram end.
The function is activated via MD 35032: $MA_SPIND_FUNC_RESET_MODE
(parameterization of GWPS function).

GWPS after A grinding-specific tool is defined via the following MD:


POWER ON MD 20110: $MC_RESET_MODE_MASK
MD 20120: $MC_TOOL_RESET_VALUE
MD 20130: $MC_CUTTING_EDGE_RESET_VALUE

If and then
MD 35032: the tool is a grinding-specific tool type (400 to 499, GWPS is ac-
$MA_SPIND_FUN MD 20110, 20120, 20130) with reference to a valid tivated for this
C_RESET_MODE spindle (parameter $TC_TPG1), spindle.
is set
Note:
GWPS is deselected for all other spindles in this channel.

GWPS after After a RESET/parts program end, GWPS remains active for all spindles for
RESET/parts which it was already selected.
program end
If and then
MD 35032: GWPS is active on RE- GWPS remains active for
$MA_SPIND_FUNC_RE- SET or parts program this spindle.
SET_MODE is set end,
MD 35032: GWPS is active on RE- GWPS is deactivated for
$MA_SPIND_FUNC_RE- SET or parts program this spindle.
SET_MODE is not set end,
Note:
GWPS is deselected for all other spindles in this channel.

Via the MD 35040: $MA_SPIND_ACTIVE_AFTER_RESET can be set to deter-


mine whether the spindle must continue to rotate at the current speed after RE-
SET.

Programming The spindle speed can be modified through the input of a grinding wheel periph-
eral speed. The spindle speed can be modified through

S programming in the parts program/overstoring


S programming the grinding wheel peripheral speed through assignment to
address “S” in MDA

S spindle speed control via PLC (FC18)

“GWPS active” IS “GWPS active” (DB31, ... , DBX84.0) can be used to determine whether or
interface signal not the GWPS is active.

Copyright © Siemens AG, 2005.


2/W4/2-32 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
2.5 Constant grinding wheel peripheral speed (GWPS)

2.5.3 Example of how to program GWPS

Data of tool T1 $TC_DP1[1,1] = 403 ;Tool type


(peripheral $TC_DP3[1,1] = 300 ;Length1
grinding wheel) $TC_DP4[1,1] = 50 ;Length2
$TC_DP12[1,1] = 0 ;Wear length 1
$TC_DP13[1,1] = 0 ;Wear length 2
$TC_DP21[1,1] = 300 ;Base length 1
$TC_DP22[1,1] = 400 ;Base length 2
$TC_TPG1[1] = 1; Spindle number
$TC_TPG8[1] = 0; Angle of inclined wheel
$TC_TPG9[1] = 3; Parameter no. for radius calculation

Data of tool T5 $TC_DP1[5,1] = 401 ;Tool type


(inclined grinding $TC_DP3[5,1] = 120 ;Length1
wheel) $TC_DP4[5,1] = 30 ;Length2
$TC_DP12[5,1] = 0 ;Wear length 1
$TC_DP13[5,1] = 0 ;Wear length 2
$TC_DP21[5,1] = 100 ;Base length 1
$TC_DP22[5,1] = 150 ;Base length 2
$TC_TPG1[5] = 2 ;Spindle number
$TC_TPG8[5] = 45 ;Angle of inclined wheel
$TC_TPG9[5] = 3 ;Parameter no. for radius calculation

Programming N20 T1 D1 ;Select T1 and D1


N25 S1=1000 M1=3 ;1000 rev/min for spindle 1
N30 S2=1500 M2=3 ;1500 rev/min for spindle 2
...
N40 GWPSON ;GWPS selection for active tool T1
N45 S[$P_AGT[1]] = 60 ;Set GWPS for active tool to 60 m/s
n=1909.85 min–1
....
N50 GWPSON(5) ;GWPS selection for tool 5 (2nd spindle)
N55 S[$TC_TPG1[5] ] = 40 ;Set GWPS for spindle 2 to 40 m/s
n=1909.85 min–1
...
N60 GWPSOF ;Switch off GWPS for active tool
N65 GWPSOF(5) ;Switch off GWPS for tool 5 (spindle 2)
...

Note
Programming of tool monitoring function: See Section 2.4.

Supplementary References: /FB/, P5, Oscillation


references /FB/, V1, Feeds, Multiple Feeds in a Block
/FB/, S5, Synchronized Actions
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/2-33
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
2.5 Constant grinding wheel peripheral speed (GWPS)

Notes

Copyright © Siemens AG, 2005.


2/W4/2-34 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
3.1 Tool changes with online tool offset

Supplementary Conditions 3
3.1 Tool changes with online tool offset
Tool changes with M6 cannot be executed in conjunction with the online tool
offset function.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/3-35
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
3.1 Tool changes with online tool offset

Notes

Copyright © Siemens AG, 2005.


2/W4/3-36 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
4.2 Axis-specific machine data

Data Descriptions (MD, SD) 4


4.1 Channelspecific machine data

20254 ONLINE_CUTCOM_ENABLE
MD number Enable online tool radius compensation
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: 2 Unit: –
Data type: BOOLEAN Applies as of SW 4.1
Meaning: This data enables online tool radius compensation.
When the function is enabled, the control reserves the necessary memory space required
for online tool radius compensation after POWER ON.

ONLINE_CUTCOM_ENABLE = 0: Online tool radius compensation can be used


ONLINE_CUTCOM_ENABLE = 1: Online tool radius compensation cannot be used

20350 TOOL_GRIND_AUTO_TMON
MD number Automatic tool monitoring
Default setting: 0 Minimum input limit: 0 Maximum input limit: 1
Changes effective after POWER ON Protection level: Unit: –
Data type: BYTE Applies as of SW 2.1
Meaning: This MD defines whether the tool monitoring function is automatically activated when the
tool length compensation of a grinding tool with monitoring is selected.
TOOL_GRIND_AUTO_TMON = 1 : Automatic monitoring activated
TOOL_GRIND_AUTO_TMON = 0 : Automatic monitoring deactivated

4.2 Axis-specific machine data

35032 SPIND_FUNC_RESET_MODE
MD number Parameterization of GWPS function
Default setting: 0 Minimum input limit: 0 Maximum input limit: 0x01
Changes effective after POWER ON Protection level: Unit: –
Data type: DWORD Applies as of SW 4.1
Meaning: This data allows the “GWPS in every operating mode” function to be selected/deselected.

SPIND_FUNC_RESET_MODE, Bit 0 = 0 : “GWPS in every operating mode” is deselected


SPIND_FUNC_RESET_MODE, Bit 0 = 1 : “GWPS in every operating mode” is selected

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/4-37
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
4.2 Axis-specific machine data

Notes

Copyright © Siemens AG, 2005.


2/W4/4-38 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
6 Example

Signal Descriptions 5
DB31, ... Geometry monitoring
DBX83.3
Data Block Signal(s) NCK → PLC
Edge evaluation: – Signal(s) updated: – Signal(s) valid from SW: 2.1
Signal state 1 or signal Error in grinding wheel geometry
transition 0 –––> 1
Note: There is no further reaction to the response of this monitoring function. Reactions
deemed necessary must be programmed by the PLC user.
Signal state 0 or signal No error in grinding wheel geometry
transition 1 –––> 0
Application example(s) Grinding-specific tool monitoring.
References See Section 2.4

DB31, ... Speed monitoring


DBX83.6
Data Block Signal(s) NCK → PLC
Edge evaluation: – Signal(s) updated: – Signal(s) valid from SW: 2.1
Signal state 1 or signal Error in grinding wheel speed
transition 0 –––> 1
Note: No further reaction to this signal state is programmed. Reactions deemed necessary
must be programmed by the PLC user.
Signal state 0 or signal No error in grinding wheel speed
transition 1 –––> 0
Application example(s) Grinding-specific tool monitoring.
References See Section 2.4

DB31, ... GWPS active


DBX84.1
Data Block Signal(s) NCK → PLC
Edge evaluation: – Signal(s) updated: – Signal(s) valid from SW: 4.1
Signal state 1 or signal Constant grinding wheel peripheral speed (GWPS) is active.
transition 0 –––> 1
If GWPS is active, then all S value inputs from the PLC are interpreted as the grinding
wheel peripheral speed.
Signal state 0 or signal Constant grinding wheel peripheral speed (GWPS) is not active.
transition 1 –––> 0
Application example(s) GWPS in all operating modes.
References See Section 2.5.2

Example 6
None
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/6-39
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
6 Example

Notes

Copyright © Siemens AG, 2005.


2/W4/6-40 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05 Grinding-specific Tool Offset and Tool Monitoring (W4)
7.3 Interrupts

Data Fields, Lists 7


7.1 Interface signals

DB number Bit, byte Name Refe-


rence
Axis/spindle-specific
31, ... 83.3 Geometry monitoring (SW 2 and higher)
31, ... 83.6 Speed monitoring (SW 2 and higher)
31, ... 84.1 GWPS active (SW 4 and higher)

7.2 Machine data

Number Names Name Refe-


rence
General ($MN_ ... )
18094 MM_NUM_CC_TDA_PARAM Number of TDA data /FBW/
/S7/
18096 MM_NUM_CC_TOA_PARAM Number of TOA data which can be set up per /FBW/
tool and evaluated by the CC /S7/
18100 MM_NUM_CUTTING_EDGES_IN_TOA Tool offsets per TOA module S7
Channelspecific ($MC_ ... )
20254 ONLINE_CUTCOM_ENABLE Enable online tool radius compensation
20350 TOOL_GRIND_AUTO_TMON Automatic tool monitoring
20610 ADD_MOVE_ACCEL_RESERVE Acceleration reserve for overlaid movements K1
Axisspecific ($MA_ ... )
32020 JOG_VELO Conventional axis velocity H1
35032 SPIND_FUNC_RESET_MODE Parameterization of GWPS function

7.3 Interrupts
Detailed explanations of the alarms, which may occur, appear in
References: /DA/, Diagnostics Guide
or in the Online help.
J

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition 2/W4/7-41
Grinding-specific Tool Offset and Tool Monitoring (W4) 06.05
7.3 Interrupts

Notes

Copyright © Siemens AG, 2005.


2/W4/7-42 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

Symbols Automatically activated pre-initiation time,


2/N4/2-15
“Disable synchronization” (DB31, ... DBX31.5), Autonomous machine, 2/B3/1-23
2/S3/2-15 Autonomous single axis operations, 2/P2/6-42
AXCHANGE_MASK, 2/K5/4-31
Axial measurement, 2/M5/2-64
Numbers Axis
Holding the workpiece, 2/B3/1-28
13201, 2/M5/4-75
Local, 2/B3/1-28, 2/B3/1-29
13210, 2/M5/4-75
Physical, 2/B3/1-7, 2/B3/1-28
7-layer model, 2/B3/1-9
Usable, 2/B3/1-7
Work-holding, 2/B3/1-29
Axis container, 2/B3/1-28, 2/B3/1-29
A Axis container rotation active, 2/B3/5-150
Axis data, 2/B3/1-7
Acceleration, 2/H1/2-6, 2/H1/2-17, 2/H1/2-36
Axis ready, 2/B3/5-150
Acceleration characteristic, 2/N4/2-16
Axis/spindle replacement, 2/K5/1-3, 2/K5/2-14
ACN, 2/R2/2-12
AXIS_VAR_SERVER_SENSITIVE, 2/B3/4-129
ACP, 2/R2/2-12
AXRESET DONE, 2/P2/5-38
Activate coupling parameters, 2/S3/2-21
Activation after power ON, 2/S3/2-11
Activation methods, 2/S3/2-10
Activation of coupling, 2/S3/2-10 B
Active file system, 2/S7/2-5
Backlash compensation
Active/passive operating mode, 2/B3/5-146
2. Measuring system, 2/K3/2-12
Active/passive operating mode of MMC,
Displays, 2/K3/2-11
2/B3/5-146
Mechanical backlash, 2/K3/2-11
Actual value coupling, 2/S3/2-41
Negative backlash, 2/K3/2-12
Actual values, 2/M5/2-15
Positive backlash, 2/K3/2-11
Address, 2/B3/1-12
Backup battery, 2/B3/1-18
Alarm
Baud rate, 2/B3/1-8
Server, 2/B3/1-14, 2/B3/1-22
Bidirectional probe, 2/M5/2-6
Text management, 2/B3/1-18
Block change behavior, 2/S3/2-10
Alarms, 2/B3/1-20, 2/B3/1-21, 2/B3/1-23
Block search, 2/M5/2-64, 2/P2/2-8
Alarms, Messages, 2/B3/1-18
Booting, 2/B3/1-14
Alternate interface, 2/N4/2-15
Bus
Ambiguity in position, Examples, 2/M1/2-65
Address, 2/B3/1-6
Ambiguity in rotary axis position, Example,
Control, 2/B3/1-10, 2/B3/1-11, 2/B3/1-12,
2/M1/2-66
2/B3/1-14
AMIRROR(C), 2/R2/2-21
Design, 2/B3/1-23
Analog inputs of the NCK, 2/A4/2-18
Features, 2/B3/1-8
Analog outputs of the NCK, 2/A4/2-21
Nodes, 2/B3/1-8, 2/B3/1-11, 2/B3/1-12,
Analog value measurement, 2/A4/2-30
2/B3/1-14
Angle, inclined axis, 2/M1/2-47
Performance, 2/B3/1-8
Angular offset LS/FS, 2/S3/2-41
Termination, 2/B3/1-23
Angular offset POSFS, 2/S3/2-11
Type, 2/B3/1-6
Angularity error compensation, 2/K3/2-22
ASCALE, 2/R2/2-18
Assignment
Bus nodes-d bus system, 2/B3/1-14 C
By axis groups, 2/B3/1-28 Cabling, 2/B3/1-13
MMCs – NCUs, 2/B3/1-14 Calculation method, 2/M5/2-21
Oscillation/infeed axis, 2/P5/2-24, 2/P5/2-25 Cam positions
Assignment between probe type and application, Axis/cam assignment, 2/N3/2-15
2/M5/2-5 Setting cam positions, 2/N3/2-14
ATRANS, 2/R2/2-18 Cam range/cam pair, 2/N3/2-5
Automatic selection and deselection of position Cam signal output
control, 2/S3/2-25

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition Index-1
06.05

Independent, timer-controlled, 2/N3/2-20 conn_1, 2/B3/1-17


Timer-controlled, 2/N3/2-19 Connection on 840D, 810D, 2/M5/2-7
Cam signals Connection operating area, 2/B3/1-21
Activation of signal output, 2/N3/2-17 Connection to 810D, 2/M5/2-9
For linear axes, 2/N3/2-6, 2/N3/2-10 Connection to 840Di, 2/M5/2-8
For modulo rotary axes, 2/N3/2-7 Constant grinding wheel peripheral speed
Hardware assignment, 2/N3/2-18 (GWPS), 2/W4/2-30
Lead/delay times, 2/N3/2-15 Continuous dressing, 2/W4/2-18
Minus, 2/N3/2-17 Continuous jogging, 2/H1/2-10
Output to NCK I/Os, 2/N3/2-18 Continuous mode, 2/H1/2-10
Output to PLC, 2/N3/2-17 Jog mode, 2/H1/2-10
Plus, 2/N3/2-17 Continuous measurement, 2/M5/2-69
Cartesian manual travel, 2/M1/2-68 Continuous mode, 2/T1/2-6
Cartesian PTP travel, 2/M1/2-61 Contour handwheel, 2/H1/2-32
STAT address, 2/M1/2-64 Contour handwheel pulses per detent position,
TU address, 2/M1/2-65 2/H1/4-54
Central MMC, 2/B3/1-23 Contour handwheel/path definition by handwheel,
Chained transformations, 2/M1/2-54 2/H1/4-56
Activation, 2/M1/2-56 Control of manual traverse functions, 2/H1/2-8
Persistent transformation, 2/M1/2-57 Controlling synchronous spindle coupling via
Example, 2/M1/6-108 PLC, 2/S3/2-15
Number, 2/M1/2-55 Coordinate systems, 2/H1/2-7
Special points to be noted, 2/M1/2-56 COROS OP, 2/B3/1-13
Switching off, 2/M1/2-56 Coupling, user-defined, 2/S3/2-19
Chaining direction, 2/M1/2-55 Coupling
Chaining rule, 2/W4/2-10 Define new, 2/S3/2-19
Change defined angular offset, 2/S3/2-10 Fixed configuration, 2/S3/2-19
Change protection for coupling characteristics, Coupling characteristics, 2/S3/2-8
2/S3/2-8 Coupling options, 2/S3/2-6
Channel, 2/K5/1-3, 2/P2/2-6 Coupling parameters, 2/S3/2-26
Menu, 2/B3/1-18 Cross-communication, 2/B3/1-30
Name, 2/B3/1-18 Cylinder coordinate system, 2/M1/2-30
Number, 2/B3/1-5, 2/B3/1-10 Cylinder generated surface, 2/M1/1-6
Channel synchronization, 2/K5/2-6
Circular, Axis, 2/B3/1-26
Circularity test, 2/K3/2-47, 2/K3/2-48, 2/K3/2-78
Displays, 2/K3/2-80
D
Measurement, 2/K3/2-79 Data backup, Via RS-232, 2/B3/1-21
Parameterization, 2/K3/2-78 Data
Representation, 2/K3/2-79 Backup via RS-232, 2/B3/1-17
Clamping axis/spindle, 2/B3/1-29 Exchange, 2/B3/1-16
Clamping protection zone, 2/N4/2-32 Management server, 2/B3/1-14
Cold restart, 2/B3/1-17 Deactivation of coupling, 2/S3/2-11
Combination of different bus systems, 2/B3/1-14 Deactivation while spindles are moving, 2/S3/2-11
Commands MEAS, MEAW, 2/M5/2-11 Default setting, 2/B3/1-13, 2/S3/2-21
Comparator inputs, 2/A4/2-6, 2/A4/2-32 Definition of synchronous spindles, 2/S3/2-7
Compensation table, 2/K3/2-18 Delay time for ESR single axis, 2/P2/4-35
Compensations (K3) Additional torque for elec- Delete couplings, 2/S3/2-21
tronic weight compensation, 2/K3/4-97 Deselecting synchronous mode, 2/S3/2-11
Complete machining, 2/M1/2-9 Deselection methods, 2/S3/2-12
Computer, coupling, 2/B3/1-6, 2/B3/2-36 Differential speed, 2/S3/2-34
Computing capacity, 2/B3/1-26 Differential speed between leading and following
Config. dynamic stiffness control, MD 32642, spindles, 2/S3/2-33
2/K3/4-105 Digital inputs of the NCK, 2/A4/2-11
Configuration file, 2/B3/1-11, 2/B3/2-42, Digital outputs of the NCK, 2/A4/2-13
2/B3/2-59, 2/B3/2-65 Direct connection, 2/B3/1-18
NETNAMES.INI, 2/B3/6-173 Disable synchronization, 2/S3/5-49
Number, 2/B3/2-59 Double addressing, 2/B3/1-16
Configuring, 2/B3/1-19 DRAM, 2/S7/2-6

Copyright © Siemens AG, 2005.


Index-2 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

DRAM memory requirements, 2/S7/2-25 Friction compensation, 2/K3/2-46


Dressing during machining process, 2/W4/2-18 Conventional, 2/K3/2-47
DRF, 2/H1/1-3, 2/H1/2-40, 2/T1/2-24 Friction compensation (quadrant error compensa-
Drive control, 2/B3/1-28 tion)
Drum, 2/B3/1-28 Amplitude adaptation, 2/K3/2-47
Drum/rotary switching axis, 2/B3/1-26 Characteristic parameters, 2/K3/2-48
Dry run feedrate, 2/P2/2-32 Installation and startup, 2/K3/2-48
Dyn. stiffness control: Delay, 2/K3/4-105 Quadrant errors, 2/K3/2-46
Dynamic
Changeover, 2/B3/1-6
MMC property, 2/B3/1-13
Dynamic response adaptation, 2/S3/2-40
G
General, 2/M5/2-5
General machine data, 2/K5/4-31
Geometry axes, 2/H1/2-7
E Geometry axes in JOG mode, 2/H1/2-35
Electronic weight compensation, 2/K3/2-85 Geometry monitoring, 2/W4/2-27
End of motion criterion with block search, Global data, 2/B3/1-16
2/P2/2-27 Grinding operations, 2/M1/2-42
Example Grinding tools, 2/W4/2-5, 2/W4/2-14
Cont. measurement on completion of progr. Grinding-specific tool monitoring, 2/W4/2-27
traversing motion, 2/M5/6-80 Groove machining, 2/M1/2-29
Continuous measurements modally over Groove traversing-section, 2/M1/2-31
several blocks, 2/M5/6-81 GWPS, 2/W4/2-30
Continuous measurements with deletion of In all operating modes, 2/W4/2-32
distance-to-go, 2/M5/6-81
Measuring mode 1, 2/M5/6-79
Measuring mode 2, 2/M5/6-80
H
One operator panel, Three NCUs, 2/B3/6-174
TRAANG, 2/M1/6-106 Handheld programming unit (HPU), 2/B3/1-13,
TRACYL, 2/M1/6-102 2/B3/1-16
TRANSMIT, 2/M1/6-101 Handwheel
Two operator panels, One NCU, 2/B3/6-173 Assignment, 2/H1/2-15
Example of functional test, 2/M5/6-82 Connection, 2/H1/2-15
Example of probe functional test, 2/M5/2-71 Path definition, 2/H1/2-32
Expansions to punching and nibbling functions, Selection from MMC, 2/H1/2-16
2/N4/2-15 Traversal in JOG, 2/H1/2-15
Velocity specification, 2/H1/2-32
Via actual-value input, 2/H1/2-30
Handwheel override in AUTOMATIC mode
F Path definition, 2/H1/2-24
Fast analog NCK inputs, 2/A4/2-19 Programming and activation, 2/H1/2-27
Faults, 2/B3/1-17 Velocity override, 2/H1/2-25
Feed, 2/P2/2-28 Handwheel path or velocity values, 2/H1/4-56
Feed override, 2/P2/2-11, 2/P2/2-23, 2/P2/2-27, Handwheels 840Di, 2/H1/4-53
2/P2/2-28 Hardware limit switches, 2/H1/2-37
Feedrate override, 2/H1/2-6 HHU, 2/B3/1-16
Feedrate/rapid traverse override, 2/H1/2-35 Hirth tooth system, 2/T1/2-16
Fine/coarse synchronism, 2/S3/2-17 Homogeneous network, 2/B3/1-20
FM-NC, 2/B3/1-22 Host computer, 2/B3/1-6, 2/B3/1-7, 2/B3/2-36
Following error compensation, 2/K3/2-38 HPU, 2/B3/1-13, 2/B3/1-16
Dynamic response adaptation, 2/K3/2-45
Parameters, 2/K3/2-39, 2/K3/2-44
Following error compensation (feedforward con-
trol)
I
Axial following errors, 2/K3/2-38 I/O interface, 2/M5/2-10
Feedforward control methods, 2/K3/2-38 Identification, Operator panels, 2/B3/2-60
Speed feedforward control, 2/K3/2-40 INC, 2/T1/2-5, 2/T1/2-6
Torque feedforward control, 2/K3/2-43 INCH or METRIC unit of measurement, 2/M5/2-24

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition Index-3
06.05

Inclined axis, 2/M1/3-81 L


TRAANG, 2/M1/2-42
Incremental jogging, 2/H1/2-12 Language command
Incremental jogging (INC) SPN, 2/N4/2-22
Continuous mode, 2/H1/2-12 SPP, 2/N4/2-20
Jog mode, 2/H1/2-12 Large batch production, 2/B3/1-26
INDEX_AX_MODE, MD 10940, 2/T1/4-28 Learning ON / OFF, 2/K3/2-64
Indexing axes, 2/T1/2-5 Learning the neural network, 2/K3/2-63
Coded position, 2/T1/2-10 Linear axis, 2/T1/2-9
Coded positions, 2/T1/2-7 Link interface, Axis, 2/B3/1-28, 2/B3/1-29
Continuous traversal, 2/T1/2-6 Link module, 2/B3/1-29, 2/B3/1-30
Handwheel, 2/T1/2-6 Link variables, 2/B3/1-7
Incremental traversal (INC), 2/T1/2-6 global, 2/B3/1-30
Parameterization, 2/T1/2-9 Linked transformation, Example, 2/M1/2-56
Programming, 2/T1/2-10 Little/big endian representation for PLC I/O,
Reference point approach, 2/T1/2-5, 2/A4/4-51
2/T1/2-24 Local NCU, 2/B3/1-22
Start up, 2/T1/2-21 Longitudinal grooves, 2/M1/1-6
Traversal from PLC, 2/T1/2-8
Infeed, 2/P5/1-3
At 2 reversal points, 2/P5/2-22 M
At reversal point, 2/P5/2-20
M command, 2/W3/1-3
In reversal point range, 2/P5/2-20
M:N concept, 2/B3/1-10
Initial learning, 2/K3/2-67
M:N switchover, 2/B3/1-13
Input values, 2/M5/2-14
Machine
Interface, 2/B3/1-11, 2/H1/2-8, 2/M5/2-10
Control Panel, 2/B3/1-11
Interface signals, 2/K5/5-33
State, global, 2/B3/1-30
Measuring status, 2/M5/5-77
Machine control panel, 2/H1/2-8
Probe activated, 2/M5/5-77
Machine data
Program level abort, 2/K5/5-33
10134 (MM_NUM_MMC_UNITS), 2/B3/1-18
Internet address, v
20000 (CHAN_NAME), 2/B3/1-18
Interpolation, 2/B3/1-28
TRAANG, 2/M1/4-93
Interpolation cycle, 2/B3/1-8, 2/B3/1-30
TRACYL, 2/M1/4-90
Interpolation functions, 2/P2/2-10, 2/P2/6-41
Transformation-specific, 2/M1/4-84
Interpolatory compensation
TRANSMIT, 2/M1/4-88
Linear interpolation, 2/K3/2-16
Machining, face-end, 2/M1/1-5
Methods, 2/K3/2-14
Main
IS “Feed stop/spindle stop”(DB31, ... DBX4.3),
Secondary operator panel, 2/B3/1-11
2/S3/2-16
Control panel, 2/B3/1-6
Main control panel, 2/B3/1-14
Manual stroke initiation, 2/N4/5-43
J Manual traverse in JOG, 2/H1/2-5
JOG, 2/H1/2-38, 2/T1/2-5 Master, slave communication, 2/B3/1-6
JOG mode, 2/H1/2-5 MCP, 2/B3/1-11
Jog mode, 2/T1/2-6 Control unit, 2/B3/1-6
JOG with and without handwheel (H1)|MD Hand- MCP switchover, 2/B3/1-14, 2/B3/2-52
wheel pulses per detent position, 2/H1/4-54, MCP switchover disable, 2/B3/5-145
2/H1/4-55 MEAC, 2/M5/2-69
12101,12102,12103,12104,12105,16101,161 MEAS_PROBE_LOW_ACTIVE, 2/M5/4-75
02,16103,16104,16105, 2/H1/4-56 MEAS_PROBE_SOURCE, 2/M5/4-75
JOG without handwheel, 2/H1/2-35 MEAS_TYPE, 2/M5/4-75
Measurement results, 2/M5/2-67
Measuring accuracy, 2/M5/2-71
Measuring cycles, 2/M5/2-22
K Measuring mode 1, 2/M5/2-65
Keyboard, 2/B3/1-11 Measuring mode 2, 2/M5/2-65

Copyright © Siemens AG, 2005.


Index-4 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

Measuring points, 2/M5/2-15 NCU_LINKNO, 2/B3/4-129


Memory configuration, 2/S7/2-8 NETNAMES.INI, 2/B3/1-11, 2/B3/1-14, 2/B3/1-15,
Hardware configuration 840Di, 2/S7/2-7 2/B3/1-17, 2/B3/2-59
Menu, Connections/Service, 2/B3/1-18 Syntax, 2/B3/2-59
Milling/drilling unit, 2/B3/1-26 Networked NCUs, 2/B3/1-26
Minimum time interval between two consecutive Networking rules, 2/B3/1-13, 2/B3/1-25
strokes, 2/N4/2-16, 2/N4/4-39 Neural quadrant error compensation, 2/K3/2-55
MIRROR(C), 2/R2/2-21 Installation and startup, 2/K3/2-67
MM_NUM_MMC_UNITS, 2/B3/1-18 Optimize, 2/K3/2-70
MM_SERVO_FIFO_SIZE, MD 18720, Parameterization, 2/K3/2-57
2/B3/4-129, 2/B3/4-132 Number of axes, 2/B3/1-5, 2/B3/1-10
MMC, 2/B3/1-17 Number of chained transformations, 2/M1/2-55
Changeover, 2/B3/2-45 Number of direct read inputs bytes of PLC I/Os,
Control unit, 2/B3/1-6 2/A4/4-49
Operation, 2/B3/1-13 Number of direct write output bytes of PLC I/Os,
PLC interfaces, 2/B3/1-11 2/A4/4-49
Properties static/dynamic, 2/B3/1-13 Number of synchronous spindles, 2/S3/2-5
Status, 2/B3/1-11
MMC 1 requests active operating mode,
2/B3/5-145
MMC 1 switchover disable, 2/B3/5-145
O
MMC 100/ MMC 102/103, 2/B3/1-16 OEM solution, 2/B3/1-22
Mode change, 2/M5/2-64 Offline
Mode group, 2/K5/1-3, 2/K5/2-5 Requirement, 2/B3/2-46
Modified activation of machine data, 2/T1/2-18 Status, 2/B3/1-14
Modular machine concept, 2/B3/1-5 Online
Modulo, 2/T1/2-9 Changeover, 2/B3/1-17
Modulo 360, 2/R2/2-9 Status, 2/B3/1-14
Monitoring, 2/H1/2-37 Online tool offset, 2/W4/2-18
Monitoring of the input signal, 2/N4/2-15 Online tool radius compensation, 2/W4/2-26
Monodirectional probe, 2/M5/2-6 OP030, 2/B3/1-16
Motion control, 2/B3/1-28 OP030/OP031/OP032, 2/B3/1-11
Motion-synchronous conditions, 2/P5/2-18 Operating, area, 2/B3/1-17, 2/B3/1-21, 2/B3/1-22
Moving the spindle in the JOG mode, 2/H1/2-36 Operating Instructions, 2/B3/1-12
MPI, 2/B3/1-12, 2/B3/1-16 Operating mode changeover rejected, 2/B3/5-146
MPI, network rules, 2/B3/1-25 Operating modes, 2/H1/2-38
Multi-face machining, 2/B3/1-26 Operator, 2/B3/1-14
Multi-point interface (MPI), 2/B3/1-12 Component, 2/B3/1-18
Multi-spindle turning machine, 2/B3/1-5, Components Manual, 2/B3/1-12, 2/B3/1-23
2/B3/1-26 Interface, 2/B3/1-12
Multidirectional probe (3D), 2/M5/2-6 Location, 2/B3/1-10
Panel, 2/B3/1-10, 2/B3/1-11, 2/B3/1-12,
2/B3/1-16, 2/B3/1-17, 2/B3/1-21, 2/B3/1-23
Screen, 2/B3/1-21, 2/B3/1-22
N Unit, 2/B3/1-6, 2/B3/1-7, 2/B3/1-10, 2/B3/1-12,
NC 2/B3/1-13, 2/B3/1-15, 2/B3/1-20
Address, 2/B3/1-12, 2/B3/1-16 Unit switchover, 2/B3/1-14
Production center, 2/B3/1-5 Operator panel interface (OPI), 2/B3/1-12
NC address, 2/B3/1-17 OPI, 2/B3/1-12, 2/B3/1-16, 2/B3/1-23
NCK I/Os, 2/A4/2-5 OPI, network rules, 2/B3/1-25
NCU, 2/B3/1-21 Options in synchronous mode, 2/S3/2-6
Grouping, 2/B3/1-7 OS, 2/P5/2-10
Link, 2/B3/1-6, 2/B3/1-10, 2/B3/1-26, OSB, 2/P5/2-12
2/B3/2-36 OSCILL, 2/P5/2-18, 2/P5/2-24, 2/P5/2-25
Operation, 2/B3/1-22 Oscillating axis, 2/P5/1-3
Replacement, 2/B3/1-18 Oscillation, 2/P5/1-3
NCU link active, 2/B3/5-150 Asynchronous, 2/P5/1-3, 2/P5/2-6
NCU link axis active, 2/B3/5-150 Continuous infeed, 2/P5/1-3
NCU-NCU communication, 2/B3/1-26 Infeed, 2/P5/2-26

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition Index-5
06.05

PLC control, 2/P5/2-13 Axis interpolator, 2/P2/2-10


With synchronized actions, 2/P5/2-17, Axis-specific signals, 2/P2/2-29
2/P5/6-39, 2/P5/6-41 Block change, 2/P2/2-19
Oscillation movement Channel-specific signals, 2/P2/2-29
Restarting, 2/P5/2-24 Concurrent positioning axis, 2/P2/2-9
Stopping, 2/P5/2-23 Dependence of positioning axes, 2/P2/2-8
OSCTRL, 2/P5/2-11, 2/P5/2-12 FC15, 2/P2/2-29
OSE, 2/P5/2-12 Independence of path and positioning axes,
OSNSC, 2/P5/2-12 2/P2/2-7
OSP, 2/P5/2-10 Path interpolator, 2/P2/2-10, 2/P2/2-23
OST, 2/P5/2-10 Positioning axis type 1, 2/P2/2-7, 2/P2/2-19,
Overall reset, 2/B3/1-18 2/P2/2-32
Overlaid movement, 2/S3/2-9 Positioning axis type 2, 2/P2/2-7, 2/P2/2-21,
Overlap areas of axis angles, TU address, 2/P2/2-32
2/M1/2-65 Programming, 2/P2/2-30
Velocity, 2/P2/2-28
POSP, 2/P5/2-18, 2/P5/2-26
Power supply, 2/B3/1-11
P Power-up, 2/B3/1-14, 2/B3/1-19
P bus, 2/B3/1-8 Precontrol, 2/K3/1-3, 2/K3/2-38
Part program, 2/B3/1-29, 2/B3/1-30 Prerequisites, 2/K5/2-15
Passive file system, 2/S7/2-5 Prerequisites for synchronous mode, 2/S3/2-13
Passive state, 2/B3/1-14 Preset actual value memory, 2/M5/2-13
Path axes, 2/P2/2-7 Probe connection, 2/M5/2-6, 2/M5/2-7
Path definition by handwheel, 2/H1/2-32 Probe functional test, 2/M5/2-71
Peripheral Surface Transformation, 2/M1/3-81 Probe types, 2/M5/2-5
Permanent coupling configuration, 2/S3/2-6 PROFIBUS, 2/B3/1-16, 2/B3/1-29
PG diagnostics, 2/B3/1-13 interface, 2/B3/1-26
Physical axis, 2/B3/1-7 PROFIBUS DP I/Os, 2/A4/2-6
PLC Program control, 2/P2/2-8
Address, 2/B3/1-12, 2/B3/1-16 Program coordination, 2/K5/2-6
Basic Program, 2/B3/1-16, 2/B3/1-17, Program coordination, example, 2/K5/2-8
2/B3/1-23 Program server, 2/B3/1-22
CPU 314, 2/B3/1-12 Programmable block change, 2/S3/2-22
CPU 315, 2/B3/1-12, 2/B3/1-16 Programming, 2/M5/2-66
Local I/Os, 2/B3/1-6 Programming of joint position, STAT address,
Master, 2/B3/1-30 2/M1/2-64
PLC communication, 2/B3/1-6, 2/B3/1-7 Protection level, 2/B3/1-20
Slaves, 2/B3/1-30 Protection level Service, 2/B3/1-18
PLC controls axis, 2/P2/5-39 Protocol layer, 2/B3/1-8
PLC service display, 2/M5/2-12, 2/M5/2-68 PTP/CP switchover, Mode change in JOG,
PLCIO_IN_UPDATE_TIME, MD 10398, 2/A4/4-50 2/M1/2-67
PLCIO_LOGIC_ADDRESS_IN, MD 10395, Punching and nibbling
2/A4/4-49 Language commands, 2/N4/2-11
PLCIO_LOGIC_ADDRESS_OUT, MD 10397, Path segmentation, 2/N4/2-19
2/A4/4-50
PLCIO_NUM_BYTES_IN, MD 10394, 2/A4/4-49
PLCIO_NUM_BYTES_OUT, MD 10396,
2/A4/4-49
Q
PLCIO_TYPE_REPRESENTATION, MD 10399, Quadrant error compensation, 2/K3/2-46,
2/A4/4-51 2/K3/2-55
POSCTRL_DESVAL_DELAY, MD 10065, Quantization of characteristic, 2/K3/2-60
2/B3/4-128 Quick start-up, 2/K3/2-75
POSCTRL_DESVAL_DELAY_INFO, MD 32990,
2/B3/4-134
Position control, 2/B3/1-28
Position switching signals, 2/N3/2-5
R
Position-time cams, Features, 2/N3/2-22 Rapid traverse override, 2/H1/2-6, 2/P2/2-28
Positioning axes, 2/P2/1-3, 2/P2/2-5 Read current angular offset, 2/S3/2-11, 2/S3/2-24

Copyright © Siemens AG, 2005.


Index-6 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

Read measurement results in PP, 2/M5/2-12 NCU components, 2/B3/2-61


Read offset, 2/S3/2-16 Operational characteristics, 2/B3/1-20,
Reading the current coupling status, 2/S3/2-24 2/B4/2-15
Reference point approach, 2/H1/2-42, 2/T1/2-5 Operator panel components, 2/B3/2-61
Relearning, 2/K3/2-68 Switchover of connection, 2/B3/2-63,
Repos, 2/M5/2-64 2/B3/2-64
Reset status, 2/B3/1-14 User interface, 2/B3/2-68
Response to setpoint changes, 2/S3/2-39 User interfaces, 2/B4/1-4
Reversal points, 2/P5/1-3 Signal, Transformation active, 2/M1/5-99,
Rotary axes, 2/R2/1-3 2/M5/5-77
Absolute dimension programming, 2/R2/2-12, Signals, 2/B3/1-7
2/R2/2-17 SIMATIC, 2/B3/2-41, 2/B3/2-62
Axis addresses, 2/R2/2-6 SINCOM, 2/B3/1-6, 2/B3/2-36
Feed, 2/R2/2-8 Single block, 2/P2/2-8, 2/P2/2-32
Incremental dimension programming, SINUMERIK
2/R2/2-16, 2/R2/2-18 810D, 2/B3/1-22
Installation and startup, 2/R2/2-19 840D Installation and Start-Up Guide,
Mirroring, 2/R2/2-21 2/B3/1-13
Modulo 360, 2/R2/2-9 SINUMERIK 840D powerline, v
Modulo conversion, 2/R2/2-12, 2/R2/2-17 Slide, 2/B3/1-26
Positioning display, 2/R2/2-8 Slimline screen, 2/B3/1-11
Software limit switch, 2/R2/2-21 Slot side compensation, 2/M1/1-6
Units of measurement, 2/R2/2-7 Softkey, 2/B3/1-11, 2/B3/1-17, 2/B3/1-21,
Working range, 2/R2/2-7 2/B3/1-22
Rotary axis, 2/R2/2-5, 2/T1/2-9 Connections, 2/B3/1-17
Rotary button pad, 2/B3/1-11 Software cam, 2/N3/2-5
Rotary indexing machine, 2/B3/1-5, 2/B3/1-26 Software limit switch, 2/R2/2-21
Runtime, 2/B3/1-14 Software limit switches, 2/H1/2-37, 2/T1/2-24
Sparking-out strokes, 2/P5/1-3
Speed coupling, 2/S3/2-41
Speed feedforward control, 2/K3/2-38
S Speed monitoring, 2/W4/2-28
Sag compensation, 2/K3/2-22 Speed ratio, 2/S3/2-7
Compensation values in grid structure, Speed/acceleration limits, 2/S3/2-18
2/K3/2-31 Spindle number, 2/W4/2-10
SCALE, 2/R2/2-18 Spindle position with mono probe, 2/M5/2-6
Scratching, 2/M5/2-13 Spindle replacement, 2/K5/2-14
Secondary, Control panel, 2/B3/1-6, 2/B3/1-14 Spindle start-up, 2/S3/2-39
Selecting synchronous mode, 2/S3/2-10 SRAM, 2/S7/2-6
Service case, 2/B3/1-18 SRAM memory requirements, 2/S7/2-27
Service display for FS, 2/S3/2-41 Standard alarm texts, 2/B3/1-18
Service/installation and start-up, 2/B3/1-13 Start address of direct write output bytes of PLC
Servo gain factor, 2/K3/2-45 I/Os, 2/A4/4-50
SERVO_FIFO_SIZE, MD 10087, 2/B3/4-129 Start address of the directly readable input bytes
Several NCUs, 2/B3/1-21 of the PLC I/Os, 2/A4/4-49
As of SW 3.5, 2/B3/1-23 Start operating area, 2/B3/1-17, 2/B3/1-21
Several operator panels, 2/B4/1-3 Start up, 2/B3/1-17
Alarm text management, 2/B3/2-64 Start-up of neural QEC, 2/K3/2-67
Alarms/Messages, 2/B3/2-63, 2/B3/2-68 Start-up tool, 2/B3/1-22
Applications, 2/B4/1-3 Static MMC property, 2/B3/1-13
Availability, 2/B3/3-124 Station/position change, 2/B3/1-29
Buses, 2/B3/2-60 Status query, HW outputs, 2/N3/2-18
Compatibility, 2/B3/2-43, 2/B3/2-62 Suitable probes, 2/M5/2-5
Configuration files, Number, 2/B3/2-59 Suppression
Configurations, 2/B3/2-58 Algorithm, 2/B3/1-15, 2/B3/2-46
Connections, 2/B3/2-60 Mechanism, 2/B3/1-11
Defaults, 2/B3/2-43, 2/B3/2-62 Priority, 2/B3/1-14
Implementation in SW 3.1, 2/B3/1-20 Rules, 2/B3/2-47
Link check, 2/B3/2-64 Strategy, 2/B3/1-15, 2/B3/2-46, 2/B3/2-51

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition Index-7
06.05

SW_CAM_MODE, 2/N3/4-33 Tool handling with active transformation,


Switchover 2/M1/4-86, 2/M1/4-87
Attempt, 2/B3/1-21 Tool length ($AC MEAS TYPE = 10), 2/M5/2-61
Behavior OP030, MMC 100, MMC 102/103, Tool offset, 2/P2/2-31
2/B3/1-17 Tool offset for grinding operations, 2/W4/2-5
Conditions, 2/B3/2-47 Tool offset for grinding tools, 2/W4/2-5, 2/W4/2-9
Instant, 2/B3/1-17 Torque feedforward control, 2/K3/2-38
Symbol name, 2/B3/1-14, 2/B3/1-19 TRAANG
Synchronization cycle, 2/B3/1-8 Activation, 2/M1/2-48
Synchronized action, 2/B3/1-30 Availability, 2/M1/3-81
Synchronized state reached, 2/S3/2-15 Brief Description, 2/M1/1-7
Synchronous mode, 2/S3/2-5 Inclined axis, 2/M1/2-42
Activate, 2/S3/2-23 Number, 2/M1/2-44
Control dynamics, 2/S3/2-28 Prerequisites, 2/M1/2-43
Deactivate, 2/S3/2-23 Restrictions, 2/M1/2-50
Knee-shaped acceleration characteristic, Specific settings, 2/M1/2-46
2/S3/2-29 Switching off, 2/M1/2-49
Multiple couplings, 2/S3/2-28 TRACYL, 2/M1/1-6, 2/M1/2-29
Precontrol, 2/S3/2-28 Activate, 2/M1/2-38
Response to alarms, 2/S3/2-29 Availability, 2/M1/3-81
Speed/acceleration limits, 2/S3/2-28 Axis image, 2/M1/2-34
Synchronous spindle pair, 2/S3/2-5 Number, 2/M1/2-31
System of units, SW cams, 2/N3/2-14 Prerequisites, 2/M1/2-31
System variable, 2/B3/1-30, 2/M5/2-12, 2/M5/2-67 Restrictions, 2/M1/2-39
global, 2/B3/1-30 Specific settings, 2/M1/2-34
Switching off, 2/M1/2-38
TRANS, 2/R2/2-18
Transformation, Chaining sequence, 2/M1/2-55
T
TRANSMIT, 2/M1/1-5, 2/M1/2-9
T function, 2/W3/1-3 Activation, 2/M1/2-16
Temperature compensation Availability, 2/M1/3-81
Activate, 2/K3/2-7 Axis image, 2/M1/2-13
Coefficient tanß(T), 2/K3/2-10 Number, 2/M1/2-10
Compensation equation, 2/K3/2-6 Restrictions, 2/M1/2-17
Deformation, 2/K3/2-5 Specific settings, 2/M1/2-13
Error curves, 2/K3/2-5 Switching off, 2/M1/2-16
Monitoring Functions, 2/K3/2-8 Transverse axes, 2/H1/2-39
Parameters, 2/K3/2-7 Transverse grooves, 2/M1/1-6
Position display, 2/K3/2-8 Type of coupling, 2/S3/2-8
Sensor equipment, 2/K3/2-5
Temporary assignment, 2/B3/1-7
Test program for testing repeat accuracy,
2/M5/6-82
U
Third handwheel via actual value input, 2/H1/4-55 Update time for PLC I/O input cycle, 2/A4/4-50
Third handwheel: Bus segment, 2/H1/4-55 User communication, 2/B3/1-7
Third handwheel: Drive no./measuring circuit no., User-, Alarm, 2/B3/1-18
2/H1/4-55 User-defined coupling, 2/S3/2-6
Third handwheel: input on module/measuring cir- Utilization property, 2/B3/1-14
cuit card, 2/H1/4-56
Threshold for change in handwheel direction,
2/H1/4-54
V
Threshold values, 2/S3/2-18
Threshold values for coarse/fine synchronism, Velocity, 2/H1/2-6, 2/H1/2-16, 2/H1/2-36
2/S3/2-41 Velocity and acceleration, 2/H1/2-38
Tool change Vertical axis, 2/K3/2-85
Change point, 2/W3/1-3, 2/W3/2-7
Fixed points, 2/W3/2-7
Tool diameter ($AC MEAS TYPE = 11), 2/M5/2-63

Copyright © Siemens AG, 2005.


Index-8 SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition
06.05

W
WAITMC, 2/K5/2-12
WAITP, 2/P2/2-7, 2/P2/2-31
Oscillating axis, 2/P5/2-18
WAITP coordination, 2/P2/2-31
Working area limitation, 2/H1/2-37, 2/R2/2-21,
2/W4/2-22
Workpiece clamping, 2/B3/1-26, 2/B3/1-30
Workpiece measuring, 2/M5/2-13
Write continuously, 2/W4/2-20
Write online tool offset discretely, 2/W4/2-24

Copyright © Siemens AG, 2005.


SINUMERIK 840D sl/840D/840Di/810D Descrip. of Functions Extended Functions (FB2) – 06.05 Edition Index-9
To Suggestions
SIEMENS AG Corrections
A&D MC BMS For Publication/Manual:
Postfach 3180
SINUMERIK 840D sl/840D/840Di
91050 ERLANGEN, GERMANY Extended Functions (Part 2)
Order No.: 6FC5397-1BP10-0BA0
Phone: +49 (0) 180 5050 – 222 [Hotline] Edition: 08.05
Fax: +49 (0) 9131 98 – 63315 [Documentation]
E–mail: mailto:motioncontrol.docu@siemens.com Manufacturer/Service Documentation
Description of Functions
From

Name
Company/Department Should you come across any printing
errors when reading this publication,
Street
please notify us on this sheet.
Zip: Town: Suggestions for improvement are also
welcome.
Phone: /
Fax: /
Suggestions and/or corrections
Overview of SINUMERIK 840D sl Documentation (08/2005)
General Documentation

SINUMERIK SINUMERIK SINAMICS


840D sl S120

Brochure Catalog NC 61 *) Catalog


D21.2 Servo Control *)

User Documentation

SINUMERIK SINUMERIK SINUMERIK SINUMERIK SINUMERIK


840D sl 840D sl 840D sl 840D sl 840D sl
840D 840D 840D 840D
840Di 840Di 840Di 840Di
810D 810D 810D 810D

Operator’s Guide Operator’s Guide Programming Guide Programming Guide Diagnostics Guide *)
– HMI Embedded *) – HMI Advanced *) – Fundamentals *) – Cycles
– ShopMill – Programming compact – Advanced *) – Measuring Cycles
– ShopTurn – Programming
– Lists System Variables
– ISO Turning/Milling

Manufacturer/Service Documentation

SINUMERIK SINUMERIK SINUMERIK SINUMERIK


840D sl 840D sl 840D sl 840D sl
840D
840Di
810D

Equipment Manual Equipment Manual Start-up Guide CNC *) List Manual *


NCU *) Operator – Part 1 NCK, PLC, Drive – Part 1
Components *) – Part 2 HMI – Part 2
– Part 3 ShopMill
– Part 4 ShopTurn
– Part 5 Basic Software

Manufacturer/Service Documentation

SINUMERIK SINUMERIK SINAMICS SINUMERIK SINUMERIK


840D sl 840D sl S120 840D sl 840D sl
840D 840D 840D
840Di 840Di 840Di
810D 810D 810D

Description of Description of Description of Description of EMC Guidlines


Functions Functions Functions Functions
– Basic Machine *) – Synchronized Drive Functions Saftey Integrated
– Extended Functions Actions
– Special Functions – Iso Dialects

Electronic Documentation

SINUMERIK
SINAMICS
Motors

DOCONCD *)
DOCONWEB

*) These documents are a minimum requirement


Overview of SINUMERIK 840D/840Di/810D Documentation (08/2005)
General Documentation User Documentation

Safety
SINUMERIK SINUMERIK Integrated SINUMERIK SINUMERIK SINUMERIK SINUMERIK
840D/810D 840D/840Di/ Application 840D/810D/ 840D/840Di/ 840D/840Di/ 840D/840Di/
810D/ Manual FM-NC 810D 810D 810D

Brochure Catalog Safety AutoTurn Operator ’s Guide Diagnostics Operator’s Guide *)


Ordering Info. Integrated – Short Guide – HT 6 Guide *) – Short Guide
NC 60 *) Application – Programming/ – HMI Embedded
Manual Setup – HMI Advanced

User Documentation Manufacturer/Service Documentation

SINUMERIK SINUMERIK SINUMERIK SINUMERIK SINUMERIK SINUMERIK


840D/840Di/ 840D/810D 840Di 840D/840Di/ 840D/840Di/
810D 810D 810D

Programming Guide Operator ’s Guide System Overview Configuring Operator Description of Func-
– Short Guide – ManualTurn (HW) *) Components tions
– Fundamentals *) – Short Guide ManualTurn – 810D (HW) *) – ManualTurn
– Advanced *) – ShopMill – 840D – ShopMill
– Cycles – Short Guide ShopMill – ShopTurn
– Measuring Cycles – ShopTurn
– ISO Turning/Milling – Short Guide ShopTurn
– Lists System Variables

Manufacturer/Service Documentation

SINUMERIK
SIMODRIVE SINUMERIK SINUMERIK SINUMERIK SINUMERIK SINUMERIK SINUMERIK
611D 840D/840Di/ 840D/840Di/ 840D/810D 840D/810D 840D/810D 840D/810D
840D/810D 810D 810D

Description of Func- Description of Description of Description of Configuring Kit Description of MCIS


tions Functions Functions Functions HMI Embedded Functions – Computer Link
Synchronized Drive Functions *) – Basic Machine *) Tool Management Operator Interface – Tool Data Inform. Syst.
Actions – Extended Functions OP 030 – NC Data Management
– Special Functions – NC Data Transfer
– Tool Data Communication

Manufacturer/Service Documentation

MOTION
SINUMERIK SINUMERIK SINUMERIK SINUMERIK SINUMERIK CONTROL
SIMODRIVE SINUMERIK SIMODRIVE SIMODRIVE SIMODRIVE SIMODRIVE SYSTEMS
840D 840D/840Di 840D 840D
810D 611D 611D
611D

Description of Description of Installation & Start-Up – Lists *) Description of Description of Functions EMC
Functions Functions Guide *) Functions – Hydraulics Module Guidelines
SINUMERIK Digitizing – 810D Linear Motor – Analog Module
Safety Integrated – 840D/611D
– HMI
Manufacturer/Service Documentation
Electronic Documentation

SINUMERIK SINUMERIK SINUMERIK SINUMERIK SINUMERIK


SIMODRIVE 840Di
840D/840Di/ 840D/810D 840D/840Di/
840D/840Di/ 810D 810D
810D
611, Motors

DOC ON CD *) Description of Manual Description of Manual


The SINUMERIK System Functions Functions
(HW + Installation @ Event
ISO Dialects for Remote Diagnosis
and Start-Up)
SINUMERIK

*) These documents are a minimum requirement

You might also like