Siemens SINUMERIK Series Function Manual

Siemens SINUMERIK Series Function Manual

Extended functions
Hide thumbs Also See for SINUMERIK Series:
Table of Contents

Quick Links

Extended Functions
SINUMERIK
SINUMERIK 840D sl / 828D
Extended Functions
Function Manual
Valid for
Controls
SINUMERIK 840D sl / 840DE sl
SINUMERIK 828D
Software
CNC software
03/2013
6FC5397-1BP40-3BA1
version
4.5 SP2
___________________
Preface
A4: Digital and analog NCK
___________________
I/Os for SINUMERIK 840D sl
___________________
B3: Distributed systems
- 840D sl only
___________________
H1: Manual and handwheel
travel
___________________
K3: Compensations
___________________
K5: Mode groups, channels,
axis interchange
___________________
M1: Kinematic
transformation
___________________
M5: Measurement
___________
N3: Software cams, position
switching cycles
- only 840D sl
___________________
N4: Own channel
- only 840D sl
___________________
P2: Positioning axes
___________________
P5: Oscillation - only 840D sl
___________________
R2: Rotary axes
___________________
S3: Synchronous spindle
___________________
S7: Memory configuration
___________________
T1: Indexing axes
___________________
W3: Tool change
___________________
W4: Grinding-specific tool
offset and tool monitoring
___________________
Z2: NC/PLC interface signals
___________________
Appendix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
A
Table of Contents
loading

Summary of Contents for Siemens SINUMERIK Series

  • Page 1 ___________________ Extended Functions Preface A4: Digital and analog NCK ___________________ I/Os for SINUMERIK 840D sl ___________________ B3: Distributed systems - 840D sl only ___________________ H1: Manual and handwheel travel SINUMERIK ___________________ K3: Compensations ___________________ K5: Mode groups, channels, SINUMERIK 840D sl / 828D axis interchange Extended Functions ___________________...
  • Page 2 Note the following: WARNING Siemens products may only be used for the applications described in the catalog and in the relevant technical documentation. If products and components from other manufacturers are used, these must be recommended or approved by Siemens. Proper transport, storage, installation, assembly, commissioning, operation and maintenance are required to ensure that the products operate safely and without any problems.
  • Page 3: Preface

    Training For information about the range of training courses, refer under: ● www.siemens.com/sitrain SITRAIN - Siemens training for products, systems and solutions in automation technology ● www.siemens.com/sinutrain SinuTrain - training software for SINUMERIK FAQs You can find Frequently Asked Questions in the Service&Support pages under Product Support.
  • Page 4 Preface SINUMERIK You can find information on SINUMERIK under the following link: www.siemens.com/sinumerik Target group This publication is intended for: ● Project engineers ● Technologists (from machine manufacturers) ● System startup engineers (Systems/Machines) ● Programmers Benefits The function manual describes the functions so that the target group knows them and can select them.
  • Page 5 Preface Information on structure and contents Installation Structure of this Function Manual: ● Inner title (page 3) with the title of the Function Manual, the SINUMERIK controls as well as the software and the version for which this version of the Function Manual is applicable and the overview of the individual functional descriptions.
  • Page 6 Preface Note Signal address The description of functions include as of an NC/PLC interface signal, only the address valid for SINUMERIK 840D sl. The signal address for SINUMERIK 828D should be taken from the data lists "Signals to/from ..." at the end of the particular description of functions.
  • Page 7: Table Of Contents

    Contents Preface ..............................3 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl............... 25 Introduction ..........................25 Access via PLC ..........................27 1.2.1 Brief description ...........................27 1.2.2 Configuration of the NCK I/Os .....................28 1.2.3 NCK digital inputs/outputs......................31 1.2.3.1 NCK digital inputs ........................31 1.2.3.2 NCK digital outputs ........................32 1.2.3.3...
  • Page 8 Contents B3: Distributed systems - 840D sl only ....................71 Brief description .......................... 71 2.1.1 Several operator panels on several NCUs (T:M:N) ..............71 2.1.2 NCU link ............................74 2.1.2.1 Link communication ........................74 2.1.2.2 Link variables ..........................75 2.1.2.3 Link axes .............................
  • Page 9 Contents Examples ...........................122 2.3.1 Link axis .............................122 2.3.2 Axis container coordination......................123 2.3.2.1 Axis container rotation without a part program wait..............123 2.3.2.2 Axis container rotation with an implicit part program wait............124 2.3.2.3 Axis container rotation by one channel only (e.g. during power up)..........124 2.3.3 Evaluating axis container system variables ................124 2.3.3.1...
  • Page 10 Contents Handwheel override in automatic mode..................170 3.5.1 General functionality ......................... 170 3.5.2 Programming and activating handwheel override..............175 3.5.3 Special features of handwheel override in automatic mode ............. 177 Contour handwheel/path input using handwheel (option)............178 DRF offset ..........................180 Approaching a fixed point in JOG .....................
  • Page 11 Contents 3.12.3.6 Signals to axis/spindle .......................221 3.12.3.7 Signals from axis/spindle ......................221 3.12.4 System variable..........................222 3.12.4.1 System variable..........................222 3.12.5 OPI variable ..........................222 3.12.5.1 OPI variable ..........................222 K3: Compensations ..........................223 Introduction ..........................223 Temperature compensation .......................224 4.2.1 Description of functions......................224 4.2.2 Commissioning...........................227 4.2.3 Example .............................229 4.2.3.1...
  • Page 12 Contents 4.6.4 Friction compensation with acceleration-dependent compensation value ....... 294 4.6.4.1 Description of functions......................294 4.6.4.2 Function activation ........................295 4.6.4.3 commissioning .......................... 295 4.6.5 Compensation value for short traversing blocks ............... 296 Measures for hanging (suspended axes).................. 297 4.7.1 Electronic counterweight ......................
  • Page 13 Contents Data lists ............................343 5.6.1 Machine data..........................343 5.6.1.1 General machine data........................343 5.6.1.2 Channel-specific machine data....................343 5.6.1.3 Axis/spindlespecific machine data .....................345 5.6.2 Setting data ..........................346 5.6.2.1 Channelspecific setting data ......................346 5.6.3 Signals ............................346 5.6.3.1 Signals to/from BAG ........................346 5.6.3.2 Signals to/from Channel......................346 M1: Kinematic transformation ........................
  • Page 14 Contents 6.6.3 Examples of ambiguities of position..................403 6.6.4 Example of ambiguity in rotary axis position................404 6.6.5 PTP/CP switchover in JOG mode..................... 404 Cartesian manual travel (optional) .................... 405 Activating transformation machine data via part program/softkey ..........412 6.8.1 Functionality ..........................
  • Page 15 Contents 7.5.3 Types of workpiece measurement.....................466 7.5.3.1 Measurement of an edge (measurement type 1, 2, 3) ..............466 7.5.3.2 Measurement of an angle (measurement type 4, 5, 6, 7)............470 7.5.3.3 Measurement of a hole (measurement type 8)................473 7.5.3.4 Measurement of a shaft (measurement type 9).................476 7.5.3.5 Measurement of a groove (measurement type 12)..............477 7.5.3.6...
  • Page 16 Contents 8.2.3 Cam positions ........................... 543 8.2.4 Lead/delay times (dynamic cam) ....................545 Output of cam signals ....................... 546 8.3.1 Activating........................... 546 8.3.2 Output of cam signals to PLC ....................547 8.3.3 Output of cam signals to NCK I/Os in position control cycle............. 547 8.3.4 Timer-controlled cam signal output...................
  • Page 17 Contents Data lists ............................596 9.9.1 Machine data..........................596 9.9.1.1 General machine data........................596 9.9.1.2 Channelspecific machine data ....................596 9.9.2 Setting data ..........................596 9.9.2.1 Channelspecific setting data ......................596 9.9.3 Signals ............................597 9.9.3.1 Signals to channel........................597 9.9.3.2 Signals from channel .........................597 9.9.4 Language commands ........................597 P2: Positioning axes ..........................
  • Page 18 Contents 10.10.3 Signals............................638 10.10.3.1 Signals to channel........................ 638 10.10.3.2 Signals from channel ......................639 10.10.3.3 Signals to axis/spindle ......................639 10.10.3.4 Signals from axis/spindle ..................... 639 P5: Oscillation - only 840D sl ......................... 641 11.1 Brief description ........................641 11.2 Asynchronous oscillation......................
  • Page 19 Contents 12.3 Programming rotary axes......................688 12.3.1 General information ........................688 12.3.2 Rotary axis with active modulo conversion (continuously-turning rotary axis)......688 12.3.3 Rotary axis without modulo conversion ..................694 12.3.4 Other programming features relating to rotary axes ..............696 12.4 Activating rotary axes.........................697 12.5 Special features of rotary axes ....................698 12.6...
  • Page 20 Contents 13.7 Data lists............................ 750 13.7.1 Machine data..........................750 13.7.1.1 NC-specific machine data ......................750 13.7.1.2 Channelspecific machine data ....................750 13.7.1.3 Axis/spindlespecific machine data .................... 751 13.7.2 Setting data ..........................751 13.7.2.1 Channelspecific setting data ..................... 751 13.7.3 Signals............................752 13.7.3.1 Signals to channel........................
  • Page 21 Contents 15.8 Examples ...........................791 15.8.1 Examples of equidistant indexes ....................791 15.9 Data lists ............................793 15.9.1 Machine data..........................793 15.9.1.1 General machine data........................793 15.9.1.2 Axis/spindlespecific machine data .....................793 15.9.2 Setting data ..........................793 15.9.2.1 General setting data........................793 15.9.3 Signals ............................794 15.9.3.1 Signals from axis/spindle ......................794 15.9.4 System variables........................794 W3: Tool change............................
  • Page 22 Contents 17.4.3 Speed monitoring ........................827 17.4.4 Selection/deselection of tool monitoring ................... 828 17.5 Constant grinding wheel peripheral speed (GWPS)..............829 17.5.1 General information........................829 17.5.2 Selection/deselection and programming of GWPS, system variable ........830 17.5.3 GWPS in all operating modes....................831 17.5.4 Programming example for GWPS.....................
  • Page 23 Contents 18.9 Punching and Nibbling (N4) .......................891 18.9.1 Signal overview ..........................891 18.9.2 Signals to channel (DB21, ...) ....................891 18.9.3 Signals from channel (DB21, ...) ....................893 18.10 Positioning axes (P2) .........................894 18.10.1 Signals to axis/spindle (DB31, ...) ....................894 18.10.2 Function call - only 840D sl......................898 18.11 Oscillation (P5)...........................898 18.11.1 Signals to axis/spindle (DB31, ...) ....................898...
  • Page 24 Contents Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 25: A4: Digital And Analog Nck I/Os For Sinumerik 840D Sl

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl Introduction Function Signals can be read and output in the interpolation cycle via the inputs/outputs of the fast digital and analog NCK I/Os. The following functions can be executed with these signals, for example: ●...
  • Page 26 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.1 Introduction Table 1- 1 Maximum number of digital and analog NCK I/Os Total NCU on-board External NCK I/Os Digital inputs Digital outputs Analog inputs Analog outputs References: For further information about the hardware specification, refer to: ●...
  • Page 27: Access Via Plc

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Access via PLC 1.2.1 Brief description Configuring NCK I/Os During commissioning, the number and the hardware assignment of the addressable digital and analog NCK I/Os and their assignment to NC functions is defined via machine data. For further information, see "Configuration of the NCK I/Os (Page 28)".
  • Page 28: Configuration Of The Nck I/Os

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC PLC I/Os for direct addressing by NCK Up to 32 bytes for digital input signals and analog input values, and up to 32 bytes for digital output signals and analog output values can be addressed directly by the part program.
  • Page 29 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Hardware assignment of the external NCK I/Os The assignment of the I/O signal modules or I/O modules to the external NCK I/Os is performed via the machine data: HW assignment for external •...
  • Page 30 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Weighting factor for the analog NCK I/Os The weighting factor can be used to adapt each individual NCK I/O to the AD or DA converter of the analog I/O module used: Weighting factor for the analog •...
  • Page 31: Nck Digital Inputs/Outputs

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC 1.2.3 NCK digital inputs/outputs 1.2.3.1 NCK digital inputs Function The workpiece-machining program sequence can be controlled by external signals via digital NCK inputs. The signal state of digital input can be scanned directly in the part program using system variable $A_IN [].
  • Page 32: Nck Digital Outputs

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Read actual value The signal state of the digital NCK inputs is sent to the PLC: DB10, DBB60 or DBB186 ... (actual value for digital NCK inputs) The actual value reflects the actual state of the signal at the hardware input.
  • Page 33 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Signal flow The following figure illustrates the signal flow for the digital NCK outputs. Overwrite mask Every output that can be set by the NC part program can be overwritten from the PLC using the overwrite mask.
  • Page 34 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Setting mask A PLC setting for each output can determine whether the current "NCK value" (e.g. as specified by the NC part program) or the "PLC value" specified via the setting mask should be output at the hardware output.
  • Page 35: Connection And Logic Operations Of Fast Digital Nck I/Os

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC 1.2.3.3 Connection and logic operations of fast digital NCK I/Os Function Fast NCK I/O inputs can be set by software as a function of fast-output signal states. Overview: Connecting The NCK I/O fast input is set to the signal state of the assigned fast output.
  • Page 36 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Defining assignments The assignments are specified via machine data: MD10361 $MN_FASTIO_DIG_SHORT_CIRCUIT[n] n: can accept values 0 to 9, so up to 10 assignments can be specified. Two hexadecimal characters are provided for specifying the byte and bit of an output and an input.
  • Page 37: Nck Analog I/Os

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC 1.2.4 NCK analog I/Os 1.2.4.1 NCK analog inputs Function The value of the analog NCK input [] can be accessed directly in the part program using system variable $A_INA[].
  • Page 38 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Read actual value The analog values that are actually present at the hardware inputs are are sent to the PLC: DB10 DBW194 ... 208 (actual value of the NCK analog input) The possible influence of the PLC is ignored for the "actual value".
  • Page 39: Nck Analog Outputs

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Binary analog-value display See "Representation of the NCK analog input/output values (Page 43)". Behavior during POWER ON / reset After POWER ON and reset, the analog value at the respective input is passed on. If necessary, the PLC user program can disable or set the individual inputs to a setpoint.
  • Page 40 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Signal flow The following figure illustrates the signal flow for the analog NCK outputs. Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 41 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Overwrite mask Every NCK analog value set by the part program can be overwritten from the PLC using the overwrite mask. The previous "NCK value" is lost. The following sequence has to be carried out to overwrite the NCK value from the PLC: 1.
  • Page 42 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Weighting factor The weighting factor can be used to adapt each individual NCK output to the various DA converters (depending on the I/O module ) for programming in the part program: MD10330 $MN_FASTIO_ANA_OUTPUT_WEIGHT[] In this machine data, it is necessary to enter the value x that is to cause the analog output ...
  • Page 43: Representation Of The Nck Analog Input/Output Values

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC 1.2.4.3 Representation of the NCK analog input/output values The digitized analog values are represented at the NC/PLC interface as fixed-point numbers (16 bits including sign) in the two's complement. Bit number Significanc SG: Sign...
  • Page 44 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Representation of the maximum value for different resolutions Bit number Significance of the bits SG 2 16-bit resolution: 32767 = 7FFF 14-bit resolution: 8191 = 1FFF 12-bit resolution: 2047 = 7FF Note...
  • Page 45: Comparator Inputs

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC 1.2.5 Comparator inputs Function Two internal comparator input bytes, each with eight comparator inputs, are available in addition to the digital and analog NCK inputs. The signal state of the comparator inputs is generated on the basis of a comparison between the analog values present at the fast analog inputs and the threshold values parameterized in setting data.
  • Page 46 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Comparator settings The settings for the individual bits (0 to 7) of comparator byte 1 or 2 are parameterized via the machine data: MD10540 $MN_COMPAR_TYPE_1 (parameter assignment for comparator byte 1) MD10541 $MN_COMPAR_TYPE_2 (parameter assignment for comparator byte 2) The following settings are possible: ●...
  • Page 47 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Comparator signals as digital NCK inputs All NC functions that are processed as a function of digital NCK inputs can also be controlled by the signal states of the comparators. The byte address for comparator byte 1 (HW byte 128) or 2 (HW byte 129) must be entered in the machine data associated with the NC function ("Assignment of hardware byte used").
  • Page 48: Direct Plc I/Os, Addressable From The Nc

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC 1.2.6 Direct PLC I/Os, addressable from the NC 1.2.6.1 Function The fast data channel between the NCK and PLC I/Os is processed directly and therefore quickly by the PLC operating system. There is no provision for control of the PLC basic and user programs.
  • Page 49 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Transfer times Data is output from NCK ⇒ PLC (write) at the end of the interpolation cycle if at least one data item was written. Data is read in by transmitting a request at the end of the interpolation cycle. The new data is available in the subsequent interpolation cycle at the earliest.
  • Page 50 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Memory organization 16 bytes (over all channels) are available for data exchange from and to the PLC respectively. These areas have to be managed by the user (i.e. no overlapping of the variables, not even across channel borders).
  • Page 51: Supplementary Conditions

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC 1.2.6.2 Supplementary conditions Configuration ● If the PLC I/Os are to be written/read via the fast data channel, they must always be configured as a cohesive block (i.e. no address gaps within this block). ●...
  • Page 52: Examples

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC 1.2.6.3 Examples Writing to PLC-I/Os The following assumptions are made in this example: ● Data is to be output directly to the following PLC I/Os: - log. addr. 521: 8-bit digital output module - log.
  • Page 53 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.2 Access via PLC Reading from PLC-I/Os The following assumptions are made in this example: ● PLC I/Os: - log. addr. 420: 16-bit analog input module - log. addr. 422: 32-bit digital input module - log.
  • Page 54: Access Via Profibus

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS Access via PROFIBUS 1.3.1 Brief description Function The function "I/O access via PROFIBUS" implements a direct data exchange between the NCK and the PROFIBUS I/O. Availability The function is available for isochronous and non-isochronous configured PROFIBUS I/O.
  • Page 55 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS Data exchange The data exchange with the PROFIBUS I/O is performed via an NCK-internal PROFIBUS- communication interface. The following options of data exchange with the PROFIBUS I/O are available to the NCK user: ●...
  • Page 56: Configuration Of The I/O Ranges

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS 1.3.2 Configuration of the I/O ranges The configuration of the I/O range is performed via the machine data. The parameters once set can no longer be changed during the normal operation of the NCK. 16 I/O ranges in the read direction and 16 I/O ranges in the write direction are provided.
  • Page 57 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS Further attributes Further attributes can be allocated to each I/O range with the following machine data: MD10502 $MN_DPIO_RANGE_ATTRIBUTE_IN[] Value Meaning Format display of system variables $A_DPx_IN[,] Little-endian format Big-endian format Reserved...
  • Page 58: Data Exchange

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS 1.3.3 Data exchange The following requirements must be satisfied for direct data exchange with the PROFIBUS I/O via the NCK-internal PROFIBUS communication interface: ● Correct configuration of the corresponding I/O ranges. ●...
  • Page 59 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS Access I/O range data The following system variables are available for accessing the I/O range data: Table 1- 4 NCK → PROFIBUS I/O System variable Value Meaning $A_DPB_OUT[,] 8-bit unsigned...
  • Page 60 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS Check availability of the I/O ranges The availability of the I/O ranges can be checked via the following system variables. Each bit of these bit arrays corresponds to an I/O range. It is set, when the I/O-range is ready for access via the part programs/synchronous actions.
  • Page 61: Communication Via Compile Cycles

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS 1.3.3.2 Communication via compile cycles General CC-bindings are available for importing/exporting data blocks via the compile cycle interfaces. The access to the data of the I/O range takes place at the servo task level. The data is updated in each servo cycle.
  • Page 62: Supplementary Conditions

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS Note ● The bindings CCDataOpi: getDataFromDpIoRangeIn() or CCDataOpi: putDataToDpIoRangeOut() monitor during the read/write accesses the adherence to the limits of the respective I/O range configured at the NCK and PLC side. Access to data / data ranges which do not lie completely within the configured I/O range limits is rejected by returning the enumerator CCDATASTATUS_RANGE_LENGTH_LIMIT.
  • Page 63: Examples

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS 1.3.5 Examples 1.3.5.1 PROFIBUS-I/O in write direction Requirement The S7-HW-configuration is already done. Configuration for programming via part program/synchronous actions ● RangeIndex = 5 (NCK-internal configuration) ●...
  • Page 64 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS Programming Program code Comment $A_DPB_OUT[5,6]=128 ; Write (8 bit) to RangeIndex=5, RangeOffset=6 $A_DPW_OUT[5,5]='B0110' ; Write (16 bit) to RangeIndex=5, RangeOffset=5 ; Little Endian format ; Notice: RangeData of byte 6 are overwritten $A_DPSD_OUT[5,3]=’8FHex’...
  • Page 65: Profibus-I/O In Read Direction

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS 1.3.5.2 PROFIBUS-I/O in read direction Requirement The S7-HW-configuration is already done. Configuration for programming via part program/synchronous actions ● RangeIndex = 0 (NCK-internal configuration) ● as per S7-HW-configuration: –...
  • Page 66: Query Of The Rangeindex In Case Of "Profibus-I/O In Write Direction

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS Programming Program code Comment $AC_MARKER[0]=$A_DPW_IN[0,0] ; Read (16 bit) to RangeIndex=0, RangeOffset=0 ; Big Endian format $AC_MARKER[1]=$A_DPSD_IN[0,1] ; Read (32 bit) to RangeIndex=0, RangeOffset=1 ; Big Endian format $AC_MARKER[1]=$A_DPSD_IN[0.8] ;...
  • Page 67 A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.3 Access via PROFIBUS This results in the following configuration of the machine data: MD10510 $MN_DPIO_LOGIC_ADDRESS_OUT[5] = 1200 (log. start address I/O-range) MD10511 $MN_DPIO_RANGE_LENGTH_OUT[5] = 0 (a single useful-data slot is to be used) MD10512 $MN_DPIO_RANGE_ATTRIBUTE_OUT[5] Bit0 = 1 (Big-Endian-Format) Bit1 = 0 (writing only via system variable)
  • Page 68: Data Lists

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.4 Data lists Data lists 1.4.1 Machine data 1.4.1.1 General machine data Number Identifier: $MN_ Description 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...
  • Page 69: Channelspecific Machine Data

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.4 Data lists 1.4.1.2 Channelspecific machine data Number Identifier: $MC_ Description 21220 MULTFEED_ASSIGN_FASTIN Assignment of input bytes of NCK I/Os for "multiple feedrates in one block" 1.4.2 Setting data 1.4.2.1 General setting data Number Identifier: $SN_...
  • Page 70: Signals From Nc

    A4: Digital and analog NCK I/Os for SINUMERIK 840D sl 1.4 Data lists 1.4.3.2 Signals from NC Signal name SINUMERIK 840D sl SINUMERIK 828D Actual value for digital NCK inputs DB10.DBB60/186-189 DB2900.DBB0/1000 Setpoint for digital NCK outputs DB10.DBB64/190-193 DB2900.DBB4/1004 Actual value for analog NCK inputs DB10.DBB194-209 Setpoint for analog NCK outputs DB10.DBB210-225...
  • Page 71: B3: Distributed Systems - 840D Sl Only

    B3: Distributed systems - 840D sl only Brief description 2.1.1 Several operator panels on several NCUs (T:M:N) Under certain circumstances, a single operator control and monitoring station may not be sufficient for complex plants and machines. Therefore, several operator control and monitoring stations in a SINUMERIK system network (Ethernet) can be connected to several numerical controls (NCU) via a PCU in such a way that they enable flexible and distributed operation and monitoring of the entire system.
  • Page 72 B3: Distributed systems - 840D sl only 2.1 Brief description Quantity structure The following quantity structure must be observed for an operator control and monitoring system T:1:N: T: Thin Client Unit (TCU) or HT8 handheld unit The graphic information of the PCU 50.x user interface is transferred via the TCU to the operator panel front (OP) and displayed there.
  • Page 73 B3: Distributed systems - 840D sl only 2.1 Brief description N: SINUMERIK 840D sl, NCU 7x0.3 PN ● Internal SINUMERIK Operate user interface Because of the existing external SINUMERIK Operate user interface on PCU 50.x in the system network, the NCU-integrated internal SINUMERIK Operate user interface must be switched off.
  • Page 74: Ncu Link

    As standard, a maximum of three NCUs can be interconnected to form a link group. Note For a specific project, on request to your local regional Siemens representative, further NCUs can be integrated to form a link group. Extended Functions...
  • Page 75: Link Variables

    B3: Distributed systems - 840D sl only 2.1 Brief description 2.1.2.2 Link variables Link variables are global system user variables that for configured link communication can be used by all NCUs of the network. Link variables can read and written in part programs, cycles and synchronized actions.
  • Page 76: Lead Link Axes

    B3: Distributed systems - 840D sl only 2.1 Brief description 2.1.2.4 Lead link axes If in conjunction with the coupling functions of the generic coupling, all interpolators, i.e. the setpoint-creating/processing channels, the leading and following axes/spindles, are on the same NCU, the use of a lead link axis is not required. The machine axes of the leading and/or following axes/spindles can also be connected link axes to different NCUs.
  • Page 77: Application Example: Rotary Indexing Machine

    B3: Distributed systems - 840D sl only 2.1 Brief description 2.1.2.6 Application example: Rotary indexing machine On the basis of rotary cycle machine with two NCUs, the application of the "NCU Link" function is shown as example. The principal units of the rotary indexing machine are: ●...
  • Page 78 B3: Distributed systems - 840D sl only 2.1 Brief description Figure 2-3 Fig. 2: Location after rotation by one position Parameterization (schematic) General Programmed channel axes in the part programs of both NCUs: X, Z, S1 NCU1 Machine axes defined in the NCU: Local: X1, Z1 Axis container:...
  • Page 79: Ncu Link

    B3: Distributed systems - 840D sl only 2.2 NCU link NCU link 2.2.1 Link communication 2.2.1.1 General information Figure 2-4 Link communication (principle) The NCU-link communication cycle allows an interpolation-synchronous cross-NCU data exchange for the following applications: ● Cross-NCU link variable $A_DLx All the NCUs involved with the NCU-link communication have a common view of the link variables because they are exchanged via the NCU link interpolator cycle clock- synchronous between the NCU of the link group.
  • Page 80 As standard, a maximum of three NCUs can be interconnected to form a link group. Note For a specific project, on request to your local regional Siemens representative an NCU-link group with more than three NCUs is possible. Without project-specific supplements, more than three NCUs are rejected with Alarm 380020.
  • Page 81 B3: Distributed systems - 840D sl only 2.2 NCU link NCU link and Safety Integrated The following figure shows a constellation with two NCUs and two machine axes, of which the MA2 machine axis of the NCU2 is traversed as link axis for NCU1. The Safety Integrated function monitors the safety-related aspects of both axes.
  • Page 82 B3: Distributed systems - 840D sl only 2.2 NCU link Safety Integrated acceptance test and NCU link The Acceptance Test wizard (ATW) is generally used to perform the acceptance test separately for each NCU. Only alarms on the home NCU of the axis are displayed for link axes.
  • Page 83: Link Module

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.1.2 Link module The NCU-link communication takes place via link modules A link module is an optional PROFINET module for isochronous real-time communication (IRT) via Ethernet. The link module can be used only for the NCU-link communication. It is not possible to use a link module for general PROFINET communication.
  • Page 84 B3: Distributed systems - 840D sl only 2.2 NCU link Position control cycle clock The position control cycle clock is set as a ratio to the basic system cycle clock. For the SINUMERIK 840D sl, the ratio is fixed (1:1) and cannot be changed. The current position control cycle clock is displayed in the machine data: MD10061 $MN_POSCTRL_CYCLE_TIME Note...
  • Page 85: Parameter Assignment: Link Communication

    ● MD18782 $MN_MM_LINK_NUM_OF_MODULES (number of NCUs of the line group)) ● MD10061 $MN_POSCTRL_CYCLE_TIME (position controller cycle) Note For applications, in which the standard configurations that have been supplied cannot be used, please contact your local Siemens sales person. Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 86: Wiring The Ncus

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.1.6 Wiring the NCUs The numerical sequence of the NCUs within a link group is defined in the NCUs using the following machine data: MD12510 $MN_NCU_LINKNO = , with NCU number = 1 ... max. NCU number Cabling Starting from the NCU1, the NCU link modules should be wired up in the NCU number...
  • Page 87: Link Variables

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.2 Link variables Complex systems with several NCUs require for the complete system coordination of the manufacturing processes a cyclic exchange of user-specific data between the NCUs. The data exchange is performed via the link communication and a special memory area, the link variables memory available for each NCU.
  • Page 88: Properties Of The Link Variables Memory

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.2.1 Properties of the link variables memory Parameterizing the memory size The size of the link variables memory in bytes is set with the following machine data: MD18700 $MN_MM_SIZEOF_LINKVAR_DATA (size of the link variables memory) The setting for the size of the link variables memory should be identical for all NCUs involved in the link group.
  • Page 89: Write Elements

    B3: Distributed systems - 840D sl only 2.2 NCU link Write A link variable is written with main-run synchronism. Read A preprocessing stop is initiated when a link variable is read. Checks The following checks are performed for the link variables and link variables memory: ●...
  • Page 90: Dynamic Response During Write

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.2.4 Dynamic response during write The link variables are written with main-run synchronism. The new value may be read by the other channels in its own NCU no later than the next interpolation cycle. It can be read in the next part program block in its own channel.
  • Page 91: Synchronization Of A Write Request

    B3: Distributed systems - 840D sl only 2.2 NCU link Channelspecific system variable Identifier Meaning $A_LINK_TRANS_RATE Number of write requests that still can be transferred in the current interpolator cycle. 1) Application example, refer to Section: "Synchronization of a write request (Page 91)" 2.2.2.6 Synchronization of a write request If certain applications require the new value of a link variable to be transferred to the other...
  • Page 92 B3: Distributed systems - 840D sl only 2.2 NCU link Memory structure The data is arranged in the link variables memory as follows, with the data format limits taken into account: Figure 2-8 Example: Structure of the link variables memory Note Memory structure The data in the link variables memory is always arranged randomly and may therefore...
  • Page 93: Example: Read Drive Data

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.2.8 Example: Read drive data Task A system contains two NCUs (NCU1/NCU2). The NCUs are connected via the NCU link. The MA2 machine axis of NCU1 (drive 2) travels in interpolation mode as link axis for NCU2. The actual current value of drive 2 should be transferred for evaluation from NCU1 to NCU2.
  • Page 94: Link Axes

    B3: Distributed systems - 840D sl only 2.2 NCU link Programming NCU1 A static synchronized action is used to write cyclically in the interpolation cycle the actual current value $VA_CURR of axis 2 (NCU1/MA2) via the link variable $A_DLR[0] (REAL value) to the first 8 bytes of the link variables memory: Program code IDS=1 WHENEVER TRUE DO $A_DLR[0]=$VA_CURR[MA2]...
  • Page 95 B3: Distributed systems - 840D sl only 2.2 NCU link Figure 2-9 Link axes Requirement The use of link axes requires a link communication defined in accordance with "Section Link communication (Page 79)". Home NCU The home NCU of a link axis is the NCU on which it is physically connected as machine axis. The position control and the exchange of axial NC/PLC interface signals of a link axis always occurs on the home NCU.
  • Page 96: Name Of A Link Axis

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.3.2 Name of a link axis The name of a link axis is composed of the identifier for the home NCU on which the machine axis is physically connected and the general machine axis name AXn: NC_...
  • Page 97: Auxiliary Function Output For Spindles

    B3: Distributed systems - 840D sl only 2.2 NCU link Example Figure 2-10 Example: Parameterization of link axes Channel 1 The local AX1/AX2 machine axes of the NCU1 are assigned to the X/Z geometry axes. Channel 2 The NC2_AX1/NC2_AX2 link axes of the NCU2 are assigned to the X/Z geometry axes. 2.2.3.4 Auxiliary function output for spindles During program execution and after block search with "search via program test"...
  • Page 98: Supplementary Conditions

    B3: Distributed systems - 840D sl only 2.2 NCU link Output of the axis-specific auxiliary functions ● DB31, ... DBD78 (F function for axis) ● DB31, ... DBW86 (M function for spindle) ● DB31, ... DBD88 (S function for spindle) References Detailed information about the auxiliary function output can be found in: Function Manual, Basic Functions, "Help function outputs to the PLC (H2)"...
  • Page 99 B3: Distributed systems - 840D sl only 2.2 NCU link Alarms: Response for "NC not ready" alarm response If an error is detected at the position control level of the home NCU of a link axis and the relevant alarm does not have "NC not ready" as response, the alarm is transferred to the setpoint-generating NCU via the NCU link and output there.
  • Page 100: Axis Container

    B3: Distributed systems - 840D sl only 2.2 NCU link Powering up an NCU group If an NCK reset is triggered on an NCU in a link group, it will also be transferred to all other NCUs of the link group so that all NCUs of the link group perform a warm restart. Nibbling and punching technologies The fast inputs/outputs required for the nibbling and punching must be connected and parameterized on the NCU on which the part program is processed and the axes...
  • Page 101 B3: Distributed systems - 840D sl only 2.2 NCU link Figure 2-11 Example: Axis container CT1 with four slots Rules The following rules must be observed with regard to axis containers: ● All machine axes of an axis container may be assigned to just one channel axis at any one time.
  • Page 102 B3: Distributed systems - 840D sl only 2.2 NCU link Axis container name The following program commands can be addressed via the axis container name (): ● Program commands: – AXCTSWE() – AXCTSWED() – AXCTSWEC() The following names are possible: The number of the axis container is attached to the CT letter CT...
  • Page 103: Parameterization

    B3: Distributed systems - 840D sl only 2.2 NCU link Synchronization with axis position If the new container axis assigned to the channel after a container rotation does not have the same absolute machine position as the previous axis, then the container is synchronized with the new position (internal REORG).
  • Page 104 B3: Distributed systems - 840D sl only 2.2 NCU link Axis container-specific functions MD12760 $MN_AXCT_FUNCTION_MASK.Bit x = Parameters Meaning Bit 0: For a direct axis container connection (AXCTSWED), all other channels must be in the RESET state. For a direct axis container connection (AXCTSWED), only other channels that have the interpolation authorization to axes of the axis container need to be in the RESET state.
  • Page 105 B3: Distributed systems - 840D sl only 2.2 NCU link Figure 2-12 Axis container rotation, Fig. 1 Starting with the initial setting, after the rotation with increment 2 (Fig. 2, left-hand side), the NCU2_ AX1 link axis is assigned to slot 1. Starting with the initial setting, after the rotation with increment -1 (Fig.
  • Page 106 B3: Distributed systems - 840D sl only 2.2 NCU link Alignment of axial machine data For container axes, all axial machine data marked with the "CTEQ" (container equal) attribute must have the same value for all container axes. Any different values will be aligned automatically.
  • Page 107 B3: Distributed systems - 840D sl only 2.2 NCU link Parameter assignment: NCU1 Figure 2-14 Example: Parameter assignment of channel axes and axis containers Effect By programming the X and Z geometry axes in the 1st and 2nd channel of the NCU1, the following axes traverse in the current position of the container: ●...
  • Page 108 B3: Distributed systems - 840D sl only 2.2 NCU link Notes on the parameter assignment Container axis distribution and communications utilization In the case of a plant with several NCUs that traverse alternately axes of other NCUs (link axes) in conjunction with axis containers, the type and manner how the link axes are distributed within the axis container decide on the utilization of the link communication.
  • Page 109 B3: Distributed systems - 840D sl only 2.2 NCU link Drive distribution and communications utilization In a system with several NCUs that in conjunction with axis containers alternately traverse axes of another NCU (link axes), the distribution of the drives connected to the NCU decides the utilization of the link communication.
  • Page 110: Programming

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.4.3 Programming Function commands are used to enable the rotation of the specified axis AXCTSWE AXCTSWED container. Any previously set enable for axis container rotation is cancelled with the AXCTSWEC command.
  • Page 111: System Variable

    B3: Distributed systems - 840D sl only 2.2 NCU link Name of the axis container or a container axis: Default identifier of an axis container: CT MD12750 $MN_AXCT_NAME_TAB Example: User-specific name of an axis container: MD12750 $MN_AXCT_NAME_TAB Example: CONTAINER_1 Name of a known container axis in the channel ...
  • Page 112: Machining With Axis Container (Schematic)

    B3: Distributed systems - 840D sl only 2.2 NCU link References A detailed description of the system variables can be found in: System Variables, List Manual See also Evaluating axis container system variables (Page 124) 2.2.4.5 Machining with axis container (schematic) Figure 2-18 Example: Schematic machining sequence for a station of a rotary cycle machine Extended Functions...
  • Page 113: Behavior In Different Operating States

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.4.6 Behavior in different operating states Startup (Power On) In the startup the controller, with regard to the slot assignment, the initial state defined in the machine data is always assumed irrespective in which state of the axis container the control was switched off: MD1270x $MN_AXCT_AXCONF_ASSIGN_TABx Note...
  • Page 114 B3: Distributed systems - 840D sl only 2.2 NCU link ① NCU1, channel1: Enable issued using the command AXCTSWE ② NCU2, channel2: Enable issued using the command AXCTSWE ③ NCU1, channel2: Enable issued via command → all enables of all channels are now AXCTSWE present in the NCU1 →...
  • Page 115: Supplementary Conditions

    B3: Distributed systems - 840D sl only 2.2 NCU link To allow a previously granted enable to be canceled, the enable for at least one of the channels (NCU1 or NCU2) involved on the axis container must still be pending at the time of ④...
  • Page 116 B3: Distributed systems - 840D sl only 2.2 NCU link Continuous-path mode If continuous-path mode is active in the channel and an axis container rotation is performed, a subsequent programming of a container axis interrupts the continuous-path mode. The interruption also occurs even when the container axis not a path axis. PLC axis If a container axis whose axis container has been enabled for rotation becomes a PLC axis, the status change occurs only after completion of the axis container rotation.
  • Page 117 B3: Distributed systems - 840D sl only 2.2 NCU link Transformation If a container axis is involved as a spindle in a transformation, the transformation must be deselected before the enable of the axis container rotation. Axis couplings If an axis coupling is active for a container axis, the coupling with must be deselected COUPOF before the enable of the axis container rotation.
  • Page 118: Lead Link Axes

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.5 Lead link axes 2.2.5.1 General information If, for an axis coupling, the the machine axes of the leading and following axes are not connected to the same NCU, the coupling must be established using a link axis of the NCU of the following axis.
  • Page 119: Parameterization

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.5.2 Parameterization Link communication NC-specific machine data Number Identifier $MN_ Meaning MD12510 NCU_LINKNO Unique numerical identification of the NCU within the link group. The identifiers must be assigned without any gaps in ascending ordering starting from 1.
  • Page 120: System Variables To Enter A Leading Value

    B3: Distributed systems - 840D sl only 2.2 NCU link Leading, lead-link and following axis NC-specific machine data Number Identifier $MN_ Meaning MD10000 AXCONF_MACHAX_NAME_TAB Machine axis name MD10002 AXCONF_LOGIC_MACHAX_TAB Logical machine axis image Channel-specific machine data Number Identifier $MC_ Meaning MD20070 AXCONF_MACHAX_USED Used machine axis...
  • Page 121: Supplementary Conditions

    B3: Distributed systems - 840D sl only 2.2 NCU link 2.2.5.4 Supplementary conditions The following supplementary conditions must be observed: ● The leading axis cannot be a link axis ● The leading axis cannot be a container axis ● The leading axis cannot be a gantry axis ●...
  • Page 122: Examples

    B3: Distributed systems - 840D sl only 2.3 Examples Different systems of units Different systems of units are possible in spite of an active link group, as long as no cross NCU interpolation takes place. The system of units settings are made for a specific NCU in the part program or synchronous action using G commands ( G700 G710...
  • Page 123: Axis Container Coordination

    B3: Distributed systems - 840D sl only 2.3 Examples NCU2 Machine data Note General link data: $MN_NCU_LINKNO = 2 Slave NCU $MN_MM_NCU_LINK_MASK = 1 Set NCU-link active $MN_MM_SERVO_FIFO_SIZE = 3 Size of the data buffer between interpolation and position control $MN_MM_LINK_NUM_OF_MODULES = 2 Number of link modules Logical machine axis image (LAI):...
  • Page 124: Axis Container Rotation With An Implicit Part Program Wait

    B3: Distributed systems - 840D sl only 2.3 Examples 2.3.2.2 Axis container rotation with an implicit part program wait Channel 1 Channel 2 Comment AXCTWE(C1) Part program ... Channel 1 enables the axis container for rotation. Part program with movement of a Part program ...
  • Page 125: Wait For Certain Completion Of Axis Container Rotation

    B3: Distributed systems - 840D sl only 2.3 Examples 2.3.3.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 rl = $AN_AXCTAS[ctl];...
  • Page 126: Configuration Of A Multi-Spindle Turning Machine

    B3: Distributed systems - 840D sl only 2.3 Examples Example 3.3 Use internal wait AXCTSWE(CTL) ; If an axis container is reenabled for rotation, ; an internal wait takes place for the end of the earlier ; axis container rotation. N2150 WHILE (rl == $AN_AXCTAS[ctl]) Note Programming in the NC program:...
  • Page 127 B3: Distributed systems - 840D sl only 2.3 Examples ● 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. –...
  • Page 128 B3: Distributed systems - 840D sl only 2.3 Examples Axis container With rotation of drums A/B, HS , GS , ZG and STN must be assigned to another NCU and must therefore be configured as link axes in axis containers. Figure 2-21 Schematic diagram of main spindles HSi, countersp.
  • Page 129 B3: Distributed systems - 840D sl only 2.3 Examples Figure 2-22 Two slides per position can also operate together on one spindle. Note The axes are given the following names in order to clarify the assignments of axes to slides and positions: Xij with i slide (1, 2), j position (A-D) Zij with i slide (1, 2), j position (A-D)
  • Page 130 B3: Distributed systems - 840D sl only 2.3 Examples Axes of master NCU Table 2- 1 Axes of master NCU: NCUa Common axes Local axes Comment TRV (drum V) Master NCU only TRH (drum H) Master NCU only Slide 1 Slide 1 Slide 2 Slide 2...
  • Page 131 B3: Distributed systems - 840D sl only 2.3 Examples Configuration options ● Main or counterspindles are flexibly assigned to the slide. ● The speed of the main spindle and the counterspindle can be defined independently in each position. Exceptions: During the parts change from front-plane machining in drum V to rear-plane machining in drum H, the speeds of the main spindle and the counterspindle must be synchronized (synchronous spindle coupling).
  • Page 132 B3: Distributed systems - 840D sl only 2.3 Examples Table 2- 2 NCUa, position: a, channel: 1, slide: 1 Channel axis name ..._MACHAX $MN_ Container, slot Machine axis name _USED AXCONF_LOGIC_MACH entry (string) AX_TAB, AX1: CT1_SL1 NC1_AX1 AX2: CT3_SL1 NC1_AX2 AX3: AX4: AX5: CT4_SL1...
  • Page 133 B3: Distributed systems - 840D sl only 2.3 Examples 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 ●...
  • Page 134 B3: Distributed systems - 840D sl only 2.3 Examples Table 2- 4 Axis container and their position-dependent contents for drum A Container Slot Initial position Switch 1 Switch 2 Switch 3 Switch 4 = (TRA 0°) (TRA 90°) (TRA 180°) (TRA 270°) (TRA 0°) NC1_AX1, HS1...
  • Page 135: Lead Link Axis

    B3: Distributed systems - 840D sl only 2.3 Examples 2.3.5 Lead link axis 2.3.5.1 Configuration Figure 2-24 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.
  • Page 136 B3: Distributed systems - 840D sl only 2.3 Examples Machine data for NCU1 (leading axis) Machine data Meaning $MN_NCU_LINKNO = 1 1. or 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 The size of the data buffer is increased to 4 between interpolation and position control $MN_AXCONF_LOGIC_MACHAX_TAB[0] = "AX1"...
  • Page 137: Programming

    B3: Distributed systems - 840D sl only 2.3 Examples 2.3.5.2 Programming Program for NCU1 (leading axis) NCU1 traverses leading axis Z Identifier for NCU2, that the leading axis of NCU1 is assigned: Link variable $A_DLB[0] = 1 Identifier for NCU2, that the leading axis of NCU1 has been released: Link variable $A_DLB[0] = 0 Program code Comment...
  • Page 138: Data Lists

    B3: Distributed systems - 840D sl only 2.4 Data lists Data lists 2.4.1 Machine data 2.4.1.1 General machine data Number Identifier: $MN_ Description 10002 AXCONF_LOGIC_MACHAX_TAB Logical NCU machine axis image 10065 POSCTRL_DESVAL_DELAY Position setpoint delay 10134 MM_NUM_MMC_UNITS Number of simultaneous MMC communication partners 12510 NCU_LINKNO...
  • Page 139: Axis/Spindlespecific Machine Data

    B3: Distributed systems - 840D sl only 2.4 Data lists 2.4.1.3 Axis/spindlespecific machine data Number Identifier: $MA_ Description 30550 AXCONF_ASSIGN_MASTER_CHAN Default assignment between an axis and a channel 30554 AXCONF_ASSIGN_MASTER_NCU Initial setting defining which NCU generates setpoints for the axis 30560 IS_LOCAL_LINK_AXIS Axis is a local link axis...
  • Page 140: Signals From Hmi/Plc

    B3: Distributed systems - 840D sl only 2.4 Data lists 2.4.3.2 Signals from HMI/PLC Signal name SINUMERIK 840D sl ONL_REQUEST DB19.DBB100 Online request from HMI ONL_CONFIRM DB19.DBB102 Acknowledgement from PLC for online request PAR_CLIENT_IDENT DB19.DBB104 HMI writes its client identification (bus type, HMI bus address) PAR_MMC_TYP DB19.DBB106...
  • Page 141 B3: Distributed systems - 840D sl only 2.4 Data lists Signal name SINUMERIK 840D sl MMC1_MSTT_SHIFT_LOCK DB19.DBX126.1 MCP switchover lock MMC1_ACTIVE_REQ DB19.DBX126.2 HMI requests active operator mode MMC1_ACTIVE_PERM DB19.DBX126.3 Enable from PLC to change the operator mode MMC1_ACTIVE_CHANGED DB19.DBX126.4 HMI has changed the operator mode MMC1_CHANGE_DENIED DB19.DBX126.5 HMI active/passive switchover denied...
  • Page 142: Signals From Axis/Spindle

    B3: Distributed systems - 840D sl only 2.4 Data lists 2.4.3.4 Signals from axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D NCU link axis active DB31, ..DBX60.1 Axial alarm DB31, ..DBX61.1 DB390x, DBX1.1 Axis ready DB31, ..DBX61.2 DB390x, DBX1.2 Axis container rotation active DB31, ...
  • Page 143: H1: Manual And Handwheel Travel

    H1: Manual and handwheel travel Introduction 3.1.1 Overview Even on modern, numerically controlled machine tools, a facility must be provided that allows the user to traverse the axes manually. ● Setting up the machine 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.
  • Page 144: General Characteristics When Traversing In The Jog Mode

    H1: Manual and handwheel travel 3.1 Introduction 3.1.2 General characteristics when traversing in the JOG mode The following is a description of the characteristics which generally apply to manual travel in JOG mode (irrespective of the type selected). JOG mode Manual traversing of axes via the traversing keys of the machine control panel by the operator, referred to as manual traversing in the following, is performed in JOG mode.
  • Page 145 H1: Manual and handwheel travel 3.1 Introduction Velocity The velocity for a JOG traversing movement is determined by the following value settings depending on the feedrate mode: ● Linear feedrate (G94) is active (SD41100 $SN_JOG_REV_IS_ACTIVE = 0): – With the general setting data: SD41110 $SN_JOG_SET_VELO (axis velocity for JOG) Or, for rotary axes with general setting data: SD41130 $SN_JOG_ROT_AX_SET_VELO...
  • Page 146 H1: Manual and handwheel travel 3.1 Introduction The interface signal DB31, ... DBX1.7 (axial feedrate override active) has no meaning for switch position 0%. Instead of being set by the feedrate override switch position (gray code), the percentage value (0% to 200%) can optionally be set directly by the PLC. Again, the selection is made via machine data.
  • Page 147: Control Of Manual-Travel Functions Via Plc Interface

    H1: Manual and handwheel travel 3.1 Introduction Spindle manual travel Spindles can also be traversed manually in JOG mode. Essentially, the same conditions apply as for manual travel of axes. Spindles can be traversed in JOG mode using the traversing keys continuously or incrementally, in jog or continuous mode, or using the handwheel.
  • Page 148: Continuous (Jog Cont)

    H1: Manual and handwheel travel 3.2 Continuous (JOG CONT) References Detailed information on the configuration and integration of machine control panels in the PLC user program can be found in the Basic Functions manual: ● SINUMERIK 840D sl: "P3: Basic PLC program for SINUMERIK 840D sl" ●...
  • Page 149: Distinction Between Inching Mode Continuous Mode

    H1: Manual and handwheel travel 3.2 Continuous (JOG CONT) 3.2.2 Distinction between inching mode continuous mode Continuous traversing in jog mode can be performed in jogging or in continuous traversing. Continuous traversing in jog mode In jog mode, the axis traverses as long as the traversing key is pressed. With the release of the traversing key, the axis is decelerated to standstill.
  • Page 150: Supplementary Conditions

    H1: Manual and handwheel travel 3.2 Continuous (JOG CONT) Abort traversing movement The operator can abort traversing via the user interface of the machine control panel (MCP) in the following ways: ● Pressing the same traversing key again ● Pressing the traversing key for the opposite direction ●...
  • Page 151: Incremental (Jog Inc)

    H1: Manual and handwheel travel 3.3 Incremental (JOG INC) Incremental (JOG INC) 3.3.1 General functionality Function With incremental traversing, the operator specifies the number of increments to be traversed by the axis via the machine control panel. In addition to five fixed increment sizes (default setting: INC1, INC10, INC100, INC1000 and INC10000), a variable increment size (INCvar) that can be set via the setting data is also available.
  • Page 152: Distinction Between Jogging Mode And Continuous Mode

    H1: Manual and handwheel travel 3.3 Incremental (JOG INC) 3.3.2 Distinction between jogging mode and continuous mode Analogous to the continuous traversing in JOG mode, incremental traversing can also be performed in jogging or in continuous traversing. Incremental travel in jogging mode Function If the traversing key for the required direction (e.g.
  • Page 153: Supplementary Conditions

    H1: Manual and handwheel travel 3.3 Incremental (JOG INC) ● When the first valid limit is reached CAUTION Traversing range limit inactive Software limit switches and working-area limitations are only activated after reference point approach. ● Deselection or change of the current increment (e.g. change from INC100 to INC10) ●...
  • Page 154: Handwheel Travel In Jog

    H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Handwheel travel in JOG 3.4.1 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.
  • Page 155 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Representation of the handwheel number in the NC/PLC interface signals Depending on the parameter assignment of MD11324, the representation of the handwheel number in the NC/PLC interface signals is bit-coded (three handwheels can be represented) or binary-coded (six handwheels can be represented).
  • Page 156 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Handwheel selection by HMI A separate user interface is provided between the HMI and PLC to allow activation of the handwheel from the user interface. This interface supplied by the basic PLC program for handwheels 1, 2 and 3 contains the following information: ●...
  • Page 157 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Travel request The following NC/PLC interface signal informs the PLC that an axis wants to travel or is travelling: ● Machine axes: – DB31, ... DBX64.4 (minus travel request) or –...
  • Page 158 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Travel command Depending on the setting in machine data MD11324 $MN_HANDWH_VDI_REPRESENTATION (see Section "Parameter assignment (Page 161)"), the following interface signal is output to the PC already when a travel request is present or not until the axis moves: ●...
  • Page 159 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG In addition to configuring the particular MD, handwheel direction of rotation inversion can be activated by setting the IS "Invert the handwheel direction of rotation" belonging to the particular axis: ●...
  • Page 160 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Note It is only permissible to change the inversion signal at standstill. If the change is made while motion setpoints are being output by the interpolator, then the signal change is rejected and an alarm is output;...
  • Page 161: Parameter Assignment

    H1: Manual and handwheel travel 3.4 Handwheel travel in JOG 3.4.2 Parameter assignment Distance or velocity specification Either the distance or the velocity can be entered via the handwheel: ● Distance specification (default setting) The distance specified by the handwheel is traversed and No pulses are lost. Limiting the velocity to the maximum permissible value causes the axes to overtravel.
  • Page 162 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Variable increment The parameter assignment of the variable increment size is performed via NC-specific setting data: SD41010 $SN_JOG_VAR_INCR_SIZE = Distance evaluation of one increment The distance evaluation of one increment for fixed and variable increment sizes is performed via the axis-specific machine data: MD31090 $MA_JOG_INCR_WEIGHT = ...
  • Page 163 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Output of the NC/PLC interface signals "Plus travel command" / "Minus travel command" The output behavior of the NC/PLC interface signals "Plus travel command" / "Minus travel command" is specified with the machine data: MD17900 $MN_VDI_FUNCTION_MASK Value Meaning...
  • Page 164 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Behavior at software limit switches, working-area limitation When axes are traversed in JOG mode, they can traverse only up to the first active limitation before the corresponding alarm is output. Depending on the setting in the machine data: MD11310 $MN_HANDWH_REVERSE (threshold for direction change, handwheel) the behavior is then as follows (as long as the axis has still not arrived at the end point from...
  • Page 165 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG NC/PLC interface signal Scope MD20624 $MC_HANDWH_CHAN_STOP_COND Bit == 0 Bit == 1 DB11 DBX0.5 (mode group Geometry axis / machine Interruption until NC start Abort stop) axis DB11 DBX0.6 (mode group Geometry axis / machine Interruption until NC start Abort...
  • Page 166: Travel Request

    H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Interruption of a traversing motion When a stop command is issued, the distance-to-go is saved and the handwheel pulses are collected. When the stop condition no longer applies, the resulting distance is traversed. Abort of a traversing motion When a stop command is issued, the distance-to-go is deleted and the handwheel pulses are ignored (i.e.
  • Page 167 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Figure 3-2 Signal-time diagram: Handwheel travel with distance specification, stop condition is not an abort criterion MD17900 $MN_VDI_FUNCTION_MASK bit 0 = 1 Example 2: Handwheel travel, stop condition is an abort criterion If a stop condition is selected as an abort criterion via machine data MD32084 $MA_HANDWH_STOP_COND or MD20624 $MC_HANDWH_CHAN_STOP_COND during handwheel travel, no travel...
  • Page 168 H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Figure 3-3 Signal-time diagram: Handwheel travel, stop condition is an abort criterion If a stop condition is activated during the handwheel travel, the motion is aborted and the "Travel request" and "Travel command" NC/PLC interface signals are reset. Example 3: Handwheel travel with velocity specification, stop condition is an abort criterion If the handwheel is no longer moved for velocity specification (MD11346 $MN_HANDWH_TRUE_DISTANCE == 0 or == 2), the "Travel request"...
  • Page 169: Double Use Of The Handwheel

    H1: Manual and handwheel travel 3.4 Handwheel travel in JOG Supplementary conditions NC stop With NC stop present, no travel command and, therefore, no travel request is output. There is an exception with DRF travel: If DRF travel is permitted in the NC stop state via machine data MD20624 $MC_HANDWH_CHAN_STOP_COND (bit 13 == 1), the behavior corresponds to that of handwheel travel.
  • Page 170: Handwheel Override In Automatic Mode

    H1: Manual and handwheel travel 3.5 Handwheel override in automatic mode Example: Velocity override of positioning axis Assumption: Channel 1: Channel axis A corresponds to machine axis 4 and handwheel 1 is assigned to this axis. If block is processed in the main run, machine axis 4 cannot be POS[A]=100 FDA[A]=0 traversed with DRF.
  • Page 171 H1: Manual and handwheel travel 3.5 Handwheel override in automatic mode Distinction Depending on the programmed feedrate, a distinction is made between the following for handwheel override: ● Path definition Axis feedrate = 0 (FDA = 0) ● Velocity override Axis feedrate >...
  • Page 172 H1: Manual and handwheel travel 3.5 Handwheel override in automatic mode Velocity override With regard to the velocity override, a distinction is made between axis feedrate and path feedrate. ● Axis-velocity override (FDA[AXi] > 0): The positioning axis is moved to the target position at the programmed axial feedrate. Using the assigned handwheel, it is possible to increase the axis velocity or to reduce it to a minimum of zero depending on the direction of rotation.
  • Page 173 H1: Manual and handwheel travel 3.5 Handwheel override in automatic mode Handwheel assignment The assignment of the connected handwheels to the axes is analogous to the "Handwheel travel in JOG (Page 154)" via the user interface or via the PLC user interface with one of the following interface signals: ●...
  • Page 174 H1: Manual and handwheel travel 3.5 Handwheel override in automatic mode Example Assumptions: The operator turns the handwheel with 100 pulses/second. The selected machine function is INC100. The default setting is made for the above machine data for handwheel weighting. ⇒...
  • Page 175: Programming And Activating Handwheel Override

    H1: Manual and handwheel travel 3.5 Handwheel override in automatic mode NC Stop/override = 0 If the feedrate override is set to 0% or an NC Stop is initiated while the handwheel override is active, the following applies: ● For path definition: The handwheel pulses arriving in the meantime are summated and stored.
  • Page 176 H1: Manual and handwheel travel 3.5 Handwheel override in automatic mode Example 2: Activate path default and velocity override in the same NC block N20 POS[U]=100 FDA[U]= 0 POS[V]=200 FDA[V]=150 . . . Target position of positioning axis U POS[U]=100 Activate path default for positioning axis U;...
  • Page 177: Special Features Of Handwheel Override In Automatic Mode

    H1: Manual and handwheel travel 3.5 Handwheel override in automatic mode 3.5.3 Special features of handwheel override in automatic mode Velocity display The velocity display for handwheel override shows the following values: ● Set velocity = programmed velocity ● Actual velocity = resultant velocity including handwheel override Effect on transverse axes If the axis is defined as a transverse axis and...
  • Page 178: Contour Handwheel/Path Input Using Handwheel (Option)

    H1: Manual and handwheel travel 3.6 Contour handwheel/path input using handwheel (option) Contour handwheel/path input using handwheel (option) Function When the function is activated, the feedrate of path and synchronized axes can be controlled via a handwheel in AUTOMATIC and MDI modes. Availability For the SINUMERIK 840D sl and SINUMERIK 828D systems, the "contour handwheel"...
  • Page 179 H1: Manual and handwheel travel 3.6 Contour handwheel/path input using handwheel (option) Traversing direction The traversing direction depends on the direction of rotation: ● Clockwise → Results in travel in the programmed direction If the block-change criterion (IPO end) is reached, the program advances to the next block (response identical to ●...
  • Page 180: Drf Offset

    H1: Manual and handwheel travel 3.7 DRF offset Boundary conditions ● Preconditions Fixed feedrate, dry-run feedrate, thread cutting, or tapping must not be selected. ● Limit values The acceleration and velocity of the axes are limited to the values defined in the machine data.
  • Page 181 H1: Manual and handwheel travel 3.7 DRF offset Velocity reduction The velocity generated using the handwheel for DRF can be reduced with respect to the JOG velocity: MD32090 $MA_HANDWH_VELO_OVERLAY_FACTOR (ratio of JOG velocity to handwheel velocity (DRF)) DRF active DRF must be active to allow the DRF offset to be modified by means of traversal with the handwheel.
  • Page 182 H1: Manual and handwheel travel 3.7 DRF offset Figure 3-5 Control of DRF offset Display The axis actual-position display (ACTUAL POSITION) does not change while an axis is being traversed with the handwheel via DRF. The current axis DRF offset can be displayed in the DRF window.
  • Page 183: Approaching A Fixed Point In Jog

    H1: Manual and handwheel travel 3.8 Approaching a fixed point in JOG Approaching a fixed point in JOG 3.8.1 Introduction Function The machine user can use the "Approaching fixed point in JOG" function to approach axis positions defined through machine data by actuating the traverse keys of the machine control table.
  • Page 184: Functionality

    H1: Manual and handwheel travel 3.8 Approaching a fixed point in JOG 3.8.2 Functionality Procedure Procedure in "Approaching fixed point in JOG" ● Selection of JOG mode ● Enabling the "Approach fixed point in JOG" function ● Traversing of the machine axis with traverse keys or handwheel Activation After selecting the "Approach fixed point in JOG"...
  • Page 185 H1: Manual and handwheel travel 3.8 Approaching a fixed point in JOG Movement in the opposite direction The response while traversing in the opposite direction, i.e.,against the direction of the approaching fixed point depends on the setting of Bit 2 in the machine data: MD10735 $MN_JOG_MODE_MASK (settings for the JOG mode) Traverse in the opposite direction is possible only if the bit is set.
  • Page 186: Parameterization

    H1: Manual and handwheel travel 3.8 Approaching a fixed point in JOG Special features of incremental travel If, during incremental travel, the fixed point is reached before the increment is completed, then the increment is considered to have been completed fully. This is the case even when only whole increments are traveled.
  • Page 187 H1: Manual and handwheel travel 3.8 Approaching a fixed point in JOG Number of valid fixed point positions The number of fixed point positions entered in MD30600 $MA_FIX_POINT_POS that are actually valid, can be defined using: MD30610 $MA_NUM_FIX_POINT_POS = Note Exception: G75 For compatibility reasons, the following parameter assignment is also possible for G75:...
  • Page 188: Programming

    H1: Manual and handwheel travel 3.8 Approaching a fixed point in JOG – MD32431 $MA_MAX_AX_JERK [0] (maximum axial jerk for path motions in the dynamic response mode DYNNORM) Note MD32431 $MA_MAX_AX_JERK is only effective when the axial jerk limitation for single-axis movements has been enabled for the machine axes to be traversed: MD32420 $MA_JOG_AND_POS_JERK_ENABLE [] == TRUE Reference:...
  • Page 189: Application Example

    H1: Manual and handwheel travel 3.8 Approaching a fixed point in JOG Offset values active Active offset values (DRF, external zero offset, synchronized action offset $AA_OFF, online tool offset) are also traversed. The fixed point is a position in the machine coordinates system.
  • Page 190: Retraction In The Tool Direction (Jog Retract)

    H1: Manual and handwheel travel 3.9 Retraction in the tool direction (JOG retract) Approaching fixed point 2 The control is switched in the JOG mode. The "Approaching fixed point" function is activated on Fixed Point 2 via the NC/PLC interface signal: DB31 DBX13.1 = 1 (Bit 0-2 = 2) The actuation is confirmed via the NC/PLC interface signal:...
  • Page 191: Parameter Assignment

    H1: Manual and handwheel travel 3.9 Retraction in the tool direction (JOG retract) Data to be restored In order to be able to execute the retraction in the tool direction after a program abort, the following data which was active in the channel before the program abort, is restored: ●...
  • Page 192 H1: Manual and handwheel travel 3.9 Retraction in the tool direction (JOG retract) MD10721 $MN_OPERATING_MODE_EXTENDED[] = Value Meaning Selection of the operating mode corresponding to MD10720 $MN_OPERATING_MODE_DEFAULT Selection of JOG mode, if: DB21, ... DBX377.5 == 1 ("retraction data available") Enable of the traversing direction The retraction can be limited to the positive direction of travel or enabled for both travel directions:...
  • Page 193: Selection

    H1: Manual and handwheel travel 3.9 Retraction in the tool direction (JOG retract) 3.9.3 Selection Function Requirement The selection of JOG retract is only possible, if valid retraction data is available for the relevant channel, the channel is in JOG mode and in the "Reset" state: ●...
  • Page 194 H1: Manual and handwheel travel 3.9 Retraction in the tool direction (JOG retract) Selection via the user interface The selection of JOG retract is performed on the user interface via the "Retract" softkey: "Machine operating area" > "ETC key (">")" > "Retract" Selection by PLC user program The following actions must be performed to select JOG retract by the PLC user program: ●...
  • Page 195: Tool Retraction

    H1: Manual and handwheel travel 3.9 Retraction in the tool direction (JOG retract) 3.9.4 Tool retraction General retraction behavior The tool is retracted by manually traversing the geometry axis specified when selecting JOG retract in the workpiece coordinate system (WCS). The specification of the retraction movement can be performed via the traversing keys of the machine control panel (MCP) or via the handwheel.
  • Page 196: Deselection

    H1: Manual and handwheel travel 3.9 Retraction in the tool direction (JOG retract) 3.9.5 Deselection JOG retract is deselected channel-specifically via: ● Channel reset – Machine control panel: "Reset" button – Basic PLC program: DB21, … DBX7.7 = 1 (reset) ●...
  • Page 197: Continuing Machining

    H1: Manual and handwheel travel 3.9 Retraction in the tool direction (JOG retract) 3.9.7 Continuing machining AUTOMATIC mode Before the aborted part program is continued with NC start in AUTOMATIC mode, all machine axes with active measuring systems in the state "restored" or "not referenced" must be referenced.
  • Page 198: State Diagram

    H1: Manual and handwheel travel 3.9 Retraction in the tool direction (JOG retract) 3.9.8 State diagram Operating mode Operating mode change Figure 3-6 State diagram: JOG retract 3.9.9 System data The following system data is available for JOG retract: Meaning System variable $VA_ NC/PLC interface OPI variable...
  • Page 199: Supplementary Conditions

    H1: Manual and handwheel travel 3.9 Retraction in the tool direction (JOG retract) 3.9.10 Supplementary conditions Incremental measuring systems The user must ensure that machine axes with incremental measuring systems are clamped with sufficient speed in the event of a power failure to prevent a change to the last position, known and saved by the control.
  • Page 200: Start-Up: Handwheels

    H1: Manual and handwheel travel 3.10 Start-up: Handwheels 3.10 Start-up: Handwheels 3.10.1 General information In order to operate handwheels of a SINUMERIK control system, they have to be parameterized via NCK machine data. If the handwheels are not directly connected to the control, additional measures are required, e.g.
  • Page 201: Connection Via Ppu (Only 828D)

    H1: Manual and handwheel travel 3.10 Start-up: Handwheels 3.10.2 Connection via PPU (only 828D) Parameter assignment Handwheels directly connected to terminal X143 of the PPU are parameterized using the following NCK machine data: Handwheel_No._in_NCK - 1 ● MD11350 $MN_HANDWHEEL_SEGMENT[< >] = 2 When directly connected to the PPU, a 2 (8xxD_HW) must always be entered as handwheel segment.
  • Page 202: Connection Via Profibus (828D)

    H1: Manual and handwheel travel 3.10 Start-up: Handwheels 3.10.3 Connection via PROFIBUS (828D) Parameter assignment For the SINUMERIK 828D, in addition to the connection of two handwheels to the PPU interface, terminal X143, a third handwheel can also be connected via a machine control panel, e.g.
  • Page 203: Connection Via Profibus (840D Sl)

    H1: Manual and handwheel travel 3.10 Start-up: Handwheels 3.10.4 Connection via PROFIBUS (840D sl) Parameter assignment The parameter assignment of handwheels connected via PROFIBUSmodules (e.g. "MCP 483" machine control table) is performed with the following NCK machine data: Handwheel_No._in_NCK - 1 ●...
  • Page 204 H1: Manual and handwheel travel 3.10 Start-up: Handwheels Handwheel number Machine data set Connection in NCK (Index) 2nd MCP, 1st handwheel in the handwheel slot 3rd MCP, 1st handwheel in the handwheel slot 4th MCP, 2nd handwheel in the handwheel slot The 4th handwheel in the NCK is not used (gap in machine data).
  • Page 205 H1: Manual and handwheel travel 3.10 Start-up: Handwheels Machine data Value Meaning 3rd handwheel in the NCK MD11350 $MN_HANDWHEEL_SEGMENT[2] Hardware segment: PROFIBUS MD11351 $MN_HANDWHEEL_MODULE[2] Reference to logical base address of the handwheel slot of the 2nd MCP MD11352 $MN_HANDWHEEL_INPUT[2] 1st handwheel in the handwheel slot 4th handwheel in the NCK MD11350 $MN_HANDWHEEL_SEGMENT[3] No handwheel parameterized...
  • Page 206: Connected Via Ethernet (Only 840D Sl)

    H1: Manual and handwheel travel 3.10 Start-up: Handwheels 3.10.5 Connected via Ethernet (only 840D sl) Parameter setting The parameters for handwheels connected via Ethernet modules, e.g. machine control panel "MCP 483C IE", "HT 8", or "HT 2", are assigned in the following NC machine data: ●...
  • Page 207 H1: Manual and handwheel travel 3.10 Start-up: Handwheels Operator component interface -> MCP1 MCP2 Handwheel interface FB1 parameters MCP1BusAdr MCP2BusAdr BHGRecGDNo Assignment of the handwheels MCP 483C IE HT 8 HT 2 Handwheel interface at the Ethernet bus (y) > 1) Numbering of the handwheel interfaces within an operator component interface 2) Assignment of the operator component to the interface via the corresponding FB1 parameter 3) Assignment of the handwheels of the respective operator components to the handwheel interfaces...
  • Page 208 H1: Manual and handwheel travel 3.10 Start-up: Handwheels Table 3- 2 FB1 parameters (excerpt) Parameter Value Remark MCPNum := 2 // Number of connected MCP // MCP1 = HT 8 MCP1In // MCP1-Parameter ... MCP1BusAdr := 39 // Via switches S1 and S2 on the connecting device // set "IP address"...
  • Page 209: Special Features Relating To Manual And Handwheel Travel

    H1: Manual and handwheel travel 3.11 Special features relating to manual and handwheel travel Stationary state detection A stationary state is detected by the Ethernet modules to which the handwheel is connected. If a handwheel does not transfer any handwheel pulses for a defined period of time, the module detects this to be a stationary state and transfers it to the NC/PLC interface: NC/PLC interface signal Value...
  • Page 210 H1: Manual and handwheel travel 3.11 Special features relating to manual and handwheel travel Application Manual movements for which transformations and frames have to be active. The geometry axes are traversed in the most recently valid coordinate system. The special features of geometry-axis manual travel are described below.
  • Page 211: Spindle Manual Travel

    H1: Manual and handwheel travel 3.11 Special features relating to manual and handwheel travel Orientation axes The maximum jerk when manually traversing orientation axes can be specified for each channel via the machine data: MD21158 $MC_JOG_JERK_ORI [] For MD21158 to take effect, the channel-specific jerk limitation for the manual traversing of orientation axes must be enabled via the following machine data: MD21159 $MC_JOG_JERK_ORI_ENABLE == TRUE Reference:...
  • Page 212 H1: Manual and handwheel travel 3.11 Special features relating to manual and handwheel travel JOG velocity The velocity used for spindle manual travel can be defined as follows: ● Using general setting data SD41200 $SN_JOG_SPIND_SET_VELO (speed of spindle in JOG mode), which is valid for all spindles ●...
  • Page 213: Monitoring Functions

    H1: Manual and handwheel travel 3.11 Special features relating to manual and handwheel travel 3.11.3 Monitoring functions Limitations The following limitations are active for manual and handwheel travel: ● Working-area limitation (axis must be referenced) ● Software limit switches 1 and 2 (axis must be referenced) ●...
  • Page 214: Other

    H1: Manual and handwheel travel 3.11 Special features relating to manual and handwheel travel Maximum velocity and acceleration The velocity and acceleration used during manual travel are defined by the startup engineer for specific axes using machine data. The control limits the values acting on the axes to the maximum velocity and acceleration specifications.
  • Page 215: Data Lists

    H1: Manual and handwheel travel 3.12 Data lists Transverse axes If a geometry axis is defined as transverse axis: MD20100 $MC_DIAMETER_AX_DEF (geometry axes with transverse axis function) and radius programming has been selected, when traversing in JOG, the following features should be carefully observed: ●...
  • Page 216: Channel-Specific Machine Data

    H1: Manual and handwheel travel 3.12 Data lists Number Identifier: $MN_ Description 11351 HANDWHEEL_MODULE[n] Handwheel module 11352 HANDWHEEL_INPUT[n] Handwheel connection 11353 HANDWHEEL_LOGIC_ADDRESS[n] Logical handwheel slot address (STEP 7) 17900 VDI_FUNCTION_MASK Function mask for VDI signals 3.12.1.2 Channel-specific machine data Number Identifier: $MC_ Description 20060...
  • Page 217: Setting Data

    H1: Manual and handwheel travel 3.12 Data lists Number Identifier: $MA_ Description 32020 JOG_VELO Conventional axis velocity 32040 JOG_REV_VELO_RAPID Revolutional feedrate in JOG mode with rapid traverse override 32050 JOG_REV_VELO Revolutional feedrate for JOG 32060 POS_AX_VELO Reset position for positioning-axis velocity 32080 HANDWH_MAX_INCR_SIZE Limitation of the selected increment size...
  • Page 218: Signals

    H1: Manual and handwheel travel 3.12 Data lists 3.12.3 Signals 3.12.3.1 Signals from NC Signal name SINUMERIK 840D sl SINUMERIK 828D Handwheel 1 is operated DB10.DBB68 DB2700.DBB12 Handwheel 2 is operated DB10.DBB69 DB2700.DBB13 Handwheel 3 is operated DB10.DBB70 Handwheel 4 is operated DB10.DBB242 Handwheel 5 is operated DB10.DBB243...
  • Page 219: Signals To Channel

    H1: Manual and handwheel travel 3.12 Data lists Signal name SINUMERIK 840D sl SINUMERIK 828D Mode group9: Active mode JOG DB11.DBX166.2 Mode group10: Active mode JOG DB11.DBX186.2 3.12.3.4 Signals to channel Signal name SINUMERIK 840D sl SINUMERIK 828D Activate DRF DB21, ...
  • Page 220: Signals From Channel

    H1: Manual and handwheel travel 3.12 Data lists Signal name SINUMERIK 840D sl SINUMERIK 828D Orientation axis 2: Traversing keys minus/plus DB21, ..DBX324.6-7 Orientation axis 2: Machine function 1 INC ... Var. INC DB21, ..DBX325.0-5 Orientation axis 2: Invert handwheel direction of rotation DB21, ...
  • Page 221: Signals To Axis/Spindle

    H1: Manual and handwheel travel 3.12 Data lists Signal name SINUMERIK 840D sl SINUMERIK 828D Orientation axis 1 Handwheel active DB21, ..DBX332.0-2 Traversing request minus/plus DB21, ..DBX332.4-5 Traversing command minus/plus DB21, ..DBX332.6-7 Handwheel direction of rotation inversion active DB21, ...
  • Page 222: System Variable

    H1: Manual and handwheel travel 3.12 Data lists Signal name SINUMERIK 840D sl SINUMERIK 828D Traversing command minus/plus DB31, ..DBX64.6-7 DB390x.DBX4.6-7 Active machine function 1 INC ... Var. INC DB31, ..DBX65.0-5 DB390x.DBX5-0-5 Position restored, measuring system 1/2 DB31, ..DBX71.4-5 DB390x.DBX11.4-5 JOG approach fixed point active DB31, ...
  • Page 223: K3: Compensations

    K3: Compensations Introduction Accuracy errors The accuracy of machine tools is impaired as a result of deviations from the ideal geometry, power transmission faults and measuring system errors. Temperature differences and mechanical forces often result in great reductions in precision when large workpieces are machined.
  • Page 224: Temperature Compensation

    K3: Compensations 4.2 Temperature compensation 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 "Diagnosis" operating area of the "Axis/Spindle Service" window. Temperature compensation 4.2.1 Description of functions...
  • Page 225 K3: Compensations 4.2 Temperature compensation Error curve characteristic If an axis position reference point P is selected, 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 increases with the distance to the reference point (corresponds to the "position-dependent component"...
  • Page 226 K3: Compensations 4.2 Temperature compensation Figure 4-1 Approximated error line for temperature compensation Activation The following conditions must be fulfilled so that the temperature compensation can be activated: 1. The compensation type is selected (MD32750, see "Commissioning (Page 227)"). 2. The parameters for the compensation type are defined (see "Commissioning (Page 227)").
  • Page 227: Commissioning

    K3: Compensations 4.2 Temperature compensation Parameter adaptation for temperature changes Since the approximated error line applies only to the instantaneous temperature value, the parameters of the error lines that are newly generated when the temperature rises or falls must be sent to the NCK again. Only in this way can expansion due to heat always be correctly compensated.
  • Page 228 K3: Compensations 4.2 Temperature compensation Temperature compensation type and activation The temperature compensation type is selected and the temperature compensation activated using the axis-specific machine data: MD32750 $MA_TEMP_COMP_TYPE (temperature compensation type) Value Meaning Associated parameters Position independent temperature compensation SD43900 Not active Active Position-dependent temperature compensation...
  • Page 229: Example

    K3: Compensations 4.2 Temperature compensation 4.2.3 Example 4.2.3.1 Commissioning the temperature compensation for the Z axis of a lathe Commissioning of temperature compensation is described below using the example of a Z axis on a lathe. Determining the error characteristic of the Z axis In order to determine the temperature-dependent error characteristic of the Z axis, proceed as follows: ●...
  • Page 230 K3: Compensations 4.2 Temperature compensation Specifying parameters The temperature compensation parameters must now be determined on the basis of the measurement results (see diagram above). Reference position P As the diagram above illustrates, there are basically two methods of parameterizing reference position P 1.
  • Page 231: Backlash Compensation

    K3: Compensations 4.3 Backlash compensation = maximum measured temperature; [degrees] = temperature coefficient at T ; [µm/1000 mm] Therefore, based on the values from the above diagram: = 23° = 42° = 270 µm/1000 mm and tanß (T) is therefore: tanβ(T) = (T - 23) [degrees] * 270 [µm/1000 mm] * 10 / (42 - 23) [degrees]...
  • Page 232 K3: Compensations 4.3 Backlash compensation Effects In the case of axes/spindles with indirect measuring systems, mechanical backlash falsifies the traversing path. For example, when the direction of movement is reversed, an axis will travel too much or too little by the amount of the backlash. Positive backlash (normal case) Negative backlash The encoder leads the machine part (e.g.
  • Page 233: Commissioning

    K3: Compensations 4.3 Backlash compensation 4.3.1.2 Commissioning Backlash The mechanical backlash is measured at high velocity with a measuring system attached to the machine table. The determined offset value is entered in the axis-specific machine data: MD32450 $MA_BACKLASH (backlash) For positive backlash (normal case), the compensation value should be entered as a positive value and for a negative backlash, as negative value.
  • Page 234: Dynamic Backlash Compensation

    K3: Compensations 4.3 Backlash compensation 4.3.2 Dynamic backlash compensation 4.3.2.1 Description of functions Dynamic backlash A dynamic backlash can occur for machine types with sliding guides. Depending on the axial dynamic response (velocity, jerk, etc.) used to approach an end position, the machine slide reaches the programmed end position or stops earlier because of the static friction.
  • Page 235: Commissioning

    K3: Compensations 4.4 Interpolatory compensation 4.3.2.2 Commissioning Compensation value for the dynamic backlash compensation Once the mechanical backlash at highspeed has been determined by measurement and compensated using MD32450 $MA_BACKLASH (see "Commissioning (Page 233)" of the mechanical backlash compensation), the same measurement action is repeated for slower velocities.
  • Page 236 K3: Compensations 4.4 Interpolatory compensation Terms Important terms for "interpolatory compensation" are: ● Compensation value The difference between the axis position measured by the position actual-value encoder and the required programmed axis position (= axis position of the ideal machine). The compensation value is often also referred to as the correction value.
  • Page 237 K3: Compensations 4.4 Interpolatory compensation Note Compensation tables can only be loaded if the corresponding compensation function is not active: • MD32700 $MA_ENC_COMP_ENABLE (interpolatory compensation) = 0 • MD32710 $MA_CEC_ENABLE (enable sag compensation) = 0 These compensation values are not lost when the control is switched off because they are stored in the static user memory.
  • Page 238: Compensation Of Leadscrew Errors And Measuring System Errors

    K3: Compensations 4.4 Interpolatory compensation Compensation value at reference point The compensation table should be structured such that the compensation value at the reference point is "zero". 4.4.2 Compensation of leadscrew errors and measuring system errors 4.4.2.1 Measuring system error compensation (MSEC) Leadscrew and measuring system errors The measuring principle of "indirect measurement"...
  • Page 239: Commissioning

    K3: Compensations 4.4 Interpolatory compensation Preconditions / activation The MSEC is only active until the following pre-conditions: ● The compensation values are stored in the static user memory and are active (after POWER ON). ● The function has been activated for the relevant machine axis: MD32700 $MA_ENC_COMP_ENABLE [] = 1 with: ...
  • Page 240 K3: Compensations 4.4 Interpolatory compensation Measuring system-specific parameters of the compensation table The position-related compensations as well as additional table parameters should be saved in the form of system variables for each machine axis as well as for each measuring system (if a 2nd measuring system is being used): ●...
  • Page 241 K3: Compensations 4.4 Interpolatory compensation ● $AA_ENC_COMP_IS_MODULO[,] (compensation with modulo function) System variable to activate/deactivate the compensation with modulo function: – $AA_ENC_COMP_IS_MODULO[,] = 0: Compensation without modulo function – $AA_ENC_COMP_IS_MODULO[,] = 1: Compensation with modulo function When compensation with modulo function is activated, the compensation table is repeated cyclically, i.e.
  • Page 242: Example

    K3: Compensations 4.4 Interpolatory compensation 4.4.2.3 Example The following example shows compensation value inputs for machine axis X1. Program code Comment %_N_AX_EEC_INI CHANDATA(1) $AA_ENC_COMP[0,0,X1]=0.003 ; 1st compensation value (interpolation point 0): +3μm $AA_ENC_COMP[0,1,X1]=0.01 ; 2nd compensation value (interpolation point 1): +10μm $AA_ENC_COMP[0,2,X1]=0.012 ;...
  • Page 243: Compensation Of Sag And Angularity Errors

    K3: Compensations 4.4 Interpolatory compensation 4.4.3 Compensation of sag and angularity errors 4.4.3.1 Description of functions 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. Also large workpieces (e.g.
  • Page 244 K3: Compensations 4.4 Interpolatory compensation 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 compensation value in the Z1 axis in interpolation cycles performing linear interpolation for positions between the interpolation points.
  • Page 245 K3: Compensations 4.4 Interpolatory compensation 8. Every compensation table can be multiplied with any other compensation table in pairs (i.e. also with itself) using the "table multiplication" function. A system variable is used to link the multiplication. The product is added to the total compensation value of the compensation axis.
  • Page 246 K3: Compensations 4.4 Interpolatory compensation Figure 4-6 Generation of compensation value for sag compensation Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 247: Commissioning

    K3: Compensations 4.4 Interpolatory compensation Complex compensation Since it is possible to use the position of an axis as the input quantity (base 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 possible to implement sophisticated and complex beam sag and angularity error compensation systems.
  • Page 248 K3: Compensations 4.4 Interpolatory compensation Table parameters The position-related compensation values as well as additional table parameters should be saved for every compensation relationship in the form of system variables: ● $AN_CEC[,] (compensation value for interpolation point of compensation table []) ...
  • Page 249 K3: Compensations 4.4 Interpolatory compensation ● $AN_CEC_DIRECTION[] (direction-dependent compensation) This system variable is used to set whether the compensation table [] should apply to both traversing directions of the basic axis or only either the positive or negative direction: – $AN_CEC_DIRECTION[] = 0: Table applies to both directions of travel of the basic axis –...
  • Page 250 K3: Compensations 4.4 Interpolatory compensation Example: MD30300 $MA_IS_ROT_AX[AX1]=1 ; rotary axis MD30310 $MA_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 System of units Table parameters containing position information are automatically converted when the system of units is changed (change from MD10240 $MN_SCALING_SYSTEM_IS_METRIC).
  • Page 251: Examples

    K3: Compensations 4.4 Interpolatory compensation 4.4.3.3 Examples Compensation table for sag compensation of the Y1 axis The following example shows the compensation table for sag compensation of the Y1 axis. Depending on the position of the Y1 axis, a compensation value is applied to the Z1 axis. The 1st compensation table with index = 0 is used for this.
  • Page 252 K3: Compensations 4.4 Interpolatory compensation Application for table multiplication The following example for the compensation of machine foundation sagging illustrates an application of table multiplication. Figure 4-7 Compensation of sag in a foundation On large machines, sagging of the foundation can cause inclination of the whole machine. For the boring mill shown above as an example, the compensation of the X1 axis depends on the position of the X1 axis itself, since this determines the angle of inclination β, and on the height Z1 of the drill.
  • Page 253 K3: Compensations 4.4 Interpolatory compensation Input of compensation values in a grid structure The compensation values of the Z axis sag on flat bed machines are often measured in practice at various points as a function of the X and Y coordinates. Under these preconditions, it is useful to enter the measured compensation values according to a grid- type distribution.
  • Page 254 K3: Compensations 4.4 Interpolatory compensation Figure 4-9 Compensation values of z axis with chessboard-like distribution of x-y plane The application example can be realized with the following part program code: $MA_CEC_ENABLE[Z1]= FALSE ; Deactivate compensation ; by setting to FALSE. ;...
  • Page 255 K3: Compensations 4.4 Interpolatory compensation ;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...
  • Page 256 K3: Compensations 4.4 Interpolatory compensation ;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 ;Values of f tables with index [t1] are multiplied by values in g tables ;by 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...
  • Page 257 K3: Compensations 4.4 Interpolatory compensation ;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 ;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 do not take effect until ;a Power On ;Define basic axis Y1 $AN_CEC_INPUT_AXIS[4]=(Y1) $AN_CEC_INPUT_AXIS[5]=(Y1)
  • Page 258 K3: Compensations 4.4 Interpolatory compensation ;Carry out a program test to check whether the ;compensation is effective G01 F1000 X0 X0 Z0 G90 R1=0 R2=0 LOOP_Y: LOOP_X: STOPRE X=R1 Y=R2 ; 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...
  • Page 259: Direction-Dependent Leadscrew Error Compensation

    K3: Compensations 4.4 Interpolatory compensation Explanation The compensation values cannot be entered directly as a 2-dimensional grid. 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.
  • Page 260: Commissioning

    K3: Compensations 4.4 Interpolatory compensation Direction-dependent leadscrew error compensation For the "direction-dependent leadscrew error compensation" ("direction-dependent LEC" or also "Bidirectional LEC") , two compensation tables are used for each axis. One compensation table for the positive and one compensation table for the negative traversing direction.
  • Page 261 K3: Compensations 4.4 Interpolatory compensation Carrying out commissioning 1. Specify the number of compensation interpolation points (also see Section "Compensation for droop and angularity error: Commissioning (Page 247)") Each axis should be assigned to one compensation table each for the positive and negative traversing directions.
  • Page 262 K3: Compensations 4.4 Interpolatory compensation 4. Execute the part program with compensation values in the control. AUTOMATIC mode > select program > NC start Note Each time before reading-in the compensation tables, the following parameters should always be set to 0 and then to activate, always be set to 1: MD32710 $MA_CEC_ENABLE[] (enable sag compensation) = 0 →...
  • Page 263 K3: Compensations 4.4 Interpolatory compensation Table parameters The position-related compensations for the particular direction as well as additional table parameters in the form of system variables should be saved in the compensation table: ● $AN_CEC[,] (compensation value for interpolation point of compensation table []) ●...
  • Page 264: Example

    K3: Compensations 4.4 Interpolatory compensation 4.4.4.3 Example The direction-dependent compensation tables of the X axis are shown in detail for a three- axis machine in the fallowing example: Configuring Number of compensation interpolation points: MD18342 $MN_MM_CEC_MAX_POINTS[0] = 11 (Table 1: Axis X, positive traversing direction) MD18342 $MN_MM_CEC_MAX_POINTS[1] = 11 (Table 2: Axis X, negative traversing direction)
  • Page 265 K3: Compensations 4.4 Interpolatory compensation Measurement Setpoint Deviation Checking measurement position Position Comp. No. Measurement Direction + Direction - Direction + Direction - position [mm] [mm] [mm] [mm] [mm] $AC_CEC_MIN[] -585 -585 0.0000 0.0020 0.0000 -0.0008 -527 0.0010 0.0017 -0.0005 -0.0001 -469 0.0040...
  • Page 266 K3: Compensations 4.4 Interpolatory compensation Programming The following program "BI_SSFK_TAB_AX1_X.MPF" includes the value assignments for the parameters of the two compensation tables (positive and negative traversing direction) of the X axis: ;direction-dependent LEC ;1st axis MX1 ;Table 1 - positive traversing direction ;Table 2 - negative traversing direction ;-------------------------------------------------------------------------------------- CHANDATA(1)
  • Page 267: Extension Of The Sag Compensation With Ncu Link - Only 840D Sl

    K3: Compensations 4.4 Interpolatory compensation $AN_CEC[1,8]=0.0026 ;(interpolation point 8) $AN_CEC[1,9]=0.000 ;(interpolation point 9) $AN_CEC[1,10]=-0.0012 ;(interpolation point 10) $AN_CEC_INPUT_AXIS[1]=(AX1) ;basic axis $AN_CEC_OUTPUT_AXIS[1]=(AX1) ;compensation axis $AN_CEC_STEP[1]=58. ;interpolation point distance $AN_CEC_MIN[1]=-585.0 ;compensation starts $AN_CEC_MAX[1]=-5.0 ;compensation ends $AN_CEC_DIRECTION[1]=-1 ;Table applies for negative traversing directions $AN_CEC_MULT_BY_TABLE[1]=0 ;no multiplication (not relevant here) $AN_CEC_IS_MODULO[1]=0...
  • Page 268 K3: Compensations 4.4 Interpolatory compensation Function The parameterization of the sag compensation function is done by setting system variables of the form: $AN_CEC ... These system variables are normally set via a part program that processes the NCK in a certain channel.
  • Page 269 K3: Compensations 4.4 Interpolatory compensation The following axes are allowed for NCU1 as input or output axes in Configuration 1: NC1_AX1, NC1_AX3, NC1_AX4, NC1_AX5, NC2_AX2, NC2_AX6 The data backup from the NCK always delivers the compensation data from the "machine axis name"...
  • Page 270 K3: Compensations 4.4 Interpolatory compensation Axis container The axis container is a grouping of similar axes. An axis from the group can be assigned to a channel axis. The assignment is variable, so that the axis in the channel always gets a new axis from the group assigned to it in the course of time.
  • Page 271 K3: Compensations 4.4 Interpolatory compensation Configuration example The following figures (Configuration 1, Configuration 2 and Configuration 3) illustrate the axis configurations of an NCU link that is assembled from two NCUs. The two channels CHAN-1 and CHAN-2 of NCU-1 are displayed in Configuration 1. Here, the channel axis names that are defined via the machine data $MC_AXCONF_CHANAX_NAME_TAB are entered.
  • Page 272 K3: Compensations 4.4 Interpolatory compensation Machine data of Configuration 1 ; ########## NCU1 ########## $MN_NCU_LINKNO = 1 $MN_MM_NCU_LINK_MASK = 1 $MN_MM_LINK_NUM_OF_MODULES = 2 $MN_MM_SERVO_FIFO_SIZE = 3 $MN_ASSIGN_CHAN_TO_MODE_GROUP[1]=1 $MN_AXCONF_LOGIC_MACHAX_TAB[0] = "NC1_AX1" $MN_AXCONF_LOGIC_MACHAX_TAB[1] = "NC1_AX3" $MN_AXCONF_LOGIC_MACHAX_TAB[2] = "NC2_AX2" $MN_AXCONF_LOGIC_MACHAX_TAB[3] = "NC1_AX4" $MN_AXCONF_LOGIC_MACHAX_TAB[4] = "NC1_AX5" $MN_AXCONF_LOGIC_MACHAX_TAB[5] = "NC2_AX6"...
  • Page 273 K3: Compensations 4.4 Interpolatory compensation $MC_AXCONF_MACHAX_USED[5]=0 $MC_AXCONF_CHANAX_NAME_TAB[0] = "XX" $MC_AXCONF_CHANAX_NAME_TAB[1] = "YY" $MC_AXCONF_CHANAX_NAME_TAB[2] = "ZZ" ; ########## NCU-2 ########## $MN_NCU_LINKNO = 2 $MN_MM_NCU_LINK_MASK = 1 $MN_MM_LINK_NUM_OF_MODULES = 2 $MN_MM_SERVO_FIFO_SIZE = 3 $MN_AXCONF_LOGIC_MACHAX_TAB[0] = "NC2_AX1" $MN_AXCONF_LOGIC_MACHAX_TAB[1] = "NC1_AX6" $MN_AXCONF_LOGIC_MACHAX_TAB[2] = "NC2_AX3" $MN_AXCONF_LOGIC_MACHAX_TAB[3] = "NC2_AX4"...
  • Page 274 K3: Compensations 4.4 Interpolatory compensation Figure 4-11 Configuration 2: NCU link with axis container in output state Figure 4-12 Configuration 3: NCU link with axis container in rotary state Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 275 K3: Compensations 4.4 Interpolatory compensation Machine data of Configuration 2 ; ########## NCU1 ########## $MN_NCU_LINKNO = 1 $MN_MM_NCU_LINK_MASK = 1 $MN_MM_LINK_NUM_OF_MODULES = 2 $MN_MM_SERVO_FIFO_SIZE = 3 $MN_ASSIGN_CHAN_TO_MODE_GROUP[1]=1 $MN_AXCONF_LOGIC_MACHAX_TAB[0] = "NC1_AX1" $MN_AXCONF_LOGIC_MACHAX_TAB[1] = "NC1_AX3" $MN_AXCONF_LOGIC_MACHAX_TAB[2] = "NC2_AX2" $MN_AXCONF_LOGIC_MACHAX_TAB[3] = "NC1_AX4" $MN_AXCONF_LOGIC_MACHAX_TAB[4] = "CT1_SL3" $MN_AXCONF_LOGIC_MACHAX_TAB[5] = "CT1_SL4"...
  • Page 276 K3: Compensations 4.4 Interpolatory compensation CHANDATA(2) $MC_REFP_NC_START_LOCK=0 $MC_AXCONF_MACHAX_USED[0]=2 $MC_AXCONF_MACHAX_USED[1]=6 $MC_AXCONF_MACHAX_USED[2]=3 $MC_AXCONF_MACHAX_USED[3]=0 $MC_AXCONF_MACHAX_USED[4]=0 $MC_AXCONF_MACHAX_USED[5]=0 $MC_AXCONF_CHANAX_NAME_TAB[0] = "XX" $MC_AXCONF_CHANAX_NAME_TAB[1] = "YY" $MC_AXCONF_CHANAX_NAME_TAB[2] = "ZZ" ; ########## NCU-2 ########## $MN_NCU_LINKNO = 2 $MN_MM_NCU_LINK_MASK = 1 $MN_MM_LINK_NUM_OF_MODULES = 2 $MN_MM_SERVO_FIFO_SIZE = 3 $MN_AXCONF_LOGIC_MACHAX_TAB[0] = "CT1_SL1" $MN_AXCONF_LOGIC_MACHAX_TAB[1] = "CT1_SL2"...
  • Page 277: Special Features Of Interpolatory Compensation

    K3: Compensations 4.4 Interpolatory compensation 4.4.6 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.
  • Page 278: Dynamic Feedforward Control (Following Error Compensation)

    K3: Compensations 4.5 Dynamic feedforward control (following error compensation) Setting servo enables As a result of the compensation relationship, a traversing movement by the 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).
  • Page 279 K3: Compensations 4.5 Dynamic feedforward control (following error compensation) Activation The feedforward control method is selected and activated using the machine data: MD32620 $MA_FFW_MODE (feedforward control mode) Value Meaning No feedforward control Speed feedforward control with PT1 balancing Torque feedforward control with PT1 balancing Speed feedforward control with Tt balancing Torque feedforward control with Tt balancing Activation/deactivation in part program...
  • Page 280: Speed Feedforward Control

    K3: Compensations 4.5 Dynamic feedforward control (following error compensation) The feedforward control should only be activated or deactivated while the axis/spindle is stationary in the axis mode, in order to prevent jerky motion. Hence the switchover is delayed automatically up to the next standstill through block search stop. Note A preprocessing stop has no effect for command or PLC axes traversing asynchronously to the part program processing.
  • Page 281 K3: Compensations 4.5 Dynamic feedforward control (following error compensation) Feedforward control factor for speed feedforward control (MD32610) The additional velocity setpoint can be weighted using a factor: MD32610 $MA_VELO_FFW_WEIGHT Range of values: 0 ... 1 "0" means: no feedforward control. As standard, the factor has a value of 1 (≙ 100%). The factor should remain set at 100%, as this value is the optimum setting for an optimally set control loop for the axis/spindle as well as a precisely determined equivalent time constant of the speed control loop.
  • Page 282: Torque Feedforward Control

    K3: Compensations 4.5 Dynamic feedforward control (following error compensation) 4.5.3 Torque feedforward control Function In the case of torque feedforward control, an additional current setpoint proportional to the torque is applied directly to the current controller input. This value is formed using the acceleration and moment of inertia.
  • Page 283: Dynamic Response Adaptation

    K3: Compensations 4.5 Dynamic feedforward control (following error compensation) Fine adjustment The torque feedforward control for the particular axis/spindle can be optimized by making slight changes (fine tuning) to the values in MD32800 and MD32650. To make a check, the following error should be recorded via the trace functionality. In addition to traversing at a constant velocity, the following error should be monitored especially when the axis/spindle accelerates.
  • Page 284: Forward Feed Control For Command- And Plc Axes

    K3: Compensations 4.5 Dynamic feedforward control (following error compensation) This means that the following values are obtained for the time constant of the dynamic response adaptation MD32910: ● Axis 1: 2 ms ● Axis 2: 0 ms ● Axis 3: 3 ms Activation (MD32900) The dynamic response adaptation is only active if the following machine data is set: MD32900 $MA_DYN_MATCH_ENABLE= 1...
  • Page 285 K3: Compensations 4.5 Dynamic feedforward control (following error compensation) Commissioning We recommend the following procedure when checking the feedforward control for command and PLC axes: 1. Check the stoppage velocity in MD36060. 2. Check the existing following error of the axis in stoppage condition. 3.
  • Page 286: Secondary Conditions

    K3: Compensations 4.5 Dynamic feedforward control (following error compensation) 4.5.6 Secondary conditions Axes that are interpolating axes with one another Also for axes that interpolate with one another, the feedforward control parameter should be optimally set for each axis, i.e. also several axes that are interpolating with one another can have different feedforward control parameters.
  • Page 287: Friction Compensation (Quadrant Error Compensation)

    K3: Compensations 4.6 Friction compensation (quadrant error compensation) Friction compensation (quadrant error compensation) 4.6.1 General function description In addition to the mass inertia and the machining forces, the frictional forces in the gearing and guideways of the machine influence the behavior of a machine axis. During the acceleration of an axis from standstill, especially the transition from static friction to the significantly smaller sliding friction has a negative affect with regard to the contour accuracy.
  • Page 288: Supplementary Conditions

    K3: Compensations 4.6 Friction compensation (quadrant error compensation) 4.6.2 Supplementary conditions Note Switch off setpoint-related compensations The following compensations affect the position setpoint and must be switched off before the measurement of the axes involved in the circularity test: • Sag and angularity compensation (CEC): MD32710 $MA_CEC_ENABLE[ ...
  • Page 289: Commissioning

    K3: Compensations 4.6 Friction compensation (quadrant error compensation) 4.6.3.2 commissioning Circularity test It is recommended that the circularity test be used for the commissioning of the friction compensation with constant injected value, as described above. The commissioning sequence is divided into the following steps: 1.
  • Page 290 K3: Compensations 4.6 Friction compensation (quadrant error compensation) Circularity test with friction compensation and initial parameter values It is recommended that a relatively small compensation value, as well as a time constant of just a few position control cycles, be set as initial parameter values, e.g.: ●...
  • Page 291 K3: Compensations 4.6 Friction compensation (quadrant error compensation) Compensation value too large Too large a compensation value (MD32520) in the circularity test is indicated by overcompensation of the contour deviations at the quadrant transitions. Figure 4-15 Compensation value set too large Time constant too small Too small a time constant (MD32540) in the circularity test is indicated by short-time compensation of the contour deviations at the quadrant transitions which immediately...
  • Page 292 K3: Compensations 4.6 Friction compensation (quadrant error compensation) Time constant too large Too large a time constant (MD32540) in the circularity test compensates the contour deviations at the quadrant transitions. (Requirement: The optimum compensation value has already been determined.) However, with too large a time constant, the compensation value applies too long and results in an overcompensation at the next circular contour.
  • Page 293 K3: Compensations 4.6 Friction compensation (quadrant error compensation) Optimization of the compensation parameters To optimize the compensation parameters, the circularity test must be repeated several times and the values changed in small increments. It is recommended that the optimization be performed with different values for radius and path velocity that are typical for the machining operations performed on the machine.
  • Page 294: Friction Compensation With Acceleration-Dependent Compensation Value

    K3: Compensations 4.6 Friction compensation (quadrant error compensation) 4.6.4 Friction compensation with acceleration-dependent compensation value 4.6.4.1 Description of functions If the compensation value is highly dependent on the acceleration, normally a smaller compensation value must be injected for optimum compensation with larger accelerations than for smaller accelerations.
  • Page 295: Function Activation

    K3: Compensations 4.6 Friction compensation (quadrant error compensation) 4.6.4.2 Function activation Enable The general enabling of the friction compensation is via: MD32490 $MA_FRICT_COMP_MODE[ ] = 1 Activation The activation of the friction compensation with adaptation characteristic is performed via: ●...
  • Page 296: Compensation Value For Short Traversing Blocks

    K3: Compensations 4.6 Friction compensation (quadrant error compensation) Compensation values The compensation values Δn , Δn determined as characteristic parameters must be entered in the following machine data: ● MD32520 $MA_FRICT_COMP_CONST_MAX (maximum compensation value) ● MD32530 $MA_FRICT_COMP_CONST_MIN (minimum compensation value) Note If satisfactory results cannot be obtained for very small path velocities, the computational resolution may have to be increased:...
  • Page 297: Measures For Hanging (Suspended Axes)

    K3: Compensations 4.7 Measures for hanging (suspended axes) Measures for hanging (suspended axes) 4.7.1 Electronic counterweight Axis without counterweight For axes that have a weight load without counterweight, then after the brake is released, the hanging (suspended) axis drops and the following response is obtained: Figure 4-19 Drop of a hanging axis without counterweight Extended Functions...
  • Page 298 K3: Compensations 4.7 Measures for hanging (suspended axes) "Electronic counterweight" function A hanging (suspended) axis can almost be completely prevented from dropping (sagging) using the "electronic counterweight" function. The electronic counterweight prevents axes with a weight load from sagging when the closed-loop control is switched on.
  • Page 299: Reboot Delay

    K3: Compensations 4.7 Measures for hanging (suspended axes) 4.7.2 Reboot delay Side-effect of a reboot from the user interface The activation of the machine data, etc., from the user interface requires that the NCK is booted. This can cause hanging axes to drop somewhat. The "reboot delay" function can be used to avoid this.
  • Page 300 K3: Compensations 4.7 Measures for hanging (suspended axes) ● The following NC/PLC interface signals remain at 1: DB10 DBX108.7 (NC ready) By using the machine data: MD11410 $MN_SUPPRESS_ALARM_MASK (mask for suppressing special alarms) (BIT20) the alarm 2900 is suppressed, however, the NCK triggers the same reactions. As alarm 2900 deactivates the axis position control, this alarm must be configured to initiate that the mechanical brakes are closed by the PLC.
  • Page 301: Data Lists

    K3: Compensations 4.8 Data lists Data lists 4.8.1 Machine data 4.8.1.1 General machine data Number Identifier: $MN_ Description 10050 SYSCLOCK_CYCLE_TIME Basic system clock cycle 10070 IPO_SYSCLOCK_TIME_RATIO Factor for interpolator clock cycle 10082 CTRLOUT_LEAD_TIME Shift of setpoint transfer time 10083 CTRLOUT_LEAD_TIME_MAX Maximum permissible setting for shift of setpoint transfer time 10088...
  • Page 302: Setting Data

    K3: Compensations 4.8 Data lists Number Identifier: $MA_ Description 32560 FRICT_COMP_ACCEL2 Adaptation acceleration value 2 32570 FRICT_COMP_ACCEL3 Adaptation acceleration value 3 32580 FRICT_COMP_INC_FACTOR Weighting factor for friction compensation value for short traversing motion 32610 VELO_FFW_WEIGHT Feedforward control factor for velocity/speed feedforward control 32620 FFW_MODE...
  • Page 303: Axis/Spindle-Specific Setting Data

    K3: Compensations 4.8 Data lists 4.8.2.2 Axis/spindle-specific setting data Number Identifier: $SA_ Description 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 4.8.3 Signals 4.8.3.1 Signals from NC Signal name SINUMERIK 840D sl SINUMERIK 828D...
  • Page 304: Signals From Axis/Spindle

    K3: Compensations 4.8 Data lists 4.8.3.5 Signals from axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D Referenced/synchronized 1 DB31, ..DBX60.4 DB390x.DBX0.4 Referenced/synchronized 2 DB31, ..DBX60.5 DB390x.DBX0.5 Axis ready DB31, ..DBX61.2 DB390x.DBX1.2 Dynamic backlash compensation active DB31, ..DBX102.0 DB390x.DBX5006.0 Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 305: K5: Mode Groups, Channels, Axis Interchange

    K5: Mode groups, channels, axis interchange Brief description Mode group A mode group is a collection of machine axes, spindles and channels which are programmed to form a unit. In principle, a single mode group equates to an independent NC control (with several channels).
  • Page 306: Mode Groups - Only 840D Sl

    K5: Mode groups, channels, axis interchange 5.2 Mode groups - only 840D sl Axis/spindle interchange After control system power ON, an axis/spindle is assigned to a specific channel and can only be utilized in the channel to which it is assigned. With the function "Axis/spindle interchange"...
  • Page 307: Channels - Only 840D Sl

    K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl example On large machine tools (machining centers), it may be necessary for a part 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.
  • Page 308: Channel Synchronization (Program Coordination)

    K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl 5.3.1 Channel synchronization (program coordination) Function For example, for double-slide machining or real-time actions, the possibility for the synchronization of the machining between channels must be present. The channels affected shall perform certain processing procedures time-matched.
  • Page 309 K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl Statement Meaning WAITE (, , ...) Waits for the end of program of the specified channels (current channel not specified). WAITMC (, , , ...) Conditional wait in path controlled operation for the specified wait marker from the specified channels.
  • Page 310 K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl Program code Comment ; Additional machining in channel 1. N200 WAITE(2) ; Wait for the end of program of channel 2 N201 M30 ; End of program of channel 1, total end. Channel 2: The INIT command (see N10 in _N_MPF100_MPF) selects the _N_MPF200_MPF program for execution in channel 2.
  • Page 311: Channel Synchronization: Conditional Wait In Path Controlled Operation

    K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl 5.3.2 Channel synchronization: Conditional wait in path controlled operation Function For the conditional wait with WAITMC, deceleration and waiting is made only when not all channels to be coordinated have set their marker numbers for a synchronization. The instants in time for generating wait marks and the conditional wait calls are decoupled.
  • Page 312 K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl If the wait marker for a channel to be synchronized is missing, braking will be started. During braking, a check is made in each interpolation cycle whether the still missing wait markers for the channels to be synchronized have arrived in the meantime.
  • Page 313 K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl Example: Conditional wait in path controlled operation The example is schematic and shows only those commands that are relevant to the synchronization process. Channel 1: Program code Comment %100 N10 INIT(2, "_N_200_MPF","n") ;...
  • Page 314 K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl Figure 5-4 Conditional wait in path controlled operation with three involved channels (schematic) Example: WAITMC and read-in disable M555 is output in channel 3 while the axis is traversing and generates a read-in disabled (RID).
  • Page 315: Running-In Channel-By-Channel

    K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl Channel 2: Program code Comment N112 G18 G64 X200 Z200 F567 ; Machining in channel 2. N120 WAITMC(1,2,3) ; Conditional wait for marker 1 from channels 2 and 3. ;...
  • Page 316 K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl Sequence Multi-channel systems are either started at the same time or staggered in time, channel for channel. As an alternative, the PLC can start a channel and its part program initializes and starts the channels.
  • Page 317 K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl Example: A system comprises a main spindle and counterspindle. Two slides can operate on both the main spindle and counterspindle. Each slide is controlled from a separate channel. The main spindle is in channel 1, the counterspindle in channel 2.
  • Page 318 K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl Boundary conditions Axis replacement The function "axis interchange" allows that an axis/spindle is known in several channels and can be programmed from this alternating (see Section "Axis/spindle replacement (Page 320)").
  • Page 319 K5: Mode groups, channels, axis interchange 5.3 Channels - only 840D sl 5. SERUPRO at the interruption location of all 3 channels. 6. Search destination has been reached in all 3 channels. 7. Start all 3 channels. 8. Channels 1 and 3 are now again in "program test" and "channel-by-channel running-in" is continued.
  • Page 320: Axis/Spindle Replacement

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement Axis/spindle replacement 5.4.1 Introduction General information An axis/a spindle is permanently assigned to a specific channel via machine data. The axis/spindle can be used in this channel only. Definition With the function "Axis or spindle replacement" it is possible to enable an axis or a spindle and to allocate it to another channel, that means to replace the axis/spindle.
  • Page 321 K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement 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 part program: ●...
  • Page 322: Example Of An Axis Replacement

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement Example of an axis replacement between channels 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.
  • Page 323: Axis Replacement Options

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement Population of the axis-specific machine data: MD30550 $MA_AXCONF_ASSIGN_MASTER_CHAN[AX2]=1 5.4.3 Axis replacement options One or more axes/spindles can be activated for replacement between channels by the part program or by motion-synchronous actions. An axis/spindle replacement can also be requested and released from the PLC via the VDI interface.
  • Page 324: Replacement Behavior Nc Program

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement ● Geometry axis with rotated frame and axis replacement in JOG mode via machine data MD32074 $MA_FRAME_OR_CORRPOS_NOTALLOWED can be activated. ● Axis replacement via synchronized actions GET(axis), RELEASE(axis), AXTOCHAN, $AA_AXCHANGE_TYP(axis). 5.4.4 Replacement behavior NC program Possible transitions The following diagram shows which axis replacement possibilities are available.
  • Page 325: Transition The Axis Into The Neutral State (Release)

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement 5.4.5 Transition the axis into the neutral state (RELEASE) Function The predefined procedure is used to bring an axis/spindle into the "Neutral axis" RELEASE() state. Syntax RELEASE(, SPI()[, ...]) Meaning Axis/spindle brought into the "Neutral axis" state RELEASE Supplementary condition: Must be alone in the block.
  • Page 326: Transferring An Axis Or Spindle Into The Part Program (Get, Getd)

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement 5.4.6 Transferring an axis or spindle into the part program (GET, GETD) Options The release time and the behavior of an axis or spindle replacement is influenced in the part program as follows: ●...
  • Page 327: Automatic Axis Replacement

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement With the GETD command With GETD (GET Directly) an axis is fetched directly from another channel. 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.
  • Page 328 K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement Automatic GETD Note If an automatic GETD is set, the following must be observed: • Channels could mutually influence each other. (REORG, when axis is removed.) • With simultaneous access of several channels to an axis it is not known which channel will have the axis at the end.
  • Page 329: Axis Replacement Via Plc

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement 5.4.8 Axis replacement via PLC The PLC can request and traverse an axis at any time and in any operating mode. The PLC can change an axis from one channel into the other channel (only for 840D sl). TYPE display The type of an axis can be determined at any time via an interface byte (PLC-axis, channel axis, neutral axis).
  • Page 330 K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement Figure 5-6 Changing an axis from K1 to K2 via parts program TYPE input In principle, the PLC must set the signal "Request new type". It is deleted again after change. Also for a channel interchange with GET and RELEASE (only 840D sl). Controlling PLC axes/spindles for 840D sl PLC axes and PLC spindles are traversed using function block FC18 in the basic PLC program...
  • Page 331 K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement Examples The sequence of NC/PLC interface signals to change an NC axis to a PLC axis and to transition an NC axis into a neutral axis by the PLC are shown in the following diagrams. Figure 5-7 Changing an NC axis to a PLC axis Figure 5-8...
  • Page 332: Set Axis Replacement Behavior Variable

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement 5.4.9 Set axis replacement behavior variable. The axis is replaced in the currently enabled channel and, depending on the respective axis type, the axis replacement behavior can be influenced via machine data MD10722 $MN_AXCHANGE_MASK: Table 5- 2 Time of release of axes or spindles during replacement...
  • Page 333: Axis Interchange Via Axis Container Rotation

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement 5.4.10 Axis interchange via axis container rotation Enabling axis container rotation When an axis container rotation is enabled, all container axes that can be allocated to a channel are allocated to this channel using implicitly generated .
  • Page 334 K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement The following states of a Spindle in speed mode are checked: ● Spindle mode: Speed mode ● Spindle speed S ● Direction of rotation M3, M4 ● Gear stage M40, M41, M42, M43, M44, M45 ●...
  • Page 335: Axis Exclusively Controlled From The Plc

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement 5.4.12 Axis exclusively controlled from the PLC Function After the control boots, the axis is in the "neutral axis" state. The PLC controls it. To traverse the axis as competing positioning axis (from the PLC via function block FC18), the axis must first be explicitly requested from the PLC.
  • Page 336: Axis Permanently Assigned To The Plc

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement 5.4.13 Axis permanently assigned to the PLC Function After the control has booted, the axis is in the "neutral axis" state and is controlled from the NC channel. To traverse the axis as competing positioning axis (from the PLC via function block FC18), the axis does not have to be explicitly requested from the PLC.
  • Page 337: Geometry Axis In Rotated Frame And Axis Replacement

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement Possible traversing functions The following traversing functions are possible for an axis permanently assigned to the PLC: 1. Traversing in the JOG mode using the traversing keys and handwheel 2. Referencing the axis 3.
  • Page 338: Axis Replacement From Synchronized Actions

    K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement 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 grouping become neutral axes.
  • Page 339 K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement Current state and interpolation right of the axis With which axis type and interpolation right a possible axis replacement is to be performed, can be deducted from the system variable $AA_AXCHANGE_TYP[axis]. 0: The axis is assigned to the NC program 1: Axis assigned to PLC or active as command axis or oscillating axis 2: Another channel has the interpolation right.
  • Page 340 K5: Mode groups, channels, axis interchange 5.4 Axis/spindle replacement State transitions GET, RELEASE from synchronous actions and when GET is completed Figure 5-9 Transitions from synchronized actions For more information, please refer to: References: Function Manual, Synchronized Actions; Section: Actions in synchronized actions Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 341: Axis Interchange For Leading Axes (Gantry)

    K5: Mode groups, channels, axis interchange 5.5 Marginal conditions 5.4.16 Axis interchange for leading axes (gantry) Function A closed gantry grouping is treated regarding its axes always as a unit regarding axis interchange. This is the reason why for an axis interchange of the leading axis, an axis interchange is simultaneously made for all synchronous axes of the gantry grouping.
  • Page 342 K5: Mode groups, channels, axis interchange 5.5 Marginal conditions Channels Up to 10 channels are available for SINUMERIK 840D sl. Only 1 channel is available for SINUMERIK 828D. Axis/spindle interchange For SINUMERIK 828D, an axis/spindle interchange is not possible between channels. Change to the channel axis If an axis is changed from PLC axis, neutral axis or axis in another channel to the axis type channel axis, a synchronization must take place.
  • Page 343: Data Lists

    K5: Mode groups, channels, axis interchange 5.6 Data lists Data lists 5.6.1 Machine data 5.6.1.1 General machine data Number Identifier: $MN_ Description 10010 ASSIGN_CHAN_TO_MODE_GROUP[n] Channel valid in mode group [Channel No.]: 0, 1 10722 AXCHANGE_MASK Parameterization of the axis replacement response 5.6.1.2 Channel-specific machine data Basic machine data of channel...
  • Page 344 K5: Mode groups, channels, axis interchange 5.6 Data lists Number Identifier: $MC_ Description 20230 CUTCOM_CURVE_INSERT_LIMIT Maximum angle for intersection calculation with tool radius compensation 20240 CUTCOM_MAXNUM_CHECK_BLOCKS Blocks for predictive contour calculation with tool radius compensation 20250 CUTCOM_MAXNUM_DUMMY_BLOCKS Max. no. of dummy blocks with no traversing movements with TRC 20270 CUTTING_EDGE_DEFAULT...
  • Page 345: Axis/Spindlespecific Machine Data

    K5: Mode groups, channels, axis interchange 5.6 Data lists Number Identifier: $MC_ Description 22240 AUXFU_F_SYNC_TYPE Output timing of F functions 22250 AUXFU_D_SYNC_TYPE Output timing of D functions 22260 AUXFU_E_SYNC_TYPE (available soon) Output timing of E functions 22400 S_VALUES_ACTIVE_AFTER_RESET S function active after RESET 22410 F_VALUES_ACTIVE_AFTER_RESET F function active after reset...
  • Page 346: Setting Data

    K5: Mode groups, channels, axis interchange 5.6 Data lists 5.6.2 Setting data 5.6.2.1 Channelspecific setting data Number Identifier: $SC_ Description 42000 THREAD_START_ANGLE Start angle for thread 42100 DRY_RUN_FEED Dry run feedrate 5.6.3 Signals 5.6.3.1 Signals to/from BAG The mode group signals from the PLC to the NCK and from the NCK to the PLC are included in data block 11.
  • Page 347: M1: Kinematic Transformation

    M1: Kinematic transformation Brief description 6.1.1 TRANSMIT (option) Note The "TRANSMIT and peripheral surface transformation" option that is under license is required for the "TRANSMIT" function. The "TRANSMIT" function permits the following services: ● Face-end machining on turned parts in the turning clamp –...
  • Page 348: Tracyl (Option)

    M1: Kinematic transformation 6.1 Brief description 6.1.2 TRACYL (option) Note The "TRANSMIT and peripheral surface transformation" option that is under license is required for the function "Cylinder surface transformation (TRACYL)". The function "Cylinder surface transformation (TRACYL)" permits the following services: Machining of ●...
  • Page 349: Traang (Option)

    M1: Kinematic transformation 6.1 Brief description ● The velocity control makes allowance for the limits defined for rotary motion. transformation, without groove side compensation, with additional longitudinal axis TRACYL (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.
  • Page 350: Activating Transformation Machine Data Via Parts Program/Softkey

    M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) 6.1.5 Activating transformation machine data via parts program/softkey Most of the machine data relevant to kinematic transformations were activated by POWER ON up to now. Transformation machine data can also be activated via the parts program/softkey and it is not necessary to boot the control.
  • Page 351: Specific Settings

    M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) Machine data General transformation data ● $MC_TRAFO_GEOAX_ASSIGN_TAB_ ● $MC_TRAFO_TYPE_ ● $MC_TRAFO_AXES_IN_ with n = 1, 2, 3, ... max. number of transformation data records Note Maximum of two TRANSMIT transformations per channel A maximum of two TRANSMIT transformations may be parameterized per channel.
  • Page 352 M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) One rotary and two linear axes: TRAFO_TYPE = 257 The transformation type 257 must be set for TRANSMIT with a rotary and two linear axes: $MC_TRAFO_TYPE_ = 257 with n = 1, 2, ... max. number of transformations The second linear axis must be oriented perpendicular to the plane clamped by the rotary and the linear axis.
  • Page 353 M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) Direction of rotation: TRANSMIT_ROT_SIGN_IS_PLUS TRANSMIT must be informed of the rotary axis direction of rotation with the following machine data: ● The rotary axis direction of rotation with regard to TRANSMIT is positive if the rotary axis rotates counterclockwise in relation to the X/Y plane looking at the X axis, when traversing in the positive direction.
  • Page 354: Switch On

    M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) Replaceable geometry axes When the geometry axes are switched, the parameterized M function is output to the GEOAX() NC/PLC interface: ● MD22534 $MC_TRAFO_CHANGE_M_CODE = Note The values 0 to 6, 17 and 30 are not output. References: Function Manual Basic Functions;...
  • Page 355: Applications

    M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) 6.2.4 Applications Introduction The transformation has a pole at the zero point of the plane (example, see TRANSMIT TRANSMIT figure: 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).
  • Page 356 M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) Traversal along linear axis Figure 6-2 Traversal of x axis through pole Rotation in pole Figure 6-3 Traversal of x axis into pole (a), rotation (b), exit from pole (c) Selection of method The method must be selected according to the capabilities of the machine and the requirements of the part to be machined.
  • Page 357 M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) The first MD applies to the first TRANSMIT transformation in the channel and the second MD correspondingly to the second TRANSMIT transformation. VALUE Meaning Pole traversal The tool center point path (linear axis) must traverse the pole on a continuous path.
  • Page 358 M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) 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...
  • Page 359 M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) Requirements: AUTOMATIC mode, MD24911 $MC_TRANSMIT_POLE_SIDE_FIX_1 = 0 MD24951 $MC_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 Figure 6-5 Machining on one pole side...
  • Page 360 M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) Transformation selection in pole If the machining operation must continue from a position on the tool center path which corresponds to the pole of the activated transformation, then an exit from the pole is specified for the new transformation.
  • Page 361: Working Area Limitations

    M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) 6.2.5 Working area limitations Starting position When is active, the pole is replaced by a working area limitation if the tool center TRANSMIT point cannot be positioned in the turning center of the rotary axis involved in the transformation.
  • Page 362: Overlaid Motions With Transmit

    M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) 6.2.6 Overlaid motions with TRANSMIT 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).
  • Page 363: Example: Axis Configuration

    M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) Several pole traversals A block can traverse the pole any number of times (e.g. programming of a helix with several turns). The part 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.
  • Page 364 M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) Assignment of geometry axes to channel axes ● TRANSMIT not active – MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB[ 0 ] = 1 (1st geometry axis ⇒ 1st channel axis "XC") – MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB[ 1 ] = 0 ( - ) –...
  • Page 365 M1: Kinematic transformation 6.2 TRANSMIT face end transformation (option) Machine axis name ● MD10000 $MN_AXCONF_MACHAX_NAME_TAB[0]="CM" ● MD10000 $MN_AXCONF_MACHAX_NAME_TAB[1]="XM" ● MD10000 $MN_AXCONF_MACHAX_NAME_TAB[2]="ZM" ● MD10000 $MN_AXCONF_MACHAX_NAME_TAB[3]="ASM" Synopsis of the axis configuration Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 366: Tracyl Cylinder Surface Transformation (Option)

    M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) TRACYL cylinder surface transformation (option) The TRACYL transformation permits the machining of cylinder jacket curves (grooves) on turning machines. The machine kinematics must correspond to the cylinder coordinate system: ● One, two or three linear axes and one rotary axis ●...
  • Page 367 M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) One or two linear axes (axis configuration 1) One linear axis For a machine kinematic with only one linear axis (X), only grooves parallel to the periphery of the cylinder can be generated. Two linear axes For a machine kinematic with two linear axes (X and Z), grooves of any form can be generated on the cylinder.
  • Page 368: Preconditions

    M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) Three linear axes (axis configuration 2) For a machine kinematic with three linear axes (X, Y and Z), grooves of any form can be generated on the cylinder. The Y axis oriented perpendicular to the turning center means almost parallel groove edges can be generated even for groove widths larger than the tool diameter.
  • Page 369 M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) Machine data for TRACYL transformation A TRACYL transformation is parameterized using the following machine data: ● $MC_TRACYL_ROT_AX_OFFSET_ (offset of rotary axis) ● $MC_TRACYL_ROT_AX_FRAME_ (rotary axis offset) ● $MC_TRACYL_DEFAULT_MODE_ (selection of TRACYL mode) ●...
  • Page 370 M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) Geometry axis names ● MD20050 $MC_AXCONF_GEOAX_NAME_TAB[0]="X" ● MD20050 $MC_AXCONF_GEOAX_NAME_TAB[1]="Y" ● MD20050 $MC_AXCONF_GEOAX_NAME_TAB[2]="Z" Assignment of geometry axes to channel axes TRACYL not active ● MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB[ 0 ] = 1 ● MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB[ 1 ] = 2 ●...
  • Page 371: Specific Settings

    M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) Machine axis name MD10000 $MN_AXCONF_MACHAX_NAME_TAB[0]="CM" MD10000 $MN_AXCONF_MACHAX_NAME_TAB[1]="XM" MD10000 $MN_AXCONF_MACHAX_NAME_TAB[2]="YM" MD10000 $MN_AXCONF_MACHAX_NAME_TAB[3]="ZM" MD10000 $MN_AXCONF_MACHAX_NAME_TAB[4]="ASM" See also TRACYL cylinder surface transformation (option) (Page 366) 6.3.2 Specific settings Setting of the transformation type The transformation type is set transformation-data-record-specific via: ●...
  • Page 372 M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) Transformation geometry axes Three (or four) channel axis numbers must be specified for TRACYL ● MD24110 $MC_TRAFO_AXES_IN_1[0]=channel axis number of the axis radial to the rotary axis. ● MD24110 $MC_TRAFO_AXES_IN_1[1]=channel axis number of the rotary axis. ●...
  • Page 373 M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) Rotational position The rotational position of the axis on the cylinder peripheral surface perpendicular to the rotary axis must be defined as follows: Figure 6-11 Center of axis rotation in the peripheral cylinder surface MD24800 TRACYL_ROT_AX_OFFSET_...
  • Page 374 M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) Replaceable geometry axes The PLC is informed when a geometry axis has been replaced using ( ) through the GEOAX optional output of an M code that can be set in machine data. ●...
  • Page 375: Switch On

    M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) Example MD24820 $MC_TRACYL_BASE_TOOL_[ 0 ] = tx MD24820 $MC_TRACYL_BASE_TOOL_[ 1 ] = ty MD24820 $MC_TRACYL_BASE_TOOL_[ 2 ] = tz Where = number of TRACYL transformations defined in the transformation data records Figure 6-13 Cylinder coordinate system See also...
  • Page 376: Deactivation

    M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) Meaning Activate TRACYL with TRACYL data set 1 and working diameter d TRACYL() Activate TRACYL with TRACYL data set n and working diameter d TRACYL(, ) Reference or working diameter. Range of values: >1 TRACYL data set number (optional)
  • Page 377 M1: Kinematic transformation 6.3 TRACYL cylinder surface transformation (option) Frame A frame change with (incremental dimension) is not specially treated for active transformation. The path to be traversed is evaluated in the workpiece coordinate system of the new frame - regardless of which frame was active in the previous block. A rotary axis offset can, for example, be entered by compensating the inclined position of a workpiece can be considered using a frame or as offset of the rotary axis.
  • Page 378: Traang Oblique Angle Transformation (Option)

    M1: Kinematic transformation 6.4 TRAANG oblique angle transformation (option) Interrupt part program ● Mode change from AUTOMATIC to JOG If a part program machining is interrupted for active transformation and traversed manually in the JOG operating mode, ensure for continuation of the part program in the AUTOMATIC operating mode that the transformation is already active in the restart block from the current position to the interruption location.
  • Page 379: Preconditions

    M1: Kinematic transformation 6.4 TRAANG oblique angle transformation (option) Note For active transformation, the names of the involved machine, channel and geometry axes are different: • MD10000 $MN_AXCONF_MACHAX_NAME_TAB (machine axis name) • MD20080 $MC_AXCONF_CHANAX_NAME_TAB (channel axis name) • MD20060 $MC_AXCONF_GEOAX_NAME_TAB (geometry axis name) 6.4.1 Preconditions Maximum number of TRAANG transformations per channel...
  • Page 380 M1: Kinematic transformation 6.4 TRAANG oblique angle transformation (option) Example of an axis configuration The configurations highlighted in the figure above apply when is active. TRAANG Transformation channel axes ● MD24110 $MC_TRAFO_AXES_IN_1[0]=4; channel axis number of the inclined axis ● MD24110 $MC_TRAFO_AXES_IN_1[1]=1; channel axis number of the longitudinal axis ●...
  • Page 381: Specific Settings

    M1: Kinematic transformation 6.4 TRAANG oblique angle transformation (option) Assignment of geometry axes to channel axes TRAANG active ● MD24434 $MC_TRAFO_GEOAX_ASSIGN_TAB_[ 0 ] = 1 ● MD24434 $MC_TRAFO_GEOAX_ASSIGN_TAB_[ 1 ] = 6 ● MD24434 $MC_TRAFO_GEOAX_ASSIGN_TAB_[ 2 ] = 3 See also TRAANG oblique angle transformation (option) (Page 378) 6.4.2 Specific settings...
  • Page 382 M1: Kinematic transformation 6.4 TRAANG oblique angle transformation (option) Optimization of velocity control The machine data used to optimize the velocity control in jog mode and in positioning and oscillation modes: Speed margin The machine data sets the speed margin for the compensation movements of the longitudinal axis: MD24720 $MC_TRAANG_PARALLEL_VELO_RES_...
  • Page 383: Switch On

    M1: Kinematic transformation 6.4 TRAANG oblique angle transformation (option) 6.4.3 Switch on The TRAANG transformation is activated in the part program or synchronous action using command. TRAANG Syntax TRAANG TRAANG([<α>][, ]) Meaning Activate TRAANG with data set 1 and last valid angle α TRAANG Activate TRAANG with data set n and last valid angle α...
  • Page 384: Boundary Conditions

    M1: Kinematic transformation 6.4 TRAANG oblique angle transformation (option) 6.4.5 Boundary conditions The transformation can be selected and deselected via part program or MDA. Selection and deselection ● An intermediate motion block is not inserted (phases/radii). ● A spline block sequence must be terminated. ●...
  • Page 385: Programming (G05, G07)

    M1: Kinematic transformation 6.4 TRAANG oblique angle transformation (option) 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 is implemented as standard during preprocessing.
  • Page 386 M1: Kinematic transformation 6.4 TRAANG oblique angle transformation (option) Programming Figure 6-14 Machine with inclined infeed axis Example: Program code Comment N... ; Program axis for inclined axis N50 G07 X70 Z40 F4000 ; Approach starting position N60 G05 X70 F100 ;...
  • Page 387: Chained Transformations

    M1: Kinematic transformation 6.5 Chained transformations Chained transformations Introduction It is possible to chain the kinematic transformation described here, with an additional transformation of the type "Inclined axis": ● TRANSMIT ● TRACYL ● (oblique axis) TRAANG as described in References: Function Manual, Special Functions;...
  • Page 388 M1: Kinematic transformation 6.5 Chained transformations ● Assignment of geometry axes to channel axes – general situation (no transformation active) ● Assignment of channel axes to machine axis numbers ● Identification of spindle, rotation, modulo for axes ● Allocation of machine axis names. ●...
  • Page 389: Activating Chained Transformations

    M1: Kinematic transformation 6.5 Chained transformations 6.5.1 Activating chained transformations TRACON A chained transformation is activated by: TRACON(trf, par) ● trf: Number of the chained transformation: 0 or 1 for first/only chained transformation. If nothing is programmed here, then this has the same meaning as specifying value 0 or 1, i.e., the first/only transformation is activated –...
  • Page 390: Persistent Transformation

    M1: Kinematic transformation 6.5 Chained transformations 6.5.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 that must be selected in relation to the persistent TRANSMIT...
  • Page 391 M1: Kinematic transformation 6.5 Chained transformations Effects on HMI operation As a transformation is always active with the persistent transformation, the HMI user interface is adapted accordingly for the selection and deselection of transformations: on HMI TRACON Accordingly the HMI operator interface does not display , but the first chain TRACON transformation of...
  • Page 392 M1: Kinematic transformation 6.5 Chained transformations 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. The persistent transformation remains in effect when traversing with JOG.
  • Page 393 M1: Kinematic transformation 6.5 Chained transformations MD24110 $MC_TRAFO_AXES_IN_1[2] = 3 MD24110 $MC_TRAFO_AXES_IN_1[3] = 0 MD24110 $MC_TRAFO_AXES_IN_1[4] = 0 MD24120 $MC_TRAFO_GEOAX_ASSIGN_TAB_1[0]=1 MD24120 $MC_TRAFO_GEOAX_ASSIGN_TAB_1[1]=2 MD24120 $MC_TRAFO_GEOAX_ASSIGN_TAB_1[2]=3 MD24700 $MC_TRAANG_ANGLE_1 = 60 MD24720 $MC_TRAANG_PARALLEL_VELO_RES_1 = 0.2 MD24721 $MC_TRAANG_PARALLEL_ACCEL_RES_1 = 0.2 ; Definition of persistent transformation MD20144 $MC_TRAFO_MODE_MASK = 1 MD20140 $MC_TRAFO_RESET_VALVUE= 1 MD20110 $MC_RESET_MODE_MASK = 'H01'...
  • Page 394 M1: Kinematic transformation 6.5 Chained transformations MD24320 $MC_TRAFO_GEOAX_ASSIGN_TAB_3[2] =3 ; Data for TRACON ; TRACON chaining TRANSMIT 514/TRAANG(Y1 axis inclined in relation to X1) MD24400 $MC_TRAFO_TYP_4 = 8192 MD24995 $MC_TRACON_CHAIN_1[0] = 3 MD24995 $MC_TRACON_CHAIN_1[1] = 1 MD24995 $MC_TRACON_CHAIN_1[2] = 0 MD24420 $MC_TRAFO_GEOAX_ASSIGN_TAB_4[0] =1 MD24420 $MC_TRAFO_GEOAX_ASSIGN_TAB_4[1] =4 MD24420 $MC_TRAFO_GEOAX_ASSIGN_TAB_4[2] =3...
  • Page 395: Axis Positions In The Transformation Chain

    M1: Kinematic transformation 6.5 Chained transformations 6.5.5 Axis positions in the transformation chain Function System variables having the following content are provided for machines with system or OEM transformations, especially for chained transformations ( TRACON Type System variable Meaning REAL $AA_ITR[ax,n] Current setpoint value at output of the nth transformation REAL...
  • Page 396 M1: Kinematic transformation 6.5 Chained transformations $AA_ITR[ , ] The $AA_ITR[ax,n] variable determines the setpoint position of an axis at the output of the nth chained transformation. Figure 6-15 Transformer layer Transformer layer The 2nd index of the variable corresponds to the transformer layer in which the positions are tapped: ●...
  • Page 397 M1: Kinematic transformation 6.5 Chained transformations $AA_IBC[ ] The variable $AA_IBC[ax] determines the setpoint position of a cartesian axis lying between BCS and MCS. If an axis is cartesian at the output of the nth transformation, then this output value is delivered. If the corresponding axis at the output of all transformations is not cartesian, then the BCS value including all BCS offsets of the axis are determined.
  • Page 398: Cartesian Ptp Travel

    M1: Kinematic transformation 6.6 Cartesian PTP travel 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.
  • Page 399 M1: Kinematic transformation 6.6 Cartesian PTP travel Reset MD20152 $MC_GCODE_RESET_MODE[48] (group 49) defines which setting is active after RESET/end of part program. ● MD=0: Settings are effected in accordance with machine data MD20150 $MC_GCODE_RESET_VALUES[48] ● MD=1: Active setting remains valid Selection The setting MD20152 $MC_GCODE_RESET_MODE[48] =0, with MD20150 $MC_GCODE_RESET_VALUES[48] can activate the following:...
  • Page 400 M1: Kinematic transformation 6.6 Cartesian PTP travel ● With PTPG0, CP travel is used for smooth approach and retraction (SAR). SAR requires a contour in order to construct approach and retraction motion and to be able to lower and raise tangentially. The blocks required for this purpose are therefore traversed with the CP command.
  • Page 401: Programming Of Position

    M1: Kinematic transformation 6.6 Cartesian PTP travel Alarm 10753: With PTPG0 and active TRC an internal switch-over to CP is done in order to allow the tool radius correction to be performed correctly. Alarm 10754: Still possible in case of conflict. Alarm 10778: Still possible in case of conflict.
  • Page 402: Overlap Areas Of Axis Angles

    M1: Kinematic transformation 6.6 Cartesian PTP travel Figure 6-16 Position bits for Handling Transformation Package Note It is only meaningful to program the address for "Cartesian PTP travel", since changes STAT 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.
  • Page 403: Examples Of Ambiguities Of Position

    M1: Kinematic transformation 6.6 Cartesian PTP travel 6.6.3 Examples of ambiguities of position The kinematics for a 6axis joint have been used to illustrate the ambiguities caused by different joint positions. Figure 6-17 Ambiguity in overhead area Figure 6-18 Ambiguity of top or bottom elbow Figure 6-19 Ambiguity of axis B1 Extended Functions...
  • Page 404: Example Of Ambiguity In Rotary Axis Position

    M1: Kinematic transformation 6.6 Cartesian PTP travel 6.6.4 Example of ambiguity in rotary axis position The rotary axis position shown in the following diagram can be approached in the negative or positive direction. The direction is programmed under address A1. Figure 6-20 Ambiguity in rotary axis position 6.6.5...
  • Page 405: Cartesian Manual Travel (Optional)

    M1: Kinematic transformation 6.7 Cartesian manual travel (optional) Cartesian manual travel (optional) Note The "Handling transformation package" option is necessary for the "Cartesian manual travel" function. Function The "Cartesian manual travel" function, as a reference system for JOG mode, allows axes to be set independently of each other in the following Cartesian coordinate systems: ●...
  • Page 406 M1: Kinematic transformation 6.7 Cartesian manual travel (optional) Selecting reference systems For JOG motion, one of the three reference systems can be specified separately not only for the translation (coarse offset) with geometry axes, but also for the orientation with orientation axes via the following setting data: SD42650 $SC_CART_JOG_MODE If more than one bit is set for the translation or orientation reference system, or when an...
  • Page 407 M1: Kinematic transformation 6.7 Cartesian manual travel (optional) Translation in the WCS The workpiece coordinate system (WCS) lies in the workpiece zero. The 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.
  • Page 408 M1: Kinematic transformation 6.7 Cartesian manual travel (optional) Translation and orientation in the TCS simultaneously If translation and orientation movements are executed at the same time, the translation is always traversed corresponding to the current orientation of the tool. This permits infeed movements that are made directly in the tool direction or movements that run perpendicular to tool direction.
  • Page 409 M1: Kinematic transformation 6.7 Cartesian manual travel (optional) Orientation in BCS The rotations are made around the defined directions of the basic coordinate system. Figure 6-24 Cartesian manual travel in the basic coordinate system, orientation angle A Figure 6-25 Cartesian manual travel in the basic coordinate system, orientation angle B Figure 6-26 Cartesian manual travel in the basic coordinate system, orientation angle C Extended Functions...
  • Page 410 M1: Kinematic transformation 6.7 Cartesian manual travel (optional) 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. Figure 6-27 Cartesian manual travel in the tool coordinate system, orientation angle A Figure 6-28 Cartesian manual travel in the tool coordinate system, orientation angle B Figure 6-29...
  • Page 411 M1: Kinematic transformation 6.7 Cartesian manual travel (optional) Supplementary conditions The "Cartesian manual travel" function can only be executed if the transformation is active in the NC: DB21, ... DBX33.6 == 1 ("transformation active") The following supplementary conditions must be observed: ●...
  • Page 412: Activating Transformation Machine Data Via Part Program/Softkey

    M1: Kinematic transformation 6.8 Activating transformation machine data via part program/softkey SD42650 $SC_CART_JOG_MODE Bit 11 - Bit 10 Bit 9 Bit 8 Bit 7 - Bit 2 Bit 1 Bit 0 bit 15 bit 3 Reserved Orientation Orientation Orientation Reserved Translation Translatio Translation...
  • Page 413: Constraints

    M1: Kinematic transformation 6.8 Activating transformation machine data via part program/softkey Characteristics Transformation machine data are NEWCONFIG effective. 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 command is issued NEWCONF...
  • Page 414 M1: Kinematic transformation 6.8 Activating transformation machine data via part program/softkey but not, for instance: MD24650 $MC_TRAFO5_BASE_TOOL_2 MD21110 $MC_X_AXIS_IN_OLD_X_Z_PLANE Furthermore, another transformation (TRANSMIT) can be set, for example with MD24300 $MC_TRAFO_TYPE_3 = 256 and can be parameterized with additional machine data. Defining geometry axes Geometry axes must be defined before starting the control system with the following machine data:...
  • Page 415: Control Response To Power On, Mode Change, Reset, Block Search, Repos

    M1: Kinematic transformation 6.8 Activating transformation machine data via part program/softkey 6.8.3 Control response to power ON, mode change, RESET, block search, REPOS With the aid of the following machine data it is possible to select a transformation automatically in response to (i.e.
  • Page 416 M1: Kinematic transformation 6.8 Activating transformation machine data via part program/softkey Orientation transformations Machine data which are relevant for orientation transformations: ● MD24550 $MC_TRAFO5_BASE_TOOL_1 and MD24650 $MC_TRAFO5_BASE_TOOL_2 ● MD24558 $MC_TRAFO5_JOINT_OFFSET_1 and MD24658 $MC_TRAFO5_JOINT_OFFSET_2 ● MD24500 $MC_TRAFO5_PART_OFFSET_1 and MD24600 $MC_TRAFO5_PART_OFFSET_2 ● MD24510 $MC_TRAFO5_ROT_AX_OFFSET_1 and MD24610 $MC_TRAFO5_ROT_AX_OFFSET_2 ●...
  • Page 417 M1: Kinematic transformation 6.8 Activating transformation machine data via part program/softkey ● MD24910 $MC_TRANSMIT_ROT_SIGN_IS_PLUS_1 and MD24960 $MC_TRANSMIT_ROT_SIGN_IS_PLUS_2 ● MD24911 MC_RANSMIT_POLE_SIDE_FIX_1 and MD24961 $MC_TRANSMIT_POLE_SIDE_FIX_2 Tracyl transformations Machine data which are relevant for Tracyl transformations: ● MD24820 $MC_TRACYL_BASE_TOOL_1 and MD24870 $MC_TRACYL_BASE_TOOL_2 ● MD24800 $MC_TRACYL_ROT_AX_OFFSET_1 and MD24850 $MC_TRACYL_ROT_AX_OFFSET_2 ●...
  • Page 418: Constraints

    M1: Kinematic transformation 6.9 Constraints Persistent transformation Machine data which are relevant for persistent transformations: ● MD20144 $MC_TRAFO_MODE_MASK ● MD20140 $MC_TRAFO_RESET_VALUE ● MD20110 $MC_RESET_MODE_MASK and MD20112 $MC_START_MODE_MASK Not transformation-specific Machine data that are not transformation-specific. they are not uniquely assigned to a particular transformation data set or they are relevant even when a transformation is not active: ●...
  • Page 419: Examples

    M1: Kinematic transformation 6.10 Examples 6.10 Examples 6.10.1 TRANSMIT The following example relates to the configuration illustrated in "Figure 6-30 Groove with groove wall offset, cylinder coordinates (Page 423)" and shows the sequence of main steps required to configure the axes and activate TRANSMIT. ;...
  • Page 420: Tracyl

    M1: Kinematic transformation 6.10 Examples ; prepare for TRANSMIT (as first and only transformation) $MA_ROT_IS_MODULO[3] = TRUE ; c as modulo axis MD24100 $MC_TRAFO_TYPE_1 = 256 ;TRANSMIT transformation MD24110 $MC_TRAFO_AXES_IN_1[0] = 1 ; channel axis perpendicular to rotary axis MD24110 $MC_TRAFO_AXES_IN_1[1] = 3 ;...
  • Page 421 M1: Kinematic transformation 6.10 Examples MD20080 $MC_AXCONF_CHANAX_NAME_TAB[0]="XC" MD20080 $MC_AXCONF_CHANAX_NAME_TAB[1]="YC" MD20080 $MC_AXCONF_CHANAX_NAME_TAB[2]="ZC" MD20080 $MC_AXCONF_CHANAX_NAME_TAB[3]="CC" MD20080 $MC_AXCONF_CHANAX_NAME_TAB[4]="ASC" MD20070 $MC_AXCONF_MACHAX_USED[0] = 2 ; X as machine axis 2 MD20070 $MC_AXCONF_MACHAX_USED[1] = 3 ; Y as machine axis 3 MD20070 $MC_AXCONF_MACHAX_USED[2] = 4 ; Z as machine axis 4 MD20070 $MC_AXCONF_MACHAX_USED[3] = 1 ;...
  • Page 422 M1: Kinematic transformation 6.10 Examples MD24810 ; Rotary axes turns $MC_TRACYL_ROT_SIGN_IS_PLUS_1 = FALSE MD24820 $MC_TRACYL_BASE_TOOL_1 [0] = ; tool center distance in X MD24820 $MC_TRACYL_BASE_TOOL_1 [1] = ; tool center distance in Y MD24820 $MC_TRACYL_BASE_TOOL_1 [2] = ; tool center distance in Z ;...
  • Page 423 M1: Kinematic transformation 6.10 Examples Tool radius The tool radius is automatically taken into account with respect to the groove side wall (see simplified figure). 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). Figure 6-30 Groove with groove wall offset, cylinder coordinates Example program that which guides the tool after transformation selection on path I via path...
  • Page 424 M1: Kinematic transformation 6.10 Examples Program code Comment ; Approach of groove wall N60 G1 Z100 G42 ; TRC selection to approach groove wall Machining groove sector path I N70 G1 Z50 ; Groove part parallel to the cylinder plane N80 G1 Y10 ;...
  • Page 425 M1: Kinematic transformation 6.10 Examples MD24110 $MC_TRAFO_AXES_IN_1[3] = 2 ; Channel axis special axis to index [0] MD24120 $MC_TRAFO_GEOAX_ASSIGN_TAB_1 [0] = 1 ; 1. channel axis becomes GEOAX X MD24120 $MC_TRAFO_GEOAX_ASSIGN_TAB_1 [1] = 4 ; 2. channel axis becomes GEOAX Y MD24110 $MC_TRAFO_GEOAX_ASSIGN_TAB_1 [2] = 3 ;...
  • Page 426: Traang

    M1: Kinematic transformation 6.10 Examples 6.10.3 TRAANG For the configuration shown in Figure "Groove with Groove Wall Offset, Cylinder Coordinates", an example relating to the configuration of axes which shows the sequence of main steps required to configure the axes up to activation by TRAANG is shown. ;...
  • Page 427: Chained Transformations

    M1: Kinematic transformation 6.10 Examples MD24700 $MC_TRAANG_ANGLE_1 = 30. ; Angle of inclined axis MD24710 $MC_TRAANG_BASE_TOOL_1 [0] = 0 ; tool center distance in X MD24710 $MC_TRAANG_BASE_TOOL_1 [1] = 0 ; tool center distance in Y MD24710 $MC_TRAANG_BASE_TOOL_1 [2] = 0 ;...
  • Page 428 M1: Kinematic transformation 6.10 Examples MD20080 $MC_AXCONF_CHANAX_NAME_TAB[4]="B" MD20080 $MC_AXCONF_CHANAX_NAME_TAB[5] = "C" MD36902 $MA_IS_ROT_AX[ AX4 ] = TRUE MD36902 $MA_IS_ROT_AX[ AX5 ] = TRUE MD36902 $MA_IS_ROT_AX[ AX6 ] = TRUE MD36902 $MA_IS_ROT_AX[ AX7 ] = TRUE MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[AX5]= 0 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[AX7] = 1 MD35000 $MA_ROT_IS_MODULO[AX7] = TRUE Single transformations ;...
  • Page 429 M1: Kinematic transformation 6.10 Examples ; 3. TRAANG MD24300 $MC_TRAFO_TYPE_3 = 1024 ; TRAANG MD24310 $MC_TRAFO_AXES_IN_3[0] = 1 MD24310 $MC_TRAFO_AXES_IN_3[1] = 3 MD24310 $MC_TRAFO_AXES_IN_3[2] = 2 MD24310 $MC_TRAFO_AXES_IN_3[3] = 0 MD24310 $MC_TRAFO_AXES_IN_3[4] = 0 MD24320 $MC_TRAFO_GEOAX_ASSIGN_TAB_3[0] =1 MD24320 $MC_TRAFO_GEOAX_ASSIGN_TAB_3[1] =3 MD24320 $MC_TRAFO_GEOAX_ASSIGN_TAB_3[2] =2 MD24700 $MC_TRAANG_ANGLE_1 = 45.
  • Page 430 M1: Kinematic transformation 6.10 Examples Part program (extracts) Example of an NC program which uses the set transformations: Program code Comment ; Call single transformations ; Tool specification $TC_DP1[1,1]=120 ; Tool type $TC_DP3[1,1] = 10 ; Tool length n2 x0 y0 z0 a0 b0 f20000 t1 d1n4 x20 n30 TRANSMIT ;...
  • Page 431: Activating Transformation Md Via A Part Program

    M1: Kinematic transformation 6.10 Examples Program code Comment ; 2. Activate chained transformations ; TRANSMIT + TRAANG n330 TRACON(2, 40.) ; 2. activate 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...
  • Page 432: Axis Positions In The Transformation Chain

    M1: Kinematic transformation 6.10 Examples 6.10.6 Axis positions in the transformation chain Two chained transformations are configured in the following example, and the system variables for determining the axis positions in the synchronous action are read cyclically in the part program. Machine data CHANDATA(1) MD24100 $MC_TRAFO_TYPE_1=256...
  • Page 433 M1: Kinematic transformation 6.10 Examples MD24210 $MC_TRAFO_AXES_IN_2[2]=3 MD24220 $MC_TRAFO_GEOAX_ASSIGN_TAB_2[0] =2 MD24220 $MC_TRAFO_GEOAX_ASSIGN_TAB_2[1] =1 MD24220 $MC_TRAFO_GEOAX_ASSIGN_TAB_2[2] =3 MD24300 $MC_TRAFO_TYPE_3=1024 ; TRAANG MD24310 $MC_TRAFO_AXES_IN_3[0] = 2 MD24310 $MC_TRAFO_AXES_IN_3[1]=4 MD24310 $MC_TRAFO_AXES_IN_3[2] = 3 MD24320 $MC_TRAFO_GEOAX_ASSIGN_TAB_3[0] =2 MD24320 $MC_TRAFO_GEOAX_ASSIGN_TAB_3[1] =4 MD24320 $MC_TRAFO_GEOAX_ASSIGN_TAB_3[2] =3 MD24700 $MC_TRAANG_ANGLE_1 = 45. MD24720 $MC_TRAANG_PARALLEL_VELO_RES_1 = 0.2 MD24721 $MC_TRAANG_PARALLEL_ACCEL_RES_1 = 0.2 MD24710 $MC_TRAANG_BASE_TOOL_1 [0] = 0.0...
  • Page 434 M1: Kinematic transformation 6.10 Examples MD24434 $MC_TRAFO_GEOAX_ASSIGN_TAB_5[0] =2 MD24434 $MC_TRAFO_GEOAX_ASSIGN_TAB_5[1] =1 MD24434 $MC_TRAFO_GEOAX_ASSIGN_TAB_5[2] =3 Part program Program code Comment N10 $TC_DP1[1,1]=120 N20 $TC_DP3[1,1]= 20 N30 $TC_DP4[1,1]=0 N40 $TC_DP5[1,1]=0 N60 X0 Y0 Z0 F20000 T1 D1 ; cyclical reading of the variables in the synchronous action N90 ID=1 WHENEVER TRUE DO $R0=$AA_ITR[X,0] $R1=$AA_ITR[X,1] $R2=$AA_ITR[X,2] N100 ID=2 WHENEVER TRUE DO $R3=$AA_IBC[X] $R4=$AA_IBC[Y] $R5=$AA_IBC[Z] N110 ID=3 WHENEVER TRUE DO $R6=$VA_IW[X]-$AA_IW[X]...
  • Page 435: Data Lists

    M1: Kinematic transformation 6.11 Data lists 6.11 Data lists 6.11.1 Machine data 6.11.1.1 TRANSMIT Channelspecific machine data Number Identifier: $MC_ Description 20110 RESET_MODE_MASK Definition of control basic setting after run-up and RESET/part program end 20140 TRAFO_RESET_VALUE Basic transformation position 22534 TRAFO_CHANGE_M_CODE M code for transformation changeover 24100...
  • Page 436: Tracyl

    M1: Kinematic transformation 6.11 Data lists Number Identifier: $MC_ Description 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/behind 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...
  • Page 437 M1: Kinematic transformation 6.11 Data lists Number Identifier: $MC_ Description 24434 TRAFO_GEOAX_ASSIGN_TAB_5 Geo-axis assignment for 5th transformation 24436 TRAFO_INCLUDES_TOOL_5 Tool handling with active transformation 5. 24440 TRAFO_TYPE_6 Definition of the 6th transformation in channel 24442 TRAFO_AXES_IN_6 Axis assignment for the 6th transformation 24444 TRAFO_GEOAX_ASSIGN_TAB_6 Assignment geometry axes for 6th transformation...
  • Page 438: Traang

    M1: Kinematic transformation 6.11 Data lists 6.11.1.3 TRAANG Channelspecific machine data Number Identifier: $MC_ Description 20110 RESET_MODE_MASK Definition of control basic setting after run-up and RESET/part program end 20140 TRAFO_RESET_VALUE Basic transformation position 20144 RAFO_MODE_MASK Selection of the kinematic transformation function 20534 TRAFO_CHANGE_M_CODE M code for transformation changeover...
  • Page 439: Chained Transformations

    M1: Kinematic transformation 6.11 Data lists Number Identifier: $MC_ Description 24760 TRAANG_BASE_TOOL_2 Distance of tool zero point from origin of geometry 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) 6.11.1.4 Chained transformations...
  • Page 440 M1: Kinematic transformation 6.11 Data lists Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 441: M5: Measurement

    M5: Measurement Brief description Channel-specific measuring The trigger event programmed for channel-specific measuring in a part program block initiates the measuring operation and specifies the measurement method used for the measurement. The instructions apply to all axes programmed in this particular block. Axial measurement In the case of axial measuring, a measurement can be made from the part program and also from synchronized actions.
  • Page 442: Hardware Requirements

    M5: Measurement 7.2 Hardware requirements Workpiece and tool measurement The position of the workpiece can be measured in relation to an edge, a corner or a hole. 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 workpiece coordinate system.
  • Page 443 M5: Measurement 7.2 Hardware requirements Probe types Multidirectional probe (3D) Multidirectional probes can be used unconditionally for measuring tool and workpiece dimensions. Bidirectional probe Bidirectional probes are treated like monodirectional probes for the workpiece measurement in milling and machining centers. Bidirectional probes for the workpiece measurement can be used for turning machines.
  • Page 444: Channel-Specific Measuring

    M5: Measurement 7.3 Channel-specific measuring Channel-specific measuring 7.3.1 Measurement Activation The measurement is activated from the part program. A trigger event and a measuring method are programmed. A distinction is made between two measuring methods: ● 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).
  • Page 445: Measurement Results

    M5: Measurement 7.3 Channel-specific measuring 7.3.2 Measurement results Reading measurement results The results of the measurement commands are stored in system data of the NCK and can be read via system variables in the part program. ● System variable $AC_MEA[No] Query measurement job status signal.
  • Page 446: Axial Measurement

    M5: Measurement 7.4 Axial measurement Axial measurement 7.4.1 Measurement Activation Axial measurement can be programmed with and without deletion of distance-to-go. The activation of the measuring is carried out from the part program or a synchronized action. The measuring method and up to four trigger events are programmed. The measuring mode specifies the chronological or programmed sequence of the trigger events.
  • Page 447 M5: Measurement 7.4 Axial measurement 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. ● Units decade (measuring mode) 0 = abort measurement job (e.g. for synchronized actions) 1 = up to four different trigger events that can be activated at the same time.
  • Page 448 M5: Measurement 7.4 Axial measurement FIFO variables The axial measured values are available in the machine coordinate system (MCS). They are stored in the circular buffer (FIFO) specified by MEAC. The measured values are entered in FIFO variables in the FIFO using the circular principle, e.g. $AC_FIFO1. When two probes have been projected for the measurement, the measured values of the second probe are saved separately in the subsequent FIFO.
  • Page 449: Telegram Selection

    M5: Measurement 7.4 Axial measurement 7.4.2 Telegram selection Telegram selection for the axial measurement with MEAC By default, the axial measurement is implemented with PROFIBUS telegram 391. PROFIBUS telegram 395 is used for measuring with several measured values per trigger event and the position control cycle.
  • Page 450 M5: Measurement 7.4 Axial measurement Two measuring systems If the measuring job is performed with two measuring systems, a maximum of two trigger events can be programmed. The measured values of both probes are acquired for each of the two probes. 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...
  • Page 451: Setting Zeros, Workpiece Measuring And Tool Measuring

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Setting zeros, workpiece measuring and tool measuring 7.5.1 Preset actual value memory and scratching Preset actual value memory Preset actual value memory is initiated by means of an HMI operator action or via measuring cycles.
  • Page 452: Workpiece Measuring

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 7.5.2 Workpiece measuring Workpiece measuring For workpiece measurement, a probe is moved up to the clamped workpiece in the same way as a tool. Due to the variety of different measuring types available, the most common measurement jobs can be performed quite simply and easily on a turning or milling machine.
  • Page 453 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Table 7- 2 Validity bits for the input values of the variables $AC_MEAS_VALID Input value Meaning $AA_MEAS_POINT1[axis] 1. Measuring point for all channel axes $AA_MEAS_POINT2[axis] 2. Measuring point for all channel axes $AA_MEAS_POINT3[axis] 3.
  • Page 454 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Measuring points A maximum of four measuring points are available for all channel axes for measurement: Type Input variable Meaning REAL $AA_MEAS_POINT1[axis] 1. Measuring point for all channel axes REAL $AA_MEAS_POINT2[axis] 2.
  • Page 455 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Setpoints The resultant frame is calculated so that the measurement complies with the setpoints specified by the user. Table 7- 3 Input values for the user setpoint values Type System variable Meaning REAL $AA_MEAS_SETPOINT[ax]...
  • Page 456 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring The following is applicable if the variable $AC_MEAS_FINE_TRANS is not described: ● The compensation value is entered in the coarse offset and transformed in the time frame. There can also be a fine portion in the translation by virtue of the transformations. ●...
  • Page 457 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Value Meaning 2100..2199 $P_UIFR[0..99] settable frame in data management 2500 $P_TOOLFR System frame in data management 2501 $P_WPFR System frame in data management 2502 $P_TRAFR System frame in data management 2504 $P_CYCFR System frame in data management...
  • Page 458 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 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.
  • Page 459: Measurement Selection

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring The variable $AC_MEAS_TOOL_SCREEN can assume the following values: Value Meaning All tool lengths are considered (default setting). Tool radius is not included in the calculation Tool position in x direction (G19) Tool position in y direction (G18) Tool position in y direction (G17) 0x10...
  • Page 460: Output Values

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Value Description Stud Measuring a shaft 10 * Tool length Measuring the tool length 11 * ToolDiameter Measuring the tool diameter Slot Measuring a groove Plate Measuring a web Set_Pos Preset actual value for geometric and special axes Set_AuxPos Preset actual value memory for special axes only...
  • Page 461: Calculation Method

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Type System variable Description 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 (depending on $AC_MEAS_TYPE) 7.5.2.4 Calculation method Activating the calculation The calculation is activated by an HMI operator action with PI service _N_SETUDT.
  • Page 462 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Measuring cycles The calculation in the measuring cycles is performed according to the predefined function: INT MEASURE( ) MEASURE() delivers a result frame that can be read via $AC_MEAS_FRAME: ● The result is the translation and rotation from the setpoint values recalculated on the selected frame.
  • Page 463 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring The following return values are output via the pre-defined MEASURE() function: Table 7- 5 Predefined error messages Return values Meaning MEAS_OK Correct calculation MEAS_NO_TYPE Type not specified MEAS_TOOL_ERROR Error determining the tool MEAS_NO_POINT1 Measuring point 1 does not exist MEAS_NO_POINT2...
  • Page 464: Units Of Measurement And Measurement Variables For The Calculation

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 7.5.2.5 Units of measurement and measurement variables for the calculation INCH or METRIC unit of measurement The following input and output variables are evaluated with inch or metric units of measurement: $AA_MEAS_POINT1[axis] Input variable for 1st measuring point...
  • Page 465: Diagnostics

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Diameter programming Diameter programming is set via machine data: MD20100 $MC_DIAMETER_AX_DEF = "X" ; Transverse axis is x MD20150 $MC_GCODE_RESET_VALUES[28] = 2 ; DIAMON MD20360 $MC_TOOL_PARAMETER_DEF_MASK ; Tool length, frames and = 'B1001010' ;...
  • Page 466: Types Of Workpiece Measurement

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 7.5.3 Types of workpiece measurement 7.5.3.1 Measurement of an edge (measurement type 1, 2, 3) Measurement of an x edge ($AC_MEAS_TYPE = 1) The edge of a clamped workpiece is measured by approaching this edge with a known tool. Figure 7-1 x edge The values of the following variables are evaluated for measurement type 1:...
  • Page 467 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Example x edge measurement Program code Comment DEF INT RETVAL DEF FRAME TMP $TC_DP1[1,1]=120 ; Type $TC_DP2[1,1]=20 $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 ;...
  • Page 468 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment if RETVAL <> 0 setal(61000 + RETVAL) endif $P_IFRAME = $AC_MEAS_FRAME $P_UIFR[1] = $P_IFRAME ; Describe system frame in data management g1 x0 y0 ; Approach the edge Measurement of a y edge ($AC_MEAS_TYPE = 2) Figure 7-2 y edge...
  • Page 469 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 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 Measurement of a z edge ($AC_MEAS_TYPE = 3) Figure 7-3 z edge The values of the following variables are evaluated for measurement type 3:...
  • Page 470: Measurement Of An Angle (Measurement Type 4, 5, 6, 7)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 7.5.3.2 Measurement of an angle (measurement type 4, 5, 6, 7) Measurement of a corner C1 - C4 ($AC_MEAS_TYPE = 4, 5, 6, 7) A corner is uniquely defined by approaching four measuring points P1 to P4. Three measuring points suffice for a known angle of intersection ϕ.
  • Page 471 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Input variable Meaning $AA_MEAS_POINT3[axis] Measuring point 3 $AA_MEAS_POINT4[axis] Measuring point 4 irrelevant for $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 specified $AC_MEAS_FINE_TRANS...
  • Page 472 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment $TC_DP5[1,1]=0 ; (x) $TC_DP6[1,1]=2 ; Radius T1 D1 g0 x0 y0 z0 f10000 $P_CHBFRAME[0] = crot(z,45) $P_IFRAME[x,tr] = -sin(45) $P_IFRAME[y,tr] = -sin(45) $P_PFRAME[z,tr] = -45 ; Measure corner with 3 measuring points $AC_MEAS_VALID = 0 ;...
  • Page 473: Measurement Of A Hole (Measurement Type 8)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment if $AC_MEAS_CORNER_ANGLE <> 90 ; Query known setpoint angle of intersection ϕ setal(61000 + $AC_MEAS_CORNER_ANGLE) endif $P_SETFRAME = $AC_MEAS_FRAME $P_SETFR = $P_SETFRAME ; Describe system frame in data management g1 x0 y0 ;...
  • Page 474 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 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...
  • Page 475 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment T1 D1 g0 x0 y0 z0 f10000 : Measure hole $AC_MEAS_VALID = 0 ; Set all input values to invalid g1 x-3 y0 ; 1. Approach measuring point $AA_MEAS_POINT1[x] = $AA_IW[x] $AA_MEAS_POINT1[y] = $AA_IW[y] $AA_MEAS_POINT1[z] = $AA_IW[z]...
  • Page 476: Measurement Of A Shaft (Measurement Type 9)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment $P_SETFRAME = $AC_MEAS_FRAME $P_SETFR = $P_SETFRAME ; Describe system frame in data management g1 x-3 y0 ; Approach P1 g2 I = $AC_MEAS_DIAMETER / 2 ; Approach hole in reference to the center of the circle 7.5.3.4 Measurement of a shaft (measurement type 9)
  • Page 477: Measurement Of A Groove (Measurement Type 12)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Input variable Meaning $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 specified * $AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset * $AC_MEAS_FRAME_SELECT...
  • Page 478 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 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...
  • Page 479 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment $P_CHBFRAME[0] = crot(z,45) $P_IFRAME[x,tr] = -sin(45) $P_IFRAME[y,tr] = -sin(45) $P_PFRAME[z,rt] = -45 ; Measure groove $AC_MEAS_VALID = 0 ; Set all input values to invalid g1 x-2 ;...
  • Page 480: Measurement Of A Web (Measurement Type 13)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 7.5.3.6 Measurement of a web (measurement type 13) Measuring points for determining the position 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.
  • Page 481: Measurement Of Geo Axes And Special Axes (Measurement Type 14, 15)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 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 7.5.3.7 Measurement of geo axes and special axes (measurement type 14, 15) Preset actual value memory for geo axes and special axes ($AC MEAS TYPE = 14)
  • Page 482 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Example Reference point setting in relative coordinate systems. Program code Comment DEF INT RETVAL T1 D1 ; Activate probe ; Activate all frames and G54 TRANS x=10 ; Offset between WCS and ENS G0 x0 f10000 ;...
  • Page 483: Measurement Of An Oblique Edge (Measurement Type 16)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 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 the axes $AA_MEAS_SETPOINT[axis] Setpoint position of the individual axes * $AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset * $AC_MEAS_FRAME_SELECT...
  • Page 484 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 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 specified *...
  • Page 485: Measurement Of An Oblique Angle In A Plane (Measurement Type 17)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 7.5.3.9 Measurement of an oblique angle in a plane (measurement type 17) Measurement of an angle in an inclined plane ($AC_MEAS_TYPE = 17) The oblique plane is determined using three measuring points P1, P2 and P3. Figure 7-13 Oblique plane in G17 $AC_MEAS_TYPE = 17 defines two resulting angles α...
  • Page 486 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 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_SETANGLE[axis] Setpoint rotations around abscissa and ordinate *...
  • Page 487 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment $AC_MEAS_TYPE = 17 ; Set measurement type for oblique plane $AC_MEAS_ACT_PLANE = 0 ; Measuring plane is G17 _XX=$P_AXN1 ; Define axes according to the plane _YY=$P_AXN2 _ZZ=$P_AXN3 G17 G1 _XX=10 _YY=10 F1000 ;...
  • Page 488: Redefine Measurement Around A Wcs Reference Frame (Measurement Type 18)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment if $AC_MEAS_RESULTS[1] <> 4 setal(61000 + $AC_MEAS_RESULTS[1]) endif $P_UIFR[2] = $AC_MEAS_FRAME ; Write measurement frame in data management (G55) G55 G0 AX[_xx]=10 AX[_yy]=10 ; Activate frame and traverse 7.5.3.10 Redefine measurement around a WCS reference frame (measurement type 18) Redefine WCS coordinate system ($AC_MEAS_TYPE = 18)
  • Page 489 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Measurement of plane The plane is measured in one measuring cycle. The cycle records the three 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.
  • Page 490 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Input variable Meaning $AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified (D0) * $AC_MEAS_INPUT[0] Unless otherwise specified, the points are not projected in a plane * 0: Points are not projected on a plane 1: Points are projected in the active plane or in the selected plane $AC_MEAS_TYPE...
  • Page 491 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment G1 _XX=20 _YY=10 F1000 ; 2. Approach measuring point MEAS = 1 _ZZ=... $AA_MEAS_POINT2[_xx] = $AA_MW[_xx] ; Assign measurement value to abscissa $AA_MEAS_POINT2[_yy] = $AA_MW[_yy] ; Assign measurement value to ordinate $AA_MEAS_POINT2[_zz] = $AA_MW[_zz] ;...
  • Page 492: Measurement Of A 1-, 2- And 3-Dimensional Setpoint Selection (Measurement Type 19, 20, 21)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 7.5.3.11 Measurement of a 1-, 2- and 3-dimensional setpoint selection (measurement type 19, 20, 21) 1-dimensional setpoint value ($AC_MEAS_TYPE = 19) With this measurement method, it is possible to define exactly one setpoint for the abscissa, the ordinate and the applicate.
  • Page 493 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment $AC_MEAS_ACT_PLANE = 0 ; Measuring plane is G17 _XX=$P_AXN1 ; Define axes according to the plane _YY=$P_AXN2 _ZZ=$P_AXN3 ; Assign measured values $AA_MEAS_POINT1[_xx] = $AA_MW[_xx] ; Assign measurement value to abscissa $AA_MEAS_POINT1[_yy] = $AA_MW[_yy] ;...
  • Page 494 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 20: Output variable Meaning $AC_MEAS_FRAME Result frame with rotations and translation Example 2-dimensional setpoint selection Program code Comment DEF INT RETVAL DEF REAL _CORMW_XX, _CORMW_YY, _CORMW_ZZ...
  • Page 495 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 3-dimensional setpoint value ($AC_MEAS_TYPE = 21) Using this measurement method, it is possible to define 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.
  • Page 496: Measuring A Measuring Point In Any Coordinate System (Measurement Type 24)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment _YY=$P_AXN2 _ZZ=$P_AXN3 ; Assign measured values $AA_MEAS_POINT1[_xx] = $AA_MW[_xx] ; Assign measurement value to abscissa $AA_MEAS_POINT1[_yy] = $AA_MW[_yy] ; Assign measurement value to ordinate $AA_MEAS_POINT1[_zz] = $AA_MW[_zz] ;...
  • Page 497 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Figure 7-15 Coordinate transformation of a position 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 $AC_MEAS_P1:COORD Default is 0: WCS, 1: BCS, 2: MCS * $AC_MEAS_P2_COORD...
  • Page 498 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Example WCS coordinate transformation of a measured position Program code Comment DEF INT RETVAL DEF INT LAUF DEF REAL_CORMW_xx, _CORMW_yy, _CORMW_zz DEF AXIS _XX, _YY, _ZZ $TC_DP1[1,1]=120 ; Tool type end mill $TC_DP2[1,1]=20 $TC_DP3[1,1]=0 ;...
  • Page 499 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Program code Comment $AC_MEAS_P1_COORD=0 ; Converting a position from WCS into WCS' $AC_MEAS_P2_COORD=0 ; Set WCS ; Entire frame results in CTRANS(_xx,0,_yy,0,_zz,5,A,6,B,0) ; Stop cycle frame $AC_MEAS_CHSER=$MC_MM_SYSTEM_FRAME_MASK B_AND 'B1011111' $AC_MEAS__NCBFR='B0' ;...
  • Page 500: Measurement Of A Rectangle (Measurement Type 25)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 7.5.3.13 Measurement of a rectangle (measurement type 25) Measuring points for determining a rectangle ($AC_MEAS_TYPE = 25) To determine a rectangle, tool dimensions are required in the following working planes. ●...
  • Page 501: Measurement For Saving Data Management Frames (Measurement Type 26)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Input variable Meaning $AC_MEAS_INPUT[0] Without specification of outer corner * =0: Measurement for outer corner =1: Measurement for inner corner $AC_MEAS_TYPE * optional The following output variables are written for measurement type 25: Output variable Meaning $AC_MEAS_FRAME...
  • Page 502: Measurement For Restoring Backed-Up Data Management Frames (Measurement Type 27)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring The values of the following variables are evaluated for measurement type 26: Input variable Meaning $AC_MEAS_VALID Validity bits for input variables $AC_MEAS_CHSFR Bit mask system frames from data management. * If this variable is not written, all system frames are backed up.
  • Page 503: Measurement For Defining An Additive Rotation For Taper Turning (Measurement Type 28)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Input variable Meaning $AC_MEAS_UIFR Number of settable frames from data management. * Range of 1: G54 to G99: G599. If this variable is not written, all settable frames are restored. $AC_MEAS_TYPE * optional 7.5.3.16...
  • Page 504: Tool Measuring

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 28: Output variable Meaning $AC_MEAS_FRAME Result with rotation 7.5.4 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.
  • Page 505: Types Of Workpiece Measurement

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 7.5.5 Types of workpiece measurement 7.5.5.1 Measurement of tool lengths (measurement type 10) Tool length measurement on a reference part that has already been measured ($AC_MEAS_TYPE = The tool length can be measured on a previously measured reference part. The plane selection depends on the position of the tool: ●...
  • Page 506 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Input variable Meaning $AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise specified * $AC_MEAS_TYPE * optional The following output variables are written for measurement type 10: Output variable Meaning $AC_MEAS_TOOL_LENGTH Tool length $AC_MEAS_RESULTS[0] Tool length in x $AC_MEAS_RESULTS[1]...
  • Page 507: Measurement Of Tool Diameter (Measurement Type 11)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 7.5.5.2 Measurement of tool diameter (measurement type 11) Tool diameter measurement on a reference part ($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.
  • Page 508: Measurement Of Tool Lengths With Zoom-In Function (Measurement Type 22)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 11: Output variable Meaning $AC_MEAS_TOOL_DIAMETER Tool diameter 7.5.5.3 Measurement of tool lengths with zoom-in function (measurement type 22) Tool length with zoom-in function Tool length measurement with zoom-in function ($AC_MEAS_TYPE = 22) If a zoom-in function is available on the machine, it can be used to determine the tool dimensions.
  • Page 509: Measuring A Tool Length With Stored Or Current Position (Measurement Type 23)

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 22: Output variable Description $AC_MEAS_RESULT[0] Tool length in x $AC_MEAS_RESULT[1] Tool length in y $AC_MEAS_RESULT[2] Tool length in z $AC_MEAS_RESULT[3] Tool length L1 $AC_MEAS_RESULT[4] Tool length L2 $AC_MEAS_RESULT[5]...
  • Page 510 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring The values of the following input variables are evaluated for measurement type 23: Input variable Description $AC_MEAS_VALID Validity bits for input variables $AA_MEAS_POINT1[axis] Current or marked position $AC_MEAS_P1_COORD Coordinate system of the measuring point * $AA_MEAS_SETPOINT[axis] Setpoint position (minimum one geo axis must be specified) $AC_MEAS_SET_COORD...
  • Page 511: Measurement Of A Tool Length Of Two Tools With The Following Orientation

    M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring 7.5.5.5 Measurement of a tool length of two tools with the following orientation: Tool orientation For tools whose orientation points to the toolholder shows must be set in the system variables $AC_MEAS_TOOL_MASK, bit 9 = 1 (0x200).
  • Page 512 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Two turning tools each with their own reference point with a tool counter-orientation in the approach direction Settings in the system data: Left-hand tool: Approach direction and tool orientation +x System variable Meaning $AC_MEAS_TOOL_MASK = 0x2 + 0x200...
  • Page 513 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Settings in the system data: Left-hand tool: Approach direction and tool orientation +x System variable Meaning $AC_MEAS_TOOL_MASK = 0x2 Tool position in x direction (G19) $AC_MEAS_DIR_APPROACH = 0 Approach direction +x Right-hand tool: Approach direction and tool orientation -x $AC_MEAS_TOOL_MASK = 0x40 + 0x200 Tool position in x direction +...
  • Page 514 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Two milling tools each with their own reference point, tool orientation perpendicular to the approach direction Settings in the system data: Left-hand tool: Approach direction +x and tool orientation -y System variable Meaning $AC_MEAS_TOOL_MASK = 0x80...
  • Page 515 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Two milling tools each with a reference point, tool orientation perpendicular to the approach direction Two milling tools with one reference point with a tool orientation in -y In the present layout, the tool position $AC_MEAS_TOOL_MASK and approach direction to the workpiece $AC_MEAS_DIR_APPROACH must be set as follows: Left-hand tool: Approach direction +x and tool orientation -y System variable...
  • Page 516 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring In the present layout, the tool position $AC_MEAS_TOOL_MASK and approach direction to the workpiece $AC_MEAS_DIR_APPROACH must be set as follows: Left-hand tool: Approach direction +x and tool orientation -y System variable Meaning $AC_MEAS_TOOL_MASK = 0x80 Tool position in -y direction...
  • Page 517 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Two milling tools each with their own reference point with tool counter-orientation in the approach direction Two milling tools each with their own reference point with a tool orientation in the approach direction In the present layout, the tool position $AC_MEAS_TOOL_MASK and approach direction to the workpiece $AC_MEAS_DIR_APPROACH must be set as follows:...
  • Page 518 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Two milling tools each with a reference point with tool counter-orientation in the approach direction Two milling tools with one reference point with a tool position opposite to the orientation In the present layout, the tool position $AC_MEAS_TOOL_MASK and approach direction to the workpiece $AC_MEAS_DIR_APPROACH must be set as follows: Left-hand tool: Approach direction and tool orientation +x...
  • Page 519 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring In the present layout, the tool position $AC_MEAS_TOOL_MASK and approach direction to the workpiece $AC_MEAS_DIR_APPROACH must be set as follows: Left-hand tool: Approach direction and tool orientation +x System variable Meaning $AC_MEAS_TOOL_MASK = 0x2 Tool position in x direction (G19)
  • Page 520 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Different tools in the WCS Figure 7-22 Two turning tools each with their own reference point Settings in the system data: Left-hand tool: Approach direction +x and tool orientation -y System variable Meaning $AC_MEAS_TOOL_MASK = 0x0...
  • Page 521 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Figure 7-23 Two milling tools each with its own reference point Settings in the system data: Left-hand tool: Approach direction +x and tool orientation -y System variable Meaning $AC_MEAS_TOOL_MASK = 0x80 Tool position in -y direction $AC_MEAS_DIR_APPROACH = 0 Approach direction +x...
  • Page 522 M5: Measurement 7.5 Setting zeros, workpiece measuring and tool measuring Figure 7-24 Two milling tools rotated at 90 degrees each with their own reference point Settings in the system data: Left-hand tool: Approach direction +x and tool orientation -y System variable Meaning $AC_MEAS_TOOL_MASK = 0x2 Tool position in x direction (G19)
  • Page 523: Measurement Accuracy And Functional Testing

    M5: Measurement 7.6 Measurement accuracy and functional testing Measurement accuracy and functional testing 7.6.1 Measurement accuracy The measuring accuracy is affected by the following parameters: ● Delay time of the measuring signal (T Delay ● Traversal speed during the measurement (v Delay time compensation of the measuring signal (T Delay The delay time of the measuring signal, i.e.
  • Page 524: Probe Function Test

    M5: Measurement 7.6 Measurement accuracy and functional testing 7.6.2 Probe function test Example of function test Table 7- 7 Program code Comment %_N_PRUEF_MESSTASTER_MPF ;$PATH=/_N_MPF_DIR ;Testing program probe connection N05 DEF INT MTSIGNAL ;Flag for trigger status N10 DEF INT ME_NR=1 ;...
  • Page 525: Simulated Measuring

    M5: Measurement 7.7 Simulated measuring Simulated measuring 7.7.1 General functionality Brief description To make measurements at real machines, probes must be connected which supply switching signals at certain positions. Probes are not used when making measurements in simulated environments - the switching positions are specified in a different way. Simulated measuring supports two ways of entering switching positions: ●...
  • Page 526 M5: Measurement 7.7 Simulated measuring Figure 7-25 Position-dependent switch request The measured value is the actual value of the axis at the instant in time that the switching signal programmed in the measuring block occurs (rising / falling edge). If several axes are programmed in a measuring block, then a dedicated switching position is obtained for each axis by the position offset that is axially taken into consideration.
  • Page 527: External Switch Request

    M5: Measurement 7.7 Simulated measuring 7.7.3 External switch request Function The "external switching request" is selected using the NCK specific machine data by entering the number (1...8) of the digital output being used: ● MD13230 $MN_MEAS_PROBE_SOURCE = The probe signal is triggered by controlling the configured digital output.
  • Page 528: System Variable

    M5: Measurement 7.8 Channels - only 840D sl 7.7.4 System variable For simulated measuring, the following system variables have the same functionality as for real measuring: ● $AC_MEA (probe has responded) ● $AA_MEAACT (axial measuring active) ● $AA_MM (acquired probe position (MCS)) ●...
  • Page 529: Measuring Mode 2

    M5: Measurement 7.8 Channels - only 840D sl Measurement with two encoders - actual values for two encoders Program code MEASA[X] = (31, 1, -1) G01 X100 F100 STOPRE IF $AC_MEA[1]==FALSE gotof ENDE R10=$AA_MM1[X] R11=$AA_MM2[X] R12=$AA_MM3[X] R13=$AA_MM4[X] 7.8.2 Measuring mode 2 Supplementary conditions ●...
  • Page 530 M5: Measurement 7.8 Channels - only 840D sl Continuous measurement on completion of programmed traversing movement Program code Comment DEF REAL MESSWERT[100] DEF INT INDEX=0 MEAC[x]=(1, 1, -1) G01 X1000 F100 MEAC[X]=(0) ; Abort R1=$AC_FIFO1[4] ;Number of measured values FOR INDEX=0 TO R1 MESSWERT[INDEX]=$AC_FIFO1[0] ;...
  • Page 531: Functional Test And Repeat Accuracy

    M5: Measurement 7.8 Channels - only 840D sl 7.8.4 Functional test and repeat accuracy Function test Program code Comment %_N_PRUEF_MESSTASTER_MPF ;$PATH=/_N_MPF_DIR ;Testing program probe connection N05 DEF INT MTSIGNAL ;Flag for trigger status N10 DEF INT ME_NR=1 ; measurement input number N20 DEF REAL MESSWERT_IN_X N30 G17 T1 D1 ;...
  • Page 532: Data Lists

    M5: Measurement 7.9 Data lists Program code Comment N10 DEF REAL MESSWERT_IN_X[10] N15 G17 T1 D1 ; Initial conditions, : Tool compensation ; preselect for probe N20 _ANF: G0 X0 F150 ← ; Prepositioning in the measured axis N25 MEAS=+1 G1 X100 ← ;...
  • Page 533: Channel-Specific Machine Data

    M5: Measurement 7.9 Data lists 7.9.1.2 Channel-specific machine data Number Identifier: $MC_ Meaning 20360 TOOL_PARAMETER_DEF_MASK Definition of tool parameters 28264 LEN_AC_FIFO Length of $AC_FIFO ... FIFO variables 7.9.2 System variables Table of all the input values Identifier Meaning $AC_FIFO1…10 FIFO variable 1 to 10 $AC_MEAS_SEMA Interface assignment $AC_MEAS_VALID...
  • Page 534 M5: Measurement 7.9 Data lists Identifier Meaning $AC_MEAS_CHSFR Frame chain setting: System frames $AC_MEAS_NCBFR Frame chain setting: Global basic frames $AC_MEAS_CHBFR Frame chain setting: Channel basic frames $AC_MEAS_UIFR Frame chain setting: Settable frames $AC_MEAS_PFRAME Frame chain setting: Program frame $AC_MEAS_T_NUMBER Tool selection $AC_MEAS_D_NUMBER Cutting edge selection...
  • Page 535: N3: Software Cams, Position Switching Cycles - Only 840D Sl

    N3: Software cams, position switching cycles - only 840D sl Brief Description Function The "Software cams" function generates position-dependent switching signals for axes that supply an actual position value (machine axes) and for simulated axes. These cam signals can be output to the PLC and also to the NCK I/Os. The cam positions at which signal outputs are set can be defined and altered via setting data.
  • Page 536: Cam Signals And Cam Positions

    N3: Software cams, position switching cycles - only 840D sl 8.2 Cam signals and cam positions Cam signals and cam positions 8.2.1 Generation of cam signals for separate output 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.
  • Page 537 N3: Software cams, position switching cycles - only 840D sl 8.2 Cam signals and cam positions Figure 8-2 Software cams for linear axis (plus cam < minus cam) Modulo rotary axes The switching edges of the cam signals are generated as a function of the rotary axis traversing direction: ●...
  • Page 538 N3: Software cams, position switching cycles - only 840D sl 8.2 Cam signals and cam positions Figure 8-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.
  • Page 539: Generation Of Cam Signals With Gated Output

    N3: Software cams, position switching cycles - only 840D sl 8.2 Cam signals and cam positions Figure 8-4 Software cams for modulo rotary axis (plus cam - minus cam > 180 degrees) 8.2.2 Generation of cam signals with gated output The plus and minus cam output signals are gated in the case of: ●...
  • Page 540 N3: Software cams, position switching cycles - only 840D sl 8.2 Cam signals and cam positions Linear axes Figure 8-5 Position switching signals for linear axis (minus cam < plus cam) Figure 8-6 Position switching signals for linear axis (plus cam < minus cam) Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 541 N3: Software cams, position switching cycles - only 840D sl 8.2 Cam signals and cam positions Modulo rotary axis The default signal response for modulo rotary axes is dependent on the cam width: Figure 8-7 Software cams for modulo rotary axis (plus cam - minus cam < 180 degrees) Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 542 N3: Software cams, position switching cycles - only 840D sl 8.2 Cam signals and cam positions Figure 8-8 Software cams for modulo rotary axis (plus cam - minus cam > 180 degrees) Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 543: Cam Positions

    N3: Software cams, position switching cycles - only 840D sl 8.2 Cam signals and cam positions Suppression of signal inversion With the following setting, selection of signal inversion for "plus cam - minus cam > 180 degrees" can be suppressed. MD10485 SW_CAM_MODE bit 1=1 Figure 8-9 Software cams for modulo rotary axis (plus cam - minus cam >...
  • Page 544 N3: Software cams, position switching cycles - only 840D sl 8.2 Cam signals and cam positions Position of plus cams 17 - 24 • SD41505 SW_CAM_PLUS_POS_TAB_3[n] Position of minus cams 25 - 32 • SD41506 SW_CAM_MINUS_POS_TAB_4[n] Position of plus cams 25 - 32 •...
  • Page 545: Lead/Delay Times (Dynamic Cam)

    N3: Software cams, position switching cycles - only 840D sl 8.2 Cam signals and cam positions Axis/cam assignment A cam pair is assigned to a machine axis using the general machine data: MD10450 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.
  • Page 546: Output Of Cam Signals

    N3: Software cams, position switching cycles - only 840D sl 8.3 Output of cam signals Lead or delay time in setting data The second lead or delay time is entered into the following general setting data: (lead or delay time at the minus •...
  • Page 547: Output Of Cam Signals To Plc

    N3: Software cams, position switching cycles - only 840D sl 8.3 Output of cam signals 8.3.2 Output of cam signals to PLC Output to PLC The status of the cam signals for all machine axes with activated software cams is output to the PLC.
  • Page 548 N3: Software cams, position switching cycles - only 840D sl 8.3 Output of cam signals Hardware assignment The assignment to the hardware bytes used is made for each eight cam pairs in the following general machine data: Hardware assignment for output of cams •...
  • Page 549: Timer-Controlled Cam Signal Output

    N3: Software cams, position switching cycles - only 840D sl 8.3 Output of cam signals 8.3.4 Timer-controlled cam signal output Timer-controlled output A significantly higher degree of accuracy can be achieved by outputting the cam signals independently of the position control cycle using a timer interrupt. The following machine data can be used to select the timer-controlled output to the 4 NCU onboard outputs for 4 cam pairs: MD10480 SW_CAM_TIMER_FASTOUT_MASK (screen form for the output of cam signals...
  • Page 550: Independent, Timer-Controlled Output Of Cam Signals

    N3: Software cams, position switching cycles - only 840D sl 8.3 Output of cam signals PLC interface The NCK image of the onboard outputs and the status of the plus and minus cams is displayed on the PLC interface. However, these signals are irrelevant or correspondingly inaccurate for the timer-controlled cam output version, as described in the following paragraphs.
  • Page 551: Position-Time Cams

    N3: Software cams, position switching cycles - only 840D sl 8.4 Position-time cams Signal generation Previously, it had to be specified in which way the signals to be logically combined should be generated. This is realized using bit 1 in machine data: MD10485 SW_CAM_MODE (behavior of the software cams) Value Signal generation...
  • Page 552 N3: Software cams, position switching cycles - only 840D sl 8.4 Position-time cams Properties of position-time cams ● The pulse duration is independent of the axis velocity and travel direction reversal. ● The pulse duration is independent of changes in the axis position (Preset). ●...
  • Page 553: Supplementary Conditions

    N3: Software cams, position switching cycles - only 840D sl 8.5 Supplementary Conditions Supplementary Conditions Availability of function "Software cams, position switching signals" The function is an option ("position-switching signals/cam controller"), which must be assigned to the hardware through the license management. Data lists 8.6.1 Machine data...
  • Page 554: Setting Data

    N3: Software cams, position switching cycles - only 840D sl 8.6 Data lists 8.6.2 Setting data 8.6.2.1 General setting data Number Identifier: $SN_ Description 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...
  • Page 555: N4: Own Channel - Only 840D Sl

    N4: Own channel - only 840D sl Brief Description Subfunctions The functions specific to punching and nibbling operations comprise the following: ● Stroke control ● Automatic path segmentation ● Rotatable punch and die ● Clamp protection They are activated and deactivated via language commands. Stroke control 9.2.1 General information...
  • Page 556: High-Speed Signals

    N4: Own channel - only 840D sl 9.2 Stroke control 9.2.2 High-speed signals Functionality 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.
  • Page 557 N4: Own channel - only 840D sl 9.2 Stroke control The chronological sequence of events for punching and nibbling is controlled by the two signals A and E Set by the NCK and identical to stroke initiation. Defines the status of the punching unit and identical to the "Stroke active" signal. The signal states characterize and define times t to t in the following way:...
  • Page 558: Criteria For Stroke Initiation

    N4: Own channel - only 840D sl 9.2 Stroke control 9.2.3 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.
  • Page 559 N4: Own channel - only 840D sl 9.2 Stroke control Programming Activation Description Reach the coarse in- The signal is output once the axes have reached the G602 position window coarse in-position 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' Reach the fine in-...
  • Page 560: Axis Start After Punching

    N4: Own channel - only 840D sl 9.2 Stroke control 9.2.4 Axis start after punching Input signal "Stroke ON" The start of an axis motion after stroke initiation is controlled via input signal "Stroke ON". Figure 9-3 Signal chart: Axis start after punching In this case, the time interval between t and t' acts as a switching-time-dependent reaction...
  • Page 561: Plc Signals Specific To Punching And Nibbling

    N4: Own channel - only 840D sl 9.2 Stroke control 9.2.5 PLC signals specific to punching and nibbling Function 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.
  • Page 562: Signal Monitoring

    N4: Own channel - only 840D sl 9.3 Activation and deactivation 9.2.7 Signal monitoring Oscillating signal 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 this case, an alarm (22054 "undefined punching signal") can be generated as a function of machine data: MD26020 $MC_NIBBLE_SIGNAL_CHECK...
  • Page 563 N4: Own channel - only 840D sl 9.3 Activation and deactivation Group 36 This group includes the commands which have only a preparatory character and which determine the real nature of the punching function: = punching with delay ON PDELAYON = punching with delay OFF PDELAYOF Since the PLC normally needs to perform some preliminary tasks with respect to these preparatory...
  • Page 564 N4: Own channel - only 840D sl 9.3 Activation and deactivation Nibbling ON activates the nibbling function and deselects the other functions in G group35 (e.g. In contrast to punching, the first stroke is made at the start point of the block with the activating command, i.e.
  • Page 565 N4: Own channel - only 840D sl 9.3 Activation and deactivation Programming example: Program code Comment N100 Y30 SPOF ; position without punch initiation N110 Y100 PON ; Activate punching, punch initiation at the end of the ; positioning operation (Y=100) PONS Punching ON (in position control cycle) behaves in the same way as...
  • Page 566 N4: Own channel - only 840D sl 9.3 Activation and deactivation Program code Comment N180 X800 PON ; activate punching. After reaching the ; end position, the punch stroke is output delayed N190 PDELAYOF X700 ; Deactivate punching with delay, normal ;...
  • Page 567: Functional Expansions

    N4: Own channel - only 840D sl 9.3 Activation and deactivation Program code Comment N190 SPIF1 X700 ; All further strokes are controlled ; with the first interface. 9.3.2 Functional expansions Alternate interface Machines that alternately use a second punching unit or a comparable medium can be switched over to a second I/O pair.
  • Page 568 N4: Own channel - only 840D sl 9.3 Activation and deactivation Automatically activated pre-initiation time Dead times due to the reaction time of the punching unit can be minimized if the stroke can be initiated before the interpolation window of the axes is reached. The reference time for this is the interpolation end.
  • Page 569 N4: Own channel - only 840D sl 9.3 Activation and deactivation 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 (example) can be taken to prevent this: Program code N...
  • Page 570 N4: Own channel - only 840D sl 9.3 Activation and deactivation Example 2: The characteristic defines the following acceleration rates: Distance Acceleration between holes < 3 mm The axis accelerates at a rate corresponding to 75 % of maximum acceleration. 3 - 8 mm Acceleration is reduced to 25 %, proportional to the spacing.
  • Page 571: Compatibility With Earlier Systems

    N4: Own channel - only 840D sl 9.3 Activation and deactivation Block search In the case of a search for a block containing a nibbling function, it is possible to program whether the punch stroke is executed at the block beginning or suppressed. The setting is programmed in machine data: MD11450 $MN_SEARCH_RUN_MODE Value...
  • Page 572 N4: Own channel - only 840D sl 9.3 Activation and deactivation Examples Punching/nibbling OFF DEFINE M20 AS SPOF Punching with auxiliary function output DEFINE M20 AS SPOF M=20 Punching/nibbling OFF and punching with delay OFF DEFINE M20 AS SPOF PDELAYOF Nibbling ON DEFINE M22 AS SON Nibbling ON with auxiliary function output...
  • Page 573: Automatic Path Segmentation

    N4: Own channel - only 840D sl 9.4 Automatic path segmentation Automatic path segmentation 9.4.1 General information Function One of the following two methods can be applied to automatically segment a programmed traversing path: ● Path segmentation with maximum path segment programmed via language command ●...
  • Page 574 N4: Own channel - only 840D sl 9.4 Automatic path segmentation ● 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. ●...
  • Page 575: Operating Characteristics With Path Axes

    N4: Own channel - only 840D sl 9.4 Automatic path segmentation 9.4.2 Operating characteristics with path axes MD26010 All axes defined and programmed via machine data: MD26010 $MC_PUNCHNIB_AXIS_MASK until the programmed are traversed along path sections of identical size with end point is reached.
  • Page 576 N4: Own channel - only 840D sl 9.4 Automatic path segmentation If the programmed path segmentation is not an integral multiple of the total path, then the feed path is reduced. X2/Y2: Programmed traversing distance SPP: Programmed SPP value SPP': Automatically rounded-off offset distance Figure 9-4 Path segmentation...
  • Page 577 N4: Own channel - only 840D sl 9.4 Automatic path segmentation Program code Comment N1 G01 X0 Y0 SPOF ; position without punch initiation N2 X75 SPN=3 SON ; Activate nibbling. The total path is ; divided into three segments. Before the first ;...
  • Page 578 N4: Own channel - only 840D sl 9.4 Automatic path segmentation Example Figure 9-5 Workpiece Extract from program Program code Comment N100 G90 X130 Y75 F60 SPOF ; Positioning to starting point (1) of the ; vertical nibbling path sections N110 G91 Y125 SPP=4 SON ;...
  • Page 579: Response In Connection With Single Axes

    N4: Own channel - only 840D sl 9.4 Automatic path segmentation Program code Comment N170 G02 G91 X-62.5 Y62.5 I0 J62.5 SON ; Incremental circular interpolation with ; interpolation parameters, nibbling ; activating N180 G00 G90 Y300 SPOF ; Positioning 9.4.3 Response in connection with single axes MD26016...
  • Page 580 N4: Own channel - only 840D sl 9.4 Automatic path segmentation MD26016 $MC_PUNCH_PARTITION_TYPE=0 (default setting) With this setting, 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.
  • Page 581 N4: Own channel - only 840D sl 9.4 Automatic path segmentation MD26016 $MC_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 example, the C axis already reaches the programmed end position when C=45...
  • Page 582 N4: Own channel - only 840D sl 9.4 Automatic path segmentation MD26016 $MC_PUNCH_PARTITION_TYPE=2 MD26016=2 is set in cases where the axis must behave as described above in linear interpolation mode, but according to the default setting in circular interpolation mode (see 1st case).
  • Page 583 N4: Own channel - only 840D sl 9.4 Automatic path segmentation Supplementary conditions ● If the C axis is not defined as a "Punch-nibble axis", then the C axis motion path is not segmented in block in the above example nor is a stroke initiated at the block end. ●...
  • Page 584: Rotatable Tool

    N4: Own channel - only 840D sl 9.5 Rotatable tool Rotatable tool 9.5.1 General information Function overview The following two functions are provided for nibbling/punching machines with rotatable punch and lower die: ● Coupled motion for synchronous rotation of punch and die ●...
  • Page 585: Coupled Motion Of Punch And Die

    N4: Own channel - only 840D sl 9.5 Rotatable tool 9.5.2 Coupled motion of punch and die Function 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"...
  • Page 586: Tangential Control

    N4: Own channel - only 840D sl 9.5 Rotatable tool 9.5.3 Tangential control Function 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"...
  • Page 587 N4: Own channel - only 840D sl 9.5 Rotatable tool Example: Linear interpolation The punching/nibbling machine has a rotatable punch and die with separate drives. Programming example: Program code Comment N2 TANG (C, X, Y, 1, "B") ; Definition of leading and following axes, ;...
  • Page 588 N4: Own channel - only 840D sl 9.5 Rotatable tool Figure 9-7 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. Programming example: Program code Comment...
  • Page 589 N4: Own channel - only 840D sl 9.5 Rotatable tool Program code Comment ; Offset angle and tangential ; alignment along the circular path N15 G0 X70 Y10 SPOF ; Positioning N17 TANGON (C, 90) ; Activate tangential control ; with offset 90° N20 G03 X35,86 Y24,14 CR=20 SPP=16 SON ;...
  • Page 590: Protection Zones

    N4: Own channel - only 840D sl 9.6 Protection zones Figure 9-8 Illustration of programming example in XY plane Protection zones Clamping protection zone 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.
  • Page 591: Examples

    N4: Own channel - only 840D sl 9.8 Examples Examples 9.8.1 Examples of defined start of nibbling operation Example 1 Example of defined start of nibbling operation Program code Comment N10 G0 X20 Y120 SPP= 20 ; Position 1 is approached N20 X120 SON ;...
  • Page 592 N4: Own channel - only 840D sl 9.8 Examples Example 2 This example utilizes the "Tangential control" function. Z has been selected as the name of the tangential axis. Program code Comment N5 TANG (Z, X, Y, 1, "B") ; Define tangential axis N8 TANGON (Z, 0) ;...
  • Page 593 N4: Own channel - only 840D sl 9.8 Examples Examples 3 and 4 for defined start of nibbling Example 3: Programming of SPP Program code Comment N5 G0 X10 Y10 ; Positioning N10 X90 SPP=20 SON ; Defined start of nibbling, ;...
  • Page 594 N4: Own channel - only 840D sl 9.8 Examples Examples 5 and 6 without defined start of nibbling Example 5 Programming of SPP Program code Comment N5 G0 X10 Y30 ; Positioning N10 X90 SPP=20 PON ; No defined start of nibbling, ;...
  • Page 595 N4: Own channel - only 840D sl 9.8 Examples Example 7 Application example of SPP programming Figure 9-10 Workpiece Extract from program: Program code Comment N100 G90 X75 Y75 F60 PON ; Positioning to starting point (1) of the ; vertical line of holes, punch single hole N110 G91 Y125 SPP=25 PON ;...
  • Page 596: Data Lists

    N4: Own channel - only 840D sl 9.9 Data lists Data lists 9.9.1 Machine data 9.9.1.1 General machine data Number Identifier: $MN_ Description 11450 SEARCH_RUN_MODE Block search parameter settings 9.9.1.2 Channelspecific machine data Number Identifier: $MC_ Description 20150 GCODE_RESET_VALUES[n] Reset G groups 26000 PUNCHNIB_ASSIGN_FASTIN Hardware assignment for input-byte with stroke...
  • Page 597: Signals

    N4: Own channel - only 840D sl 9.9 Data lists 9.9.3 Signals 9.9.3.1 Signals to channel Signal name SINUMERIK 840D sl SINUMERIK 828D No stroke enable DB21, ..DBX3.0 Manual stroke initiation DB21, ..DBX3.1 Stroke suppression DB21, ..DBX3.2 Stroke inoperative DB21, ...
  • Page 598 N4: Own channel - only 840D sl 9.9 Data lists Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 599: P2: Positioning Axes

    P2: Positioning axes 10.1 Product brief Axes for auxiliary movements In addition to axes for machining a workpiece, modern machine tools can also be equipped with axes for auxiliary movements, e.g.: ● Axis for tool magazine ● Axis for tool turret ●...
  • Page 600 P2: Positioning axes 10.1 Product brief Note "Positioning axis/Auxiliary spindle" option Axes for auxiliary movements must not be interpolating ("full-value") NC axes. Auxiliary movements may also be carried out using special axes, which can be obtained using the "Positioning axis/Auxiliary spindle" option. Functional restrictions Optional positioning axes/auxiliary spindles have fewer functions.
  • Page 601: Own Channel, Positioning Axis Or Concurrent Positioning Axis

    P2: Positioning axes 10.2 Own channel, positioning axis or concurrent positioning axis Motions and interpolations Each channel has one path interpolator and at least one axis interpolator with the following interpolation functions: ● for path interpolator: Linear interpolation ( ), circular interpolation ( ), spline interpolation, etc.
  • Page 602: Own Channel - Only 840D Sl

    P2: Positioning axes 10.2 Own channel, positioning axis or concurrent positioning axis 10.2.1 Own channel - only 840D sl A channel represents a self-contained NC which, with the aid of a part program, can be used to control the movement of axes, spindles and machine functions independently of other channels.
  • Page 603 P2: Positioning axes 10.2 Own channel, positioning axis or concurrent positioning axis Positioning axis types and block change The block change time depends on the programmed positioning axis type (refer also to Section "Block change (Page 621)"): Type Description The block change occurs when all path and positioning axes have reached their programmed end point.
  • Page 604 P2: Positioning axes 10.2 Own channel, positioning axis or concurrent positioning axis Dependencies Positioning axes are dependent in the following respects: ● A shared part program ● Starting of positioning axes only at block boundaries in the part program ● With rapid traverse movement path axes traverse as positioning axes in one of two different modes ●...
  • Page 605: Concurrent Positioning Axis

    P2: Positioning axes 10.2 Own channel, positioning axis or concurrent positioning axis 10.2.3 Concurrent positioning axis Concurrent positioning axes are positioning axes with the following properties: ● 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 part program is already being processed in the channel).
  • Page 606: Motion Behavior And Interpolation Functions

    P2: Positioning axes 10.3 Motion behavior and interpolation functions 10.3 Motion behavior and interpolation functions 10.3.1 Path interpolator and axis interpolator Path interpolator Every channel has a path interpolator for a wide range of interpolation modes such as linear interpolation ( ), circular interpolation ( ), spline interpolation etc.
  • Page 607 P2: Positioning axes 10.3 Motion behavior and interpolation functions Linear interpolation is always performed in the following cases: ● For a G-code combination with that does not allow positioning axis motion, e.g.: and MD20750 $MC_ALLOW_G0_IN_G96 == FALSE G961 ● With a combination of with ●...
  • Page 608: Autonomous Singleaxis Operations

    P2: Positioning axes 10.3 Motion behavior and interpolation functions Selection of interpolation type The interpolation type that should be effective for G0 is adjusted with the following machine data: MD20730 $MC_G0_LINEAR_MODE (interpolation response in G0) Value Meaning In the rapid traversing mode ( ) the non-linear interpolation is active.
  • Page 609 P2: Positioning axes 10.3 Motion behavior and interpolation functions Boundary conditions Axes/spindles currently operating according to the NC program are not 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. Transfer axis control to the PLC Description of the sequence 1.
  • Page 610 P2: Positioning axes 10.3 Motion behavior and interpolation functions Relinquish axis control by the PLC Description of the sequence: 1. PLC → NCK: The PLC returns axis control to the NCK DB31, ... DBX28.7 = 0 (PLC controls axis) 2. NCK: Checks whether an axial alarm is present. 3.
  • Page 611 P2: Positioning axes 10.3 Motion behavior and interpolation functions Use case 1: Cancel axis/spindle The behavior when canceling the axis/spindle function is the same as for "delete distance-to- go": DB21, ... DBX6.2 = 1 (delete distance-to-go) Use case 2: Stop axis/spindle The following traversing motion of the axis/spindle controlled from the main run is stopped: ●...
  • Page 612 P2: Positioning axes 10.3 Motion behavior and interpolation functions Use case 3: Continue axis/spindle Traversing motion interrupted after Use case 2 "Stop axis" should be continued. Description of the sequence: ● PLC → NCK: Continue axis DB31, ... DBX28.2 = 1 (continue) ●...
  • Page 613: Autonomous Single-Axis Functions With Nc-Controlled Esr

    P2: Positioning axes 10.3 Motion behavior and interpolation functions ● NCK confirms the execution: – DB31, ... DBX63.0 = 1 (reset executed) – DB31, ... DBX63.2 = 0 (axis stop active) – System variable $AA_SNGLAX_STAT = 1 ● NCK: Ends this operation. 10.3.4 Autonomous single-axis functions with NC-controlled ESR Extended stop numerically controlled...
  • Page 614 P2: Positioning axes 10.3 Motion behavior and interpolation functions Extended retract numerically controlled For retracting single axes, the value must have been programmed via POLFA(axis, type, value) and the following conditions must be met: ● The axis must be a single axis at the time of triggering ●...
  • Page 615: Positioning Axis Dynamic Response

    P2: Positioning axes 10.4 Positioning axis dynamic response POLFA(axis, 0/1/2) ; quick deactivation/activation WARNING No preprocessing limitation 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.
  • Page 616 P2: Positioning axes 10.4 Positioning axis dynamic response Revolutional feedrate In JOG mode the behavior of the axis/spindle also depends on the setting of SD41100 JOG_REV_IS_ACTIVE (revolutional feedrate when JOG active). ● If this setting data is active, an axis/spindle is always moved with revolutional feedrate MD32050 $MA_JOG_REV_VELO (revolutional feedrate with JOG) or MD32040 $MA_JOG_REV_VELO_RAPID (revolutional feedrate with JOG with rapid traverse overlay) as a function of the master spindle.
  • Page 617: Programming

    P2: Positioning axes 10.5 Programming The machine data to be used is determined by the set positioning axis dynamic response mode: MD18960 $MN_POS_DYN_MODE = Meaning The following is effective as maximum axial jerk for positioning axis motions: MD32430 $MA_JOG_AND_POS_MAX_JERK With active G75 (fixed-point approach): MD32431 $MA_MAX_AX_JERK[0] MD32431 $MA_MAX_AX_JERK[1] 10.5...
  • Page 618 P2: Positioning axes 10.5 Programming Example: Positioning axis type 2 Program code Comment POSA[Q2]=300 FA[Q2]=1500 ; Axis Q2 with feedrate 1,500mm/min at Position 300. Note Within a part 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.
  • Page 619 P2: Positioning axes 10.5 Programming Absolute dimension / incremental dimension The programming of the end point coordinates takes place in absolute dimension ( ) or in incremental dimension ( Example Meaning Programming the end point coordinates In absolute dimension G90 POS[Q1]=200 In absolute dimension G91 POS[Q1]=AC(200) In incremental dimension...
  • Page 620: Revolutional Feed Rate In External Programming

    P2: Positioning axes 10.5 Programming 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.
  • Page 621: Block Change

    P2: Positioning axes 10.6 Block change 10.6 Block change Since path and positioning axes are interpolated separately, they reach their programmed end positions at different instants in time. If path and positioning axes are programmed in a block together, then the block change behavior depends on the programmable type of positioning axes.
  • Page 622 P2: Positioning axes 10.6 Block change Type 2: Modal positioning axis (across blocks) Properties: ● The block change is performed as soon as all path axes have reached their programmed end-of-motion criterion ( G601 G602 G603 ● Programming the positioning axis: POSA[] ●...
  • Page 623: Settable Block Change Time

    P2: Positioning axes 10.6 Block change 10.6.1 Settable block change time Type 3: Conditional block-related positioning axis Properties: ● The block change is performed as soon as all path and positioning axes have reached their respective programmed end-of-motion criterion: – Path axes: G601 G602 G603...
  • Page 624 P2: Positioning axes 10.6 Block change Block change criterion: "Braking ramp" ( IPOBRKA If, when activating the block change criterion "brake ramp", a value is programmed for the optional parameter , then this becomes effective for the next positioning motion and is written into the setting data synchronized to the main run.
  • Page 625 P2: Positioning axes 10.6 Block change Programming ADISPOSA([,,]) Tolerance window for end-of-motion criterion ADISPOSA Effective: Modal Channel axis name (X, Y, ..) Reference of the tolerance window Type: Value range: Tolerance window not active Tolerance window with respect to the setpoint position Tolerance window with respect to actual position...
  • Page 626 P2: Positioning axes 10.6 Block change Changing the axis state 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. When the axis state changes, e.g. to followed by , the last programmed end-of- SPOS...
  • Page 627 P2: Positioning axes 10.6 Block change Block change criterion "braking ramp" in synchronized action In the technology cycle: Program code Comment FINEA ; End-of-motion criterion: "Exact stop fine" N10 POS[X]=100 ; The technology cycle block change is realized if the X axis has reached position 100 and "exact stop fine"...
  • Page 628: End Of Motion Criterion With Block Search

    P2: Positioning axes 10.6 Block change Block change criterion "braking ramp" and "tolerance window" in synchronized action In the technology cycle: Program code Comment FINEA ; End-of-motion criterion: "Exact stop fine" N10 POS[X]=100 ; The technology cycle block change is realized if the X axis has reached position 100 and "exact stop fine"...
  • Page 629: Control By The Plc

    P2: Positioning axes 10.7 Control by the PLC Example For two action blocks with end-of-motion criteria for three axes: Program code Comment N01 G01 POS[X]=20 POS[Y]=30 IPOENDA[X] ; Last programmed IPOENDA end-of-motion criterion N02 IPOBRKA(Y, 50) ; Second action block for the Y axis IPOENDA N03 POS[Z]=55 FINEA[Z] ;...
  • Page 630 P2: Positioning axes 10.7 Control by the PLC Channel-specific signals All channel-specific signals act to the same extent on path and positioning axes. Only the following signals are an exception: ● IS DB21, ... DBB4 ("Feedrate override") ● IS DB21, ... DBX6.2 ("Delete distance to go") Axisspecific signals Positioning axes have the following additional signals: ●...
  • Page 631: Starting Concurrent Positioning Axes From The Plc

    P2: Positioning axes 10.7 Control by the PLC A PLC axis with fixed assignment is a "neutral axis" on power up. For a travel request via the NC/PLC interface, a concurrent positioning axis automatically changes to a PLC axis without being interchanged beforehand.
  • Page 632: Plc-Controlled Axes

    P2: Positioning axes 10.7 Control by the PLC 10.7.2 PLC-controlled axes PLC actions The table below compares the following PLC actions with the corresponding NCK reactions for a machine axis 1: ● Start machine axis as PLC axis via FC 18 ●...
  • Page 633: Control Response Of Plc-Controlled Axes

    P2: Positioning axes 10.7 Control by the PLC PLC actions NCK reaction Start machine axis AX1 as PLC axis via DB31, ... DBX63.0 = 0 (reset executed) FC 18 Withdraw controller enable for AX1: Alarm 21612 "Axis %1 measuring system DB31, ...
  • Page 634 P2: Positioning axes 10.7 Control by the PLC Control response to PLC-controlled axis machine data: which is not controlled MD30460 $MA_BASE_FUNKTION_MASK exclusively by the PLC Bit 4 = 0 cannot be changed directly with axis replacement command GET (axis) or AXTOCHAN(axis, channel) to an axis controlled by the NC program, see * Note on axis replacement.
  • Page 635: Response With Special Functions

    P2: Positioning axes 10.8 Response with special functions 10.8 Response with special functions 10.8.1 Dry run (DRY RUN) The dry run feedrate is also effective for positioning axes unless the programmed feedrate is larger than the dry run feedrate. Activation of the dry run feed entered in SD42100 $SA_DRY_RUN_FEED can be controlled with SD42101 $SA_DRY_RUN_FEED_MODE.
  • Page 636: Examples

    P2: Positioning axes 10.9 Examples 10.9 Examples 10.9.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.
  • Page 637: Traversing Path Axes Without Interpolation With G0

    P2: Positioning axes 10.10 Data lists 10.9.1.1 Traversing path axes without interpolation with G0 Example in G0 for positioning axes Path axes traverse as positioning axes with no interpolation in rapid traverse mode (G0): Program code Comment ; Activation of nonlinear ;...
  • Page 638: Axis/Spindlespecific Machine Data

    P2: Positioning axes 10.10 Data lists 10.10.1.3 Axis/spindlespecific machine data Number Identifier: $MA_ Description 30450 IS_CONCURRENT_POS_AX Concurrent positioning axis 30460 BASE_FUNCTION_MASK Axis functions 32060 POS_AX_VELO Feedrate for positioning axis 32300 MAX_AX_ACCEL Maximum axis acceleration 32430 JOG_AND_POS_MAX_JERK Maximum axial jerk for positioning axis movements 32431 MAX_AX_JERK Maximum axial jerk for path movements...
  • Page 639: Signals From Channel

    P2: Positioning axes 10.10 Data lists 10.10.3.2 Signals from channel Signal name SINUMERIK 840D sl SINUMERIK 828D All axes stationary DB21, ..DBX36.3 DB3300.DBX4.3 Travel command minus DB21, ..DBX40.6 DB3300.DBX1000.6 Travel command plus DB21, ..DBX40.7 DB3300.DBX1000.7 10.10.3.3 Signals to axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D...
  • Page 640 P2: Positioning axes 10.10 Data lists Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 641: P5: Oscillation - Only 840D Sl

    P5: Oscillation - only 840D sl 11.1 Brief description 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 variants Oscillation functions can be classified according to the axis response at reversal points and with respect to infeed:...
  • Page 642: Asynchronous Oscillation

    P5: Oscillation - only 840D sl 11.2 Asynchronous oscillation 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, HMI, handwheel or directional keys.
  • Page 643: Influences On Asynchronous Oscillation

    P5: Oscillation - only 840D sl 11.2 Asynchronous oscillation ● 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.
  • Page 644 P5: Oscillation - only 840D sl 11.2 Asynchronous oscillation ● The feedrate can be influenced by the override (axial NC/PLC interface signal and programmable). ● If Dry Run is active, the dry run velocity setting is applied if it is higher than the currently programmed velocity.
  • Page 645 P5: Oscillation - only 840D sl 11.2 Asynchronous oscillation The following table explains the motional behavior in the exact stop range or at the reversal point, depending on the stop time input. Table 11- 1 Effect of stop time Stop time setting Response Interpolation continues without wait for exact stop Wait for coarse exact stop at reversal point...
  • Page 646 P5: Oscillation - only 840D sl 11.2 Asynchronous oscillation Table 11- 2 Operational sequence for deactivation of oscillation Function Inputs Explanation Deactivation at defined reversal Number of sparking-out strokes The oscillation movement is point equals 0, stopped at the appropriate no end position active reversal point Deactivation with specific...
  • Page 647 P5: Oscillation - only 840D sl 11.2 Asynchronous oscillation 2) End of oscillation: ● 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 positioning axis again and can then be used normally.
  • Page 648 P5: Oscillation - only 840D sl 11.2 Asynchronous oscillation 6) Setting control settings for sequence of movements: ● OSCTRL[oscillating axis] = (set options, reset options) The set options are defined as follows (the reset options deselect the settings): Table 11- 3 Set/reset options Option value Meaning...
  • Page 649 P5: Oscillation - only 840D sl 11.2 Asynchronous oscillation 7) Sparking-out strokes: ● 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.
  • Page 650: Asynchronous Oscillation Under Plc Control

    P5: Oscillation - only 840D sl 11.2 Asynchronous oscillation 11.2.2 Asynchronous oscillation under PLC control Activation The function can be selected from the PLC using the following setting data in all operating modes except for MDA Ref and JOG Ref.: SD43780 OSCILL_IS_ACTIVE (switch-on oscillation motion) Settings The following criteria can be controlled from the PLC via setting data: Activation and...
  • Page 651 P5: Oscillation - only 840D sl 11.2 Asynchronous oscillation Without PLC control If the PLC does not have control over the axis, then the axis is treated like a normal positioning axis ( ) during asynchronous oscillation. POSA Delete distance-to-go Channel-specific delete distance-to-go is ignored.
  • Page 652 P5: Oscillation - only 840D sl 11.2 Asynchronous oscillation Follow-up mode There is no difference to positioning axes. 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 across block boundaries).
  • Page 653: Oscillation Controlled By Synchronized Actions

    P5: Oscillation - only 840D sl 11.3 Oscillation controlled by synchronized actions Block search In Block Search the last valid oscillation function is registered and the machine data OSCILL_MODE_MASK is activated (default) accordingly, either directly after NC start (when approaching the start position after block search) or after reaching the start position after block search.
  • Page 654 P5: Oscillation - only 840D sl 11.3 Oscillation controlled by synchronized actions 6. Do not start partial infeed too early (see Section "Do not start partial infeed too early (Page 662)"). Figure 11-1 Arrangement of oscillation and infeed axes plus terms Legend: U1: Reversal point 1 U2: Reversal point 2...
  • Page 655 P5: Oscillation - only 840D sl 11.3 Oscillation controlled by synchronized actions ● Motion-synchronous conditions WHEN, WHENEVER ● Activation through motion block – Assign oscillation axis and infeed axes to one another OSCILL – Specify infeed response POSP. The following sections present those elements which have not yet been dealt with. Some examples are described in the "Examples"...
  • Page 656: Infeed At Reversal Point 1 Or 2

    P5: Oscillation - only 840D sl 11.3 Oscillation controlled by synchronized actions 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.
  • Page 657: Infeed In Reversal Point Range

    P5: Oscillation - only 840D sl 11.3 Oscillation controlled by synchronized actions Explanation of system variables: $AA_IM[Z]: Current position of oscillating axis Z in the MCS $SA_OSCILL_REVERSE_POS1[Z]: Position of the reversal point1 of the oscillation axis $AA_OVR[X]: Axial override of the infeed axis $AA_OVR[Z]: Axial override of the oscillation axis Explanation of key words: WHENEVER ...
  • Page 658 P5: Oscillation - only 840D sl 11.3 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]: Current position of oscillating axis Z $SA_OSCILL_REVERSE_POS1[Z]: Position of reversal point 1 of the oscillation axis $AA_OVR[X]: Axial override of the infeed axis ii1: Size of the reversal point range (number of variables) Explanation of key words:...
  • Page 659: Infeed At Both Reversal Points

    P5: Oscillation - only 840D sl 11.3 Oscillation controlled by synchronized actions Infeed The absolute infeed value is defined by the POSP instruction (see Section "Definition of infeeds POSP (Page 663)"). Assignment The assignment between the oscillation axis and the infeed axis is defined by the OSCILL instruction (see Section "Assignment of oscillation and infeed axes OSCILL (Page 662)").
  • Page 660: Stop Oscillation Movement At The Reversal Point

    P5: Oscillation - only 840D sl 11.3 Oscillation controlled by synchronized actions 11.3.4 Stop oscillation movement at the 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.
  • Page 661: Oscillation Movement Restarting

    P5: Oscillation - only 840D sl 11.3 Oscillation controlled by synchronized actions Programming WHENEVER $AA_IM[oscillation axis] == $SA_OSCILL_REVERSE_POS2[oscillation axis] DO $AA_OVR[oscillation axis] = 0 $AA_OVR[infeed axis] = 100 Explanation: $AA_IM[oscillation axis]: Current position of oscillation axis $SA_OSCILL_REVERSE_POS2[oscillation axis]: Reversal point 2 of the oscillation axis $AA_OVR[oscillation axis]: Axial override of the oscillation axis $AA_OVR[infeed axis]: Axial override of the infeed axis 11.3.5...
  • Page 662: Do Not Start Partial Infeed Too Early

    P5: Oscillation - only 840D sl 11.3 Oscillation controlled by synchronized actions 11.3.6 Do not start partial infeed too early 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.
  • Page 663: Definition Of Infeeds Posp

    P5: Oscillation - only 840D sl 11.3 Oscillation controlled by synchronized actions The PLC is informed of which axes have been assigned via the NC/PLC 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.
  • Page 664: External Oscillation Reversal

    P5: Oscillation - only 840D sl 11.3 Oscillation controlled by synchronized actions 11.3.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 edge-triggered PLC input signal DB31, ... DBX28.0 (oscillation reversal) is used to brake the current oscillation motion and then traverse in the opposite direction.
  • Page 665: Marginal Conditions

    P5: Oscillation - only 840D sl 11.4 Marginal conditions 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.
  • Page 666: Example Of Asynchronous Oscillation

    P5: Oscillation - only 840D sl 11.5 Examples 11.5.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.
  • Page 667: Example 1 Of Oscillation With Synchronized Actions

    P5: Oscillation - only 840D sl 11.5 Examples 11.5.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 partial 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;...
  • Page 668 P5: Oscillation - only 840D sl 11.5 Examples Program code Comment ; less than the beginning of reversal range 2 (here: reversal point 2 -6), ; then set the axial override of the infeed axis to 0%. ; and set the marker with index 2 to value 0 (Reset marker 2) WHENEVER $AA_IM[Z]<$SA_OSCILL_REVERSE_POS2[Z]-6 DO $AA_OVR[X]=0 $AC_MARKER[2]=0 ;...
  • Page 669 P5: Oscillation - only 840D sl 11.5 Examples Program code Comment ; if the current position of the oscillating axis in the MCS is ; equal to reversal position 1, ; then Set the axial override of the infeed axis to 100% ;...
  • Page 670: Example 2 Of Oscillation With Synchronized Actions

    P5: Oscillation - only 840D sl 11.5 Examples 11.5.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 partial infeed has been executed.
  • Page 671 P5: Oscillation - only 840D sl 11.5 Examples Program code Comment ; always, when the distance-to-go of the partial infeed is ; equal to ; then set the marker with index 0 to value 1 WHENEVER $AA_DTEPW[X] == 0 DO $AC_MARKER[0]=1 ;...
  • Page 672: Examples For Starting Position

    P5: Oscillation - only 840D sl 11.5 Examples 11.5.4 Examples for starting position 11.5.4.1 Define starting position via language command Program code Comment WAITP(Z) ; enable oscillation for the Z axis OSP1[Z]=10 OSP2[Z]=60 ; explain reversal points 1 and 2 OST1[Z]=-2 OST2[Z]=0 ;...
  • Page 673: Non-Modal Oscillation (Starting Position = Reversal Point 1)

    P5: Oscillation - only 840D sl 11.5 Examples Program code Comment $SA_OSCILL_VELO[ Z ] = 5000 Infeed for oscillating axis $SA_OSCILL_IS_ACTIVE[ Z ] = 1 starting $SA_OSCILL_DWELL_TIME1[ Z ] = -2 without wait for exact stop $SA_OSCILL_DWELL_TIME2[ Z ] = 0 wait for fine exact stop STOPRE X30 F100...
  • Page 674 P5: Oscillation - only 840D sl 11.5 Examples Program code Comment ; motion-synchronous actions: ; set marker with index 2 on 1 (initialization) WHEN TRUE DO $AC_MARKER[2]=1 ; always, when the marker with index 2 equals 0 and the current position of the oscillating axis does not equal the reversal position 1 ;...
  • Page 675 P5: Oscillation - only 840D sl 11.5 Examples Program code Comment ; always, when the marker with index 1 equals 1, ; then set the axial override of the feed axis to 0 (to prevent a new premature infeed!) and set the axial override of the oscillation axis to 100% (so that the previous synchronized action is canceled!)
  • Page 676: Example Of External Oscillation Reversal

    P5: Oscillation - only 840D sl 11.6 Data lists 11.5.5 Example of external oscillation reversal 11.5.5.1 Change reversal position via synchronized action with "external oscillation reversal" Program code Comment DEFINE BREAKPZ AS $AA_OSCILL_BREAK_POS1[Z] DEFINE REVPZ AS $SA_OSCILL_REVERSE_POS1[Z] WAITP(Z) ; enable oscillation for the Z axis OSP1[Z]=10 OSP2[Z]=60 ;...
  • Page 677: Setting Data

    P5: Oscillation - only 840D sl 11.6 Data lists 11.6.2 Setting data 11.6.2.1 Axis/spindle-specific setting data Number Identifier: $SA_ Description 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...
  • Page 678: System Variables

    P5: Oscillation - only 840D sl 11.6 Data lists Signal name SINUMERIK 840D sl SINUMERIK 828D Oscillation movement active DB31, ..DBX100.6 Oscillation active DB31, ..DBX100.7 11.6.4 System variables 11.6.4.1 Main run variables for motion-synchronous actions Main run variable_read The following variables are provided for main run variable_read: $A_IN[
  • Page 679 P5: Oscillation - only 840D sl 11.6 Data lists $AC_DTBW Distance from beginning of block in PCS (Distance to begin, workpieceCoor) (real) $AA_DTBB[] axial distance from beginning of block in BCS (Distance to begin, baseCoor) (real) $AA_DTBW[] axial distance from beginning of block in PCS (Distance to begin, workpieceCoor) (real) $AC_DTEB Distance to end of block in BCS (Distance to end)
  • Page 680 P5: Oscillation - only 840D sl 11.6 Data lists $AC_MARKER[] (int) Flag variables: can be used to build complex conditions in synchronous actions: 8 Markers (Index 0 - 7) are available. Reset sets the markers to 0. Example: WHEN ..DO $AC_MARKER[0]=2 WHEN ..DO $AC_MARKER[0]=3 WHEN $AC_MARKER[0]==3 DO $AC_OVR=50 Can be read and written independently of...
  • Page 681: R2: Rotary Axes

    R2: Rotary axes 12.1 Brief Description Rotary axes in machine tools Rotary axes are used on many modern machine tools. They are required for tool and workpiece orientation, auxiliary movements and various other technological or kinematic purposes. Typical examples for the use of rotary axes are the 5-axis milling machines. Only with the aid of rotary axes can the tip of the tool be positioned at any point on the workpiece for this type of machine.
  • Page 682 R2: Rotary axes 12.1 Brief Description Typical applications ● 5-axis machining (operating range limited or unlimited) ● Rotary axis for eccentric machining (unlimited operating range) ● Rotary axis for cylindrical or form grinding (unlimited operating range) ● C axis with (unlimited operating range) TRANSMIT ●...
  • Page 683 R2: Rotary axes 12.1 Brief Description Extended addressing (e.g., C2=) or freely configured axis addresses can be used for additional rotary axes. Note Machine data MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB (assignment of geometry axis to channel axis) must be adapted to suit the corresponding axis. Units of measurement The following units of measurement apply as standard to inputs and outputs for rotary axes: Units of measurement for rotary axes...
  • Page 684 R2: Rotary axes 12.1 Brief Description Figure 12-2 Limited operating area of a modulo rotary axis Position display The value range for the position display can be set to the modulo 360° representation, which is frequently selected for rotary axes: MD30320 $MA_DISPLAY_IS_MODULO = 1 Feedrate The programmed feedrate F corresponds to an angular velocity (degrees/min) in the case of...
  • Page 685: Modulo 360 Degrees

    R2: Rotary axes 12.2 Modulo 360 degrees Revolutional feedrate In the JOG mode, the response of the axis/spindle also depends on the setting data: SD41100 $SN_JOG_REV_IS_ACTIVE (revolutional feed rate for JOG active) SD41100 $SN_JOG_REV_IS_ACTIVE Active An axis/spindle is always traversed with revolutional feedrate: MD32050 $MA_JOG_REV_VELO (revolutional feedrate for JOG) MD32040 $MA_JOG_REV_VELO_RAPID (revolutional feedrate for JOG with rapid traverse override)
  • Page 686 R2: Rotary axes 12.2 Modulo 360 degrees Figure 12-3 Modulo 360° map Machine-data settings Machine data can be used to define programming and positioning (MD30310 $MA_ROT_IS_MODULO) as well as the position display (MD30320 $MA_DISPLAY_IS_MODULO) individually in modulo 360° for each rotary axis, depending on the particular machine requirements.
  • Page 687 R2: Rotary axes 12.2 Modulo 360 degrees Modulo position display MD30320 $MA_DISPLAY_IS_MODULO For rotary axes, a position display with "modulo 360°"(one revolution) is often required, i.e., with a positive direction of rotation the display is periodically reset within the control to 0.000° after 359.999°...
  • Page 688: Programming Rotary Axes

    R2: Rotary axes 12.3 Programming rotary axes Application By approximating the two following machine data, indexing positions of modulo indexing axes can be implemented in the same way as for the modulo range (see also Section "T1: Indexing axes (Page 771)"). MD30503 $MA_INDEX_AX_OFFSET MD30340 $MA_MODULO_RANGE_START 12.3...
  • Page 689 R2: Rotary axes 12.3 Programming rotary axes Absolute programming (AC, ACP, ACN, G90) Example for positioning axis: POS[axis name] = ACP(value) ● The value identifies the rotary-axis target position in a range from 0° to 359.999°. Negative values are also possible if a range offset has been realized with the following machine data: MD30340 $MA_ MODULO_RANGE_START MD30330 MA_MODULO_RANGE...
  • Page 690 R2: Rotary axes 12.3 Programming rotary axes Figure 12-5 Examples of absolute programming for modulo axes Absolute programming along the shortest path (DC) POS[axis name] = DC(value) ● The value identifies the rotary-axis target position in a range from 0° to 359.999°. Alarm 16830, "Incorrect modulo position programmed", is output for values with a negative sign or ≥...
  • Page 691 R2: Rotary axes 12.3 Programming rotary axes Example: C starting position is 0° (see figure below). ① C axis traverses to position 100° along the shortest path POS[C] = DC(100) ② C axis traverses to position 300° along the shortest path POS[C] = DC(300) ③...
  • Page 692 R2: Rotary axes 12.3 Programming rotary axes Modulo rotary axis with/without working-area limitation By setting the following interface signal for a modulo rotary axis, the working area limitation/software limit switch can be dynamically switched on/switched off by the PLC (similar to rotary axes): DB31, ...
  • Page 693 R2: Rotary axes 12.3 Programming rotary axes Extract from part program: Program code Comment M123 ; Insert the pallet with quadruple clamping into the machine Deactivate the software limit switches on the B axis from the DB35, DBX12.4=0 STOPRE ; Trigger a preprocessing stop S1000 M3 G4 F2 G1 X0 Y300 Z500 B0 F5000...
  • Page 694: Rotary Axis Without Modulo Conversion

    R2: Rotary axes 12.3 Programming rotary axes Incremental programming (IC, G91) Example for positioning axis: POS[axis name] = IC(+/-value) ● The value identifies the rotary-axis traversing distance. The value can be negative and ≥ +/-360°. ● The value's sign unequivocally defines the rotary-axis traversing direction. ●...
  • Page 695 R2: Rotary axes 12.3 Programming rotary axes Example: Programming Effect Rotary axis C traverses to position -100°; POS[C] = AC (-100) traversing direction depends on the starting position Rotary axis C traverses to position 1500° POS[C] = AC (1500) Absolute programming along the shortest path (DC) POS[axis name] = DC(value) Even if the rotary axis is not defined as a modulo axis, the axis can still be positioned with (Direct Control).
  • Page 696: Other Programming Features Relating To Rotary Axes

    R2: Rotary axes 12.3 Programming rotary axes Incremental programming (IC, G91) Example for positioning axis: POS[axis name] = IC(+/-value) When programming with incremental dimensions, the rotary axis traverses across the same path as with the modulo axis. In this case, however, the traversing range is limited by the software limit switches.
  • Page 697: Activating Rotary Axes

    R2: Rotary axes 12.4 Activating rotary axes 12.4 Activating rotary axes Procedure The procedure for activating rotary axes is the same as that for linear axes with a small number of exceptions. It should be noted that, as soon as the axis is defined as a rotary axis (MD30300 $MA_IS_ROT_AX = 1), the axis-specific-machine-/setting-data units are interpreted by the control as follows: Positions...
  • Page 698: Special Features Of Rotary Axes

    R2: Rotary axes 12.5 Special features of rotary axes Possible combinations of rotary-axis machine data 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 position display is modulo (setting most frequently used for rotary axes);...
  • Page 699: Examples

    R2: Rotary axes 12.6 Examples Mirroring of rotary axes Mirroring can be implemented for rotary axes by programming MIRROR(C) AMIRROR(C) Reference point approach References: Function Manual Basic Functions; Reference Point Approach (R1) Spindles as rotary axes For notes concerning the use of spindles as rotary axes (C axis operation), please refer to: References: Function Manual Basic Functions;...
  • Page 700: Data Lists

    R2: Rotary axes 12.7 Data lists 12.7 Data lists 12.7.1 Machine data 12.7.1.1 General machine data Number Identifier: $MN_ Description 10210 INT_INCR_PER_DEG Computational resolution for angular positions 12.7.1.2 Axis/spindlespecific machine data Number Identifier: $MA_ Description 30300 IS_ROT_AX Axis is rotary axis 30310 ROT_IS_MODULO Modulo conversion for rotary axis...
  • Page 701: Signals

    R2: Rotary axes 12.7 Data lists 12.7.3 Signals 12.7.3.1 Signals to axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D Traversing-range limitation for modulo axis DB31, ..DBX12.4 DB380x.DBX1000.4 12.7.3.2 Signals from axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D Status of software-limit-switch monitoring for modulo axis DB31, ...
  • Page 702 R2: Rotary axes 12.7 Data lists Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 703: S3: Synchronous Spindle

    S3: Synchronous spindle 13.1 Brief description 13.1.1 Function The "Synchronous spindle" function can be used to couple two spindles with synchronous position or speed. One spindle is defined as leading spindle (LS), the second spindle is then the following spindle (FS). Speed synchronism: with k = 1, 2, 3, ...
  • Page 704 S3: Synchronous spindle 13.1 Brief description Selecting/de-selecting Part program commands are used to select/deselect the synchronous operation of a pair of synchronous spindles. Figure 13-1 Synchronous operation: On-the-fly workpiece transfer from spindle 1 to spindle 2 Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 705: Synchronous Mode

    S3: Synchronous spindle 13.1 Brief description Figure 13-2 Synchronous operation: Polygonal turning 13.1.2 Synchronous mode Description : can be: - Axis name - Spindle name : C (if spindle has the name "C" in axis operation.) : Sn, SPI(n) where n = spindle number : 1, 2, ...
  • Page 706 S3: Synchronous spindle 13.1 Brief description Number of synchronous spindles It is possible to couple several following spindles to one leading spindle. The number of following spindles on this leading spindle depends on the respective version of the appropriate software versions. Any number of following spindles in any channels of one NCU or a different NCU can be coupled to this leading spindle.
  • Page 707 S3: Synchronous spindle 13.1 Brief description Coupling options Synchronous spindle couplings can be defined as ● Permanently configured via channel-specific machine data (hereinafter referred to as "permanently configured coupling") as well as ● Freely defined using language commands (COUP...) in the part program (hereafter referred to as "user defined coupling") .
  • Page 708 S3: Synchronous spindle 13.1 Brief description 2. User-defined coupling: Couplings can be created and altered in the NC part program with language command " (FS, LS, ...)". If a new coupling relationship is to be defined, it may be necessary COUPDEF to delete an existing user-defined coupling beforehand (with language command (FS, LS)).
  • Page 709 S3: Synchronous spindle 13.1 Brief description Coupling characteristics The following characteristics can be defined for every synchronous spindle coupling: ● 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 transformation ratio or the defined angular offset when the coupling is active: –...
  • Page 710 S3: Synchronous spindle 13.1 Brief description Change protection for coupling characteristics The channel-specific MD21340 $MC_COUPLE_IS_WRITE_PROT_1 is used to define whether or not the configured coupling parameters Transformation ratio, Type of coupling and Block change response can be altered by the NC part program: 0: Coupling parameters can be altered by the NC part program via command COUPDEF 1: Coupling parameters cannot be altered by the NC part program.
  • Page 711: Prerequisites For Synchronous Mode

    S3: Synchronous spindle 13.1 Brief description Setpoint correction The setpoint correction of the system variable $AA_COUP_CORR[Sn] impacts on all subsequent following spindle programming in the same way as a position offset and corresponds to a DRF offset in the MCS. Example: establish correction value If a coupling offset of 7°...
  • Page 712: Selecting Synchronous Mode For A Part Program

    S3: Synchronous spindle 13.1 Brief description References: Function Manual, Basic Functions; Spindles (S1) ● The following applies to setpoint couplings (DV): To ensure more accurate synchronization characteristics, the LS should be in position control mode (language instruction ) before the coupling is activated. SPCON ●...
  • Page 713 S3: Synchronous spindle 13.1 Brief description Block change behavior Before synchronous operation is selected, it must be determined under what conditions the block change must occur when synchronous mode is activated (see Section "Definition (COUPDEF) (Page 721)"). Determine current coupling status The $AA_COUP_ACT[] axial system variable can be used in the NC part program to specify the current coupling status for the specified axis/spindle (see Section "Axial system variables for synchronous spindle (Page 726)").
  • Page 714: Deselecting The Synchronous Mode For The Part Program

    S3: Synchronous spindle 13.1 Brief description Read current angular offset Using axial system variables, it is possible to read the current position offset between the FS and LS in the NC part program. A distinction is made between: ● Current position offset of setpoint between FS and LS $AA_COUP_OFFS [] ●...
  • Page 715 S3: Synchronous spindle 13.1 Brief description 2. A coupling is not deselected until the following spindle has crossed the programmed deactivation position POS The block change is then enabled. COUPOF(FS, LS, POS 3. A coupling is not deselected until the following spindle and leading spindle has crossed the programmed deactivation positions POS and POS The block change is then enabled.
  • Page 716: Controlling Synchronous Spindle Coupling Via Plc

    S3: Synchronous spindle 13.1 Brief description 13.1.6 Controlling synchronous spindle coupling via PLC Controlling following spindle via PLC Using the coupling-specific, axial VDI interface signals, it is possible to control synchronization motions for the following spindle from the PLC program. This offers the option of utilizing the PLC to disable, suppress or restore a synchronization motion for the following spindle specified by offset programming.
  • Page 717 S3: Synchronous spindle 13.1 Brief description Example Block change behavior after COUPON Program code Comment ; IS "Disable synchronization" ; set (DB31, ... DBX31.5) = 1 for S2 N51 SPOS=10 SPOS[2]=10 ; Positions correspond to an offset ; of 0° N52 COUPDEF(S2,S1,1,1,"FINE","DV") N53 COUPON(S2,S1,77) ;...
  • Page 718: Monitoring Of Synchronous Operation

    S3: Synchronous spindle 13.1 Brief description Read offset The following system variables can be used to read three different position offset values of the following spindle from the part program and synchronized actions. The variable $P_COUP_OFFS[Sn] is only available in the part program. Description NCK variable Programmed position offset of the synchronous spindle...
  • Page 719 S3: Synchronous spindle 13.1 Brief description The size of the tolerance windows is set with machine data of the FS. Reaching of the synchronism is influenced by the following factors: ● AV, DV: Position variance between FS and LS ● VV: Difference in speed between FS and LS Figure 13-3 Synchronism monitoring with and synchronism test mark...
  • Page 720: Programming

    S3: Synchronous spindle 13.2 Programming Threshold values The relevant position or velocity tolerance range for the following spindle in relation to the leading spindle must be specified in degrees or 1 rev/min. ● Threshold value for "Coarse synchronism" axis spec. MD37200: AV, DV: COUPLE_POS_TOL_COARSE MD37220: VV: COUPLE_VELO_TOL_COARSE ●...
  • Page 721: Definition (Coupdef)

    S3: Synchronous spindle 13.2 Programming See also Definition (COUPDEF) (Page 721) Switch the coupling (COUPON, COUPONC, COUPOF) on and off (Page 724) 13.2.1 Definition (COUPDEF) Programmable couplings The number of couplings can be programmed as often as desired depending on the axes available.
  • Page 722 S3: Synchronous spindle 13.2 Programming ● Block change behavior This parameter allows you to select when the block change should take place when synchronous operation is selected: NOC: Block change is enabled immediately FINE: Block change in response to "Fine synchronism" COARSE: Block change in response to "Coarse synchronism"...
  • Page 723 S3: Synchronous spindle 13.2 Programming Delete couplings Language command " " is used to delete user-defined couplings. COUPDEL COUPDEL (FS, LS) Note impacts on an active coupling, deactivates it and deletes the coupling data. Alarm COUPDEL 16797 is therefore meaningless. The following spindle adopts the last speed.
  • Page 724: Switch The Coupling (Coupon, Couponc, Coupof) On And Off

    S3: Synchronous spindle 13.2 Programming Examples: WAITC(S2), WAITC(S2, "Fine"), WAITC(S2, ,S4, "Fine") Stop and block change If "Stop" has been activated for the cancellation period of the axis enables for the leading or following spindle, then the last setpoint positions with the setting of the axis enables from the servo drive are approached again.
  • Page 725 S3: Synchronous spindle 13.2 Programming Deactivate synchronous mode Three different methods can be selected to deactivate synchronous mode: 1. COUPOF(FS, LS) Fastest possible deactivation of synchronous operation. The block change is enabled immediately. 2. COUPOF(FS, LS, POS Deselection of synchronous operation after deactivation position POS has been crossed.
  • Page 726: Axial System Variables For Synchronous Spindle

    S3: Synchronous spindle 13.2 Programming 13.2.3 Axial system variables for synchronous spindle Determining current coupling status The current coupling status of the following spindle can be read in the NC part program with the following axial system variable: $AA_COUP_ACT[] For explanation of , see Section "Synchronous mode (Page 705)".
  • Page 727: Automatic Selection And Deselection Of Position Control

    S3: Synchronous spindle 13.2 Programming 13.2.4 Automatic selection and deselection of position control Behavior in speed control mode In DV coupling mode, program instructions are used to COUPON COUPONC COUPOF COUPOFS activate and/or deactivate position control for the leading spindle as required. If there are several following spindles on the leading spindle, then in speed-controlled mode, the first DV activates coupling position control for the leading spindle and the last DV coupling deactivates coupling position control for the leading spindle if SPCON is not programmed.
  • Page 728: Configuration

    S3: Synchronous spindle 13.3 Configuration 13.3 Configuration Note One synchronous-spindle coupling can be configured for each channel. Table 13- 1 Machine data Number Name: $MC_ Function MD21300 COUPLE_AXIS_1[] Machine axes of the synchronous-spindle coupling: = 0: Machine axis number of the following spindle •...
  • Page 729: Response Of The Synchronous-Spindle Coupling For Nc Start

    S3: Synchronous spindle 13.3 Configuration 13.3.1 Response of the synchronous-spindle coupling for NC Start The behavior of the synchronous-spindle coupling during NC Start depends on the setting in the following machine data: Configured synchronous-spindle coupling Response MD21330 $MC_COUPLE_RESET_MODE_1 Maintain coupling Bit 0 = 0 Deselect coupling Bit 0 = 1...
  • Page 730: Points To Note

    S3: Synchronous spindle 13.4 Points to note 13.4 Points to note 13.4.1 Special features of synchronous mode in general Control dynamics When using the setpoint coupling, the position control parameters of FS and LS (e.g. K factor) should be matched with one another. If necessary, different parameter blocks should be activated for speed control and synchronized mode.
  • Page 731 S3: Synchronous spindle 13.4 Points to note Number of configurable spindles per channel Every axis in the channel can be configured as a spindle. The number of axes per channel depends on the control version. Cross-channel setpoint coupling ● Cross-channel synchronous spindle couplings can be implemented with no additional restrictions for DV, AV, and VV.
  • Page 732: Restore Synchronism Of Following Spindle

    S3: Synchronous spindle 13.4 Points to note 13.4.2 Restore synchronism of following spindle Causes for a positional offset When the coupling is reactivated after the drive enable signals have been canceled, a positional offset can occur between the leading and following spindles if follow-up mode is activated.
  • Page 733 S3: Synchronous spindle 13.4 Points to note Resynchronize following spindle Resynchronization is started for the relevant following spindle and commences as soon as the low-high edge of following interface signal is detected: DB31, ... DBX31.4 (resynchronization) The NC acknowledges the detection of the edge by outputting the NC/PLC interface signal: DB31, ...
  • Page 734: Synchronous Mode And Nc/Plc Interface Signals

    S3: Synchronous spindle 13.4 Points to note Supplementary condition IS DB31, ... DBX31.4 (resynchronization) has any effect only if there is a defined offset position between the following spindle and leading spindle. This is the case following with offset positions such as COUPON COUPON(...,77) SPOS...
  • Page 735 S3: Synchronous spindle 13.4 Points to note LS and FS: Setting the "Controller enable" The position assumed by a spindle with setting the "controller enable" depends on DB31, ... DBX1.4 == (follow-up operation): Assumed spindle position Position when controller enable is canceled Current position Note It is recommended for synchronous spindles during a block search, to write the DB31, ...
  • Page 736 S3: Synchronous spindle 13.4 Points to note Position measuring system 1/2 (DB31, ... DBX1.5 and 1.6) Switchover of the position measuring system for the FS and LS is possible during synchronous operation. The coupling is retained. Note It is recommended to switchover the position measuring system for FS and LS only for deselected synchronous operation.
  • Page 737 S3: Synchronous spindle 13.4 Points to note Resynchronize spindle 1/2 (DB31, ... DBX16.4 and 16.5) LS: Resynchronizing the position measuring system during synchronous operation Note It is recommended to resynchronize the position measuring system of the LS only for deselected synchronous operation. Resynchronize (DB31, ...
  • Page 738: Differential Speed Between Leading And Following Spindles

    S3: Synchronous spindle 13.4 Points to note 13.4.4 Differential speed between leading and following spindles When does a differential speed occur? A differential speed develops, e.g. with turning machine applications, when two spindles are opposite each other. Through the signed addition of two speed sources, a speed component is derived from the leading spindle via the coupling factor.
  • Page 739 S3: Synchronous spindle 13.4 Points to note Program code Comment N05 G4 F1; N10 COUPDEF(S2,S1,-1) ; Coupling factor -1:1 N11 COUPON(S2,S1) ; Activate coupling, the speed of following spindle S2 ; results from the speed of the main spindle S1 and ;...
  • Page 740 S3: Synchronous spindle 13.4 Points to note ● The differential speed must be programmed in the channel in which the following spindle is also configured. The leading spindle can be programmed in a different channel. ● The differential speed must be enabled for the following spindle by the PLC via IS "Enable overlaid movement"...
  • Page 741 S3: Synchronous spindle 13.4 Points to note Display differential speed The programmed difference component is displayed as the speed setpoint for the programmed differential speed (in our example, corresponds to 100 rpm). The actual speed refers to the motor speed. In the example, the actual speed is 500 rev/min * (-1) + 100 rpm = -400 rev/min.
  • Page 742 S3: Synchronous spindle 13.4 Points to note Invert M3/M4 (DB31, ... DBX17.6) IS "Invert M3/M4" (DB31, ... DBX17.6) only inverts the additional programmed speed component for the following spindle. The motion component generated by the synchronous spindle coupling remains unaffected. Spindle override (DB31, ...
  • Page 743: Behavior Of Synchronism Signals During Synchronism Correction

    S3: Synchronous spindle 13.4 Points to note 13.4.5 Behavior of synchronism signals during synchronism correction Effect of synchronism correction New synchronism signals are produced by comparing the actual values with the corrected setpoints. Once a correction process has been undertaken, the synchronism signals should be present again.
  • Page 744 S3: Synchronous spindle 13.4 Points to note ● The required coupling mode (setpoint, actual value or speed coupling) (for permanently configured coupling with channel-specific machine data MD21310 $MC_COUPLING_MODE_1[n]) ● The gear stage(s) of FS and LS for synchronous operation ● The following coupling properties are still applicable for permanently configured synchronous spindle coupling: –...
  • Page 745 S3: Synchronous spindle 13.4 Points to note This feedforward control mode can be further optimized for a more secure symmetrization process by changing the axis-specific machine data: Machine data Meaning MD32810 EQUIV_SPEEDCTRL_TIME Equivalent time constant speed control loop for feedforward control MD37200 COUPLE_POS_TOL_COURSE Threshold value for "Coarse synchronism"...
  • Page 746 S3: Synchronous spindle 13.4 Points to note Control parameters The following control parameters must be set identically for the FS and LS: ● MD33000 $MA_FIPO_TYPE (fine interpolator type) ● MD32400 $MA_AX_JERK_ENABLE (axial jerk limitation) ● MD32402 $MA_AX_JERK_MODE (filter type for axial jerk limitation) ●...
  • Page 747 S3: Synchronous spindle 13.4 Points to note If, for example, VELOLIMA[S1]=50 and VELOLIMA[C]=50 are to have the same effect as before with this machine data, the programming of FA, OVRA, ACC and VELOLIM have an effect regardless of the programmed names: MD30455 $MA_MISK_FUNCTION_MASK Bit 6=1 Knee-shaped acceleration characteristic For the leading spindle, the effect of a knee-shaped acceleration characteristic on the...
  • Page 748 S3: Synchronous spindle 13.4 Points to note Threshold values for coarse/fine synchronism After controller optimization and feedforward control setting, the threshold values for coarse and fine synchronism must be entered for the FS. ● Threshold value for "Coarse synchronism" axis-specific MD7200: AV, DV: COUPLE_POS_TOL_COARSE MD37220: VV: COUPLE_VELO_TOL_COARSE ●...
  • Page 749: Boundary Conditions

    S3: Synchronous spindle 13.5 Boundary conditions 13.5 Boundary conditions Availability of the "synchronous spindle" function The function is an option ("synchronous spindle/multi-edge turning" or the corresponding optional version of the generic coupling), which must be assigned to the hardware via the license management.
  • Page 750: Data Lists

    S3: Synchronous spindle 13.7 Data lists Program code Comment N225 FA [S2] = 0 ; Activate configured velocity (MD) N230 SPOS[2] = IC (-7200) ; 20 rev. with configured velocity ; in neg. direction N350 COUPOF (S2, S1) ; On-the-fly decoupling, S = S2 = 3000 N355 SPOSA[2] = 0 ;...
  • Page 751: Axis/Spindlespecific Machine Data

    S3: Synchronous spindle 13.7 Data lists 13.7.1.3 Axis/spindlespecific machine data Number Identifier: $MA_ Description 30455 MISK_FUNCTION_MASK Axis functions 30550 AXCONF_ASSIGN_MASTER_CHAN Reset position of channel for axis change 32200 POSCTRL_GAIN Servo gain factor 32400 AX_JERK_ENABLE Axial jerk limitation 32410 AX_JERK_TIME Time constant for axial jerk filter 32420 JOG_AND_POS_JERK_ENABLE Initial setting for axial jerk limitation...
  • Page 752: Signals

    S3: Synchronous spindle 13.7 Data lists 13.7.3 Signals 13.7.3.1 Signals to channel Signal name SINUMERIK 840D sl SINUMERIK 828D NC Start DB21, ..DBX7.1 DB3200.DBX7.1 NC Stop axes plus spindle DB21, ..DBX7.4 DB3200.DBX7.4 13.7.3.2 Signals from channel Signal name SINUMERIK 840D sl SINUMERIK 828D Dry run feedrate selected...
  • Page 753: Signals From Axis/Spindle

    S3: Synchronous spindle 13.7 Data lists 13.7.3.4 Signals from axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D Referenced/synchronized 1, referenced/synchronized 2 DB31, ..DBX60.4/5 DB390x.DBX0.4/5 Synchronous mode DB31, ..DBX84.4 DB390x.DBX2002.4 Synchronism fine DB31, ..DBX98.0 Synchronism coarse DB31, ..DBX98.1 Actual value coupling DB31, ...
  • Page 754 S3: Synchronous spindle 13.7 Data lists Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 755: S7: Memory Configuration

    S7: Memory configuration 14.1 Brief description Memory types To store and manage data, the NC requires a static memory and a dynamic memory: ● Static NC memory In the static NC memory, the program data (part programs, cycles, etc.) and the current system and user data (tool management, global user data, etc.) is saved to persistent memory.
  • Page 756: Memory Organization

    S7: Memory configuration 14.2 Memory organization 14.2 Memory organization 14.2.1 Active and passive file system The static NC memory contains an active and passive file system. Active file system The active file system contains system data used to parameterize the NCK: ●...
  • Page 757: Reconfiguration

    S7: Memory configuration 14.2 Memory organization 14.2.2 Reconfiguration Reconfiguration NOTICE Data loss A reconfiguration of the static NC memory results in a loss of data on the active and passive file system. Before activating the modified memory configuration, you must must first save the data by creating a series machine start-up file.
  • Page 758: Configuration Of The Static User Memory

    S7: Memory configuration 14.3 Configuration of the static user memory 14.3 Configuration of the static user memory 14.3.1 Division of the static NC memory The figure below shows the division of the static NC memory for SINUMERIK 840D sl: Figure 14-1 Static NC memory for SINUMERIK 840D sl Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 759 The memory space for the passive file system has a defined size and is divided into the following partitions: Partition Storage of: S (Siemens = Control manufacturer) Files from the _N_CST_DIR directory (Siemens cycles) M (Manufacturer = Machine manufacturer) Files from the _N_CMA_DIR directory (Machine- manufacturer cycles) U (User = End customer)
  • Page 760 S7: Memory configuration 14.3 Configuration of the static user memory The maximum adjustable values depend on: ● The system and thus the memory space available (including an optional memory expansion) ● from the defined maximum values, see also: References: Detailed machine-data description Memory space for active file system The memory space for the active file system is divided into various data areas (tool management, global user data, etc.), which can be defined individually using machine data.
  • Page 761: Commissioning

    S7: Memory configuration 14.3 Configuration of the static user memory 14.3.2 Commissioning Procedure 1. Load standard machine data. 2. Preset machine data: MD18230 $MN_MM_USER_MEM_BUFFERED with a high value (> default memory available + optional additional memory). 3. Reset the NCK. Alarm 6030 "User memory limit adjusted"...
  • Page 762: Configuration Of The Dynamic User Memory

    S7: Memory configuration 14.4 Configuration of the dynamic user memory 14.4 Configuration of the dynamic user memory 14.4.1 Division of the dynamic NC memory The figure below shows the division of the dynamic NC memory: Figure 14-2 Dynamic NC memory Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 763: Commissioning

    S7: Memory configuration 14.4 Configuration of the dynamic user memory Dynamic user memory The dynamic NC memory is used jointly by the system and by the user. The area available to the user is defined as the dynamic user memory. Dynamic-user-memory size The size of the dynamic user memory is set in machine data: MD18210 $MN_MM_USER_MEM_DYNAMIC...
  • Page 764: Data Lists

    S7: Memory configuration 14.5 Data lists 14.5 Data lists 14.5.1 Machine data 14.5.1.1 General machine data Number Identifier: $MN_ Description 10134 MM_NUM_MMC_UNITS Number of simultaneous HMI communication partners 10850 MM_EXTERN_MAXNUM_OEM_GCODES Maximum number of OEM-G codes 10880 MM_EXTERN_CNC_SYSTEM Definition of the control system to be adapted 10881 MM_EXTERN_GCODE_SYSTEM ISO_3 Mode: GCodeSystem...
  • Page 765 Number of Siemens OEM tool data 18205 MM_TYPE_CCS_TDA_PARAM Siemens OEM tool data type 18206 MM_NUM_CCS_TOA_PARAM Number of Siemens OEM data per cutting edge 18207 MM_TYPE_CCS_TOA_PARAM Siemens OEM data type per cutting edge 18208 MM_NUM_CCS_MON_PARAM Number of Siemens OEM monitor data...
  • Page 766 S7: Memory configuration 14.5 Data lists Number Identifier: $MN_ Description 18320 MM_NUM_FILES_IN_FILESYSTEM Number of files in passive file system 18332 MM_FLASH_FILE_SYSTEM_SIZE Size of flash file system on PCNC 18342 MM_CEC_MAX_POINTS Maximum table size for sag compensation 18350 MM_USER_FILE_MEM_MINIMUM Minimum part-program memory 18352 MM_U_FILE_MEM_SIZE End-user memory for part programs/cycles/files...
  • Page 767: Channelspecific Machine Data

    S7: Memory configuration 14.5 Data lists Number Identifier: $MN_ Description 18602 MM_NUM_GLOBAL_BASE_FRAMES Number of global basic frames (SRAM) 18660 MM_NUM_SYNACT_GUD_REAL Number of configurable real-type GUD variables 18661 MM_NUM_SYNACT_GUD_INT Number of configurable integer-type GUD variables 18662 MM_NUM_SYNACT_GUD_BOOL Number of configurable Boolean-type GUD variables 18663 MM_NUM_SYNACT_GUD_AXIS Number of configurable axis-type GUD variables...
  • Page 768 S7: Memory configuration 14.5 Data lists Number Identifier: $MC_ Description 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 28081 MM_NUM_BASE_FRAMES Number of basic frames (SRAM) 28082 MM_SYSTEM_FRAME_MASK System frames (SRAM)
  • Page 769: Axis/Spindlespecific Machine Data

    S7: Memory configuration 14.5 Data lists Number Identifier: $MC_ Description 28535 MM_FEED_PROFILE_SEGMENTS Number of memory chips for feed profiles 28540 MM_ARCLENGTH_SEGMENTS Number of memory chips for displaying the arc length function 28560 MM_SEARCH_RUN_RESTORE_MODE Restore data after a simulation 28580 MM_ORIPATH_CONFIG Setting for ORIPATH tool orientation trajectory referred to path 14.5.1.3...
  • Page 770 S7: Memory configuration 14.5 Data lists Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 771: T1: Indexing Axes

    T1: Indexing axes 15.1 Brief Description Indexing axes in machine tools In certain applications, the axis is only required to approach specific grid points (e.g. location numbers). It is necessary to approach the defined grid points, the indexing positions, both in AUTOMATIC and set-up mode.
  • Page 772: Traversing Of Indexing Axes In The Jog Mode

    T1: Indexing axes 15.2 Traversing of indexing axes 15.2.1 Traversing of indexing axes in the JOG mode Reference point approach An indexing axis approaches the reference point in the same way as other axes. The reference point does not have to coincide with an indexing position. When reference point is reached: DB31, ...
  • Page 773 T1: Indexing axes 15.2 Traversing of indexing axes Incremental traversal in JOG mode (INC) Irrespective of the current increment setting (INC1, ... ,INCvar), the indexing axis always traverses through one indexing position in the selected direction when a traversing key "+" or "-"...
  • Page 774: Traversing Of Indexing Axes In The Automatic Mode

    T1: Indexing axes 15.2 Traversing of indexing axes SD41100 Meaning = 0 (not active) The response of the axis / spindle depends on the setting data: SD43300 $SA_ASSIGN_FEED_PER_REV_SOURCE(revolutional feed feed rate for position axes / spindles) The response of a geometry axis on which a frame acts is to rotate, depending on the setting data: SD42600 $SC_JOG_FEED_PER_REV_SOURCE 15.2.2...
  • Page 775: Traversing Of Indexing Axes By Plc

    T1: Indexing axes 15.3 Parameterization of indexing axes 15.2.3 Traversing of indexing axes by PLC Indexing axes can also be traversed from the PLC user program. There are various methods: ● Concurrent positioning axes The indexing position to be approached can be specified by the PLC (see Section "P2: Positioning axes (Page 599)").
  • Page 776 T1: Indexing axes 15.3 Parameterization of indexing axes No. of indexing positions Up to 60 positions can be entered in each indexing position table: [n = 0 ... 59] The actually used number of entries is defined with the machine data: MD10900 $MN_INDEX_AX_LENGTH_POS_TAB_1 ((number of positions of indexing position table 1) MD10920 $MN_INDEX_AX_LENGTH_POS_TAB_2 ((number of positions of indexing...
  • Page 777: Programming Of Indexing Axes

    T1: Indexing axes 15.4 Programming of indexing axes Modulo rotary axis as indexing axis The indexing axis is defined with Modulo 360° as rotary axis: MD30300 $MA_IS_ROT_AX = 1 MD30310 $MA_ROT_IS_MODULO = 1 In this case, the following points must be observed additionally for the specification of the indexing positions: ●...
  • Page 778 T1: Indexing axes 15.4 Programming of indexing axes Examples Program code Comment POS[B]=CAC(20) ; Indexing axis B approaches the coded position (indexing) 20 in absolute mode. The direction of traversing depends on the current actual position. Program code Comment POS[B]=CACP(10) ;...
  • Page 779 T1: Indexing axes 15.4 Programming of indexing axes Display of indexing position The number of the indexing position programmed last can be read with the following system variables: $AA_PROG_INDEX_AX_POS_NO The number of the indexing position traversed last can be displayed with the following system variables: $AA_ACT_INDEX_AX_POS_NO The display depends on the setting in machine data:...
  • Page 780 T1: Indexing axes 15.4 Programming of indexing axes Programmed indexing position Displayed indexing position ESFW "Exact stop fine" window Figure 15-2 Indexing position displays: Modulo rotary axis Value range of $AA_ACT_INDEX_AX_POS_NO Expected value ranges of system variables $AA_ACT_INDEX_AX_POS_NO: Indexing positions from table Modulo rotary axis 1 ...
  • Page 781 T1: Indexing axes 15.4 Programming of indexing axes Traversing to the next indexing position The response to the "Travel to the next indexing position" command depends on the setting in machine data: MD10940 $MN_INDEX_AX_MODE (settings for indexing position) Value Meaning The next indexing position is approached.
  • Page 782: Equidistant Index Intervals

    T1: Indexing axes 15.5 Equidistant index intervals 15.5 Equidistant index intervals 15.5.1 Features The following exist: ● Any number of equidistant index intervals ● Modified action of MD for indexing axes Equidistant index intervals can be used for: ● Linear axes ●...
  • Page 783: Hirth Tooth System

    T1: Indexing axes 15.5 Equidistant index intervals Modulo rotary axis Activation The functions with equidistant indexing for an axis (linear axis, modulo rotary axis or rotary axis) is activated in the following settings MD30500 $MA_INDEX_AX_ASSIGN_POS_TAB[axis] = 3 15.5.2 Hirth tooth system Function With Hirth tooth systems, positions of rotation on a rotary axis are usually interlocked using a latch or other toothed wheel via a linear axis.
  • Page 784: Response Of The Hirth Axes In Particular Situations

    T1: Indexing axes 15.5 Equidistant index intervals Requirements The rotary axis must be an indexing axis. The axis must be referenced. References: Function Manual Basic Functions; Reference Point Approach (R1) Activation Machine data: MD30505 $MA_HIRTH_IS_ACTIVE (axis is an indexing axis with Hirth gearing) must be set to 1.
  • Page 785: Restrictions

    T1: Indexing axes 15.5 Equidistant index intervals Delete distance-to-go After traversing to the next possible indexing position, the movement is aborted at this position. Command axes is specified for a moving command axis, the axis continues traversing to the next MOV=0 possible indexing position.
  • Page 786: Modified Activation Of Machine Data

    T1: Indexing axes 15.6 Starting up indexing axes Path/velocity overlay The axis for which the Hirth tooth system is defined cannot be used with path or velocity overlay. Frames, ext. work offset, DRF The axis for which the Hirth tooth system is defined does not support frames or interpolation compensation such as external work offsets, DRF, etc.
  • Page 787 T1: Indexing axes 15.6 Starting up indexing axes Rotary axis If the indexing axis is defined as a rotary axis (MD30300 $MA_IS_ROT_AX = "1") with modulo 360° conversion (MD30310 $MA_ROT_IS_MODULO = "1"), indexing positions are also approached with modulo 360 .
  • Page 788 T1: Indexing axes 15.6 Starting up indexing axes Figure 15-3 Example: Tool turret with 8 locations The indexing positions for the tool turret are entered in indexing position table 1. MD10910 $MN_INDEX_AX_POS_TAB_1[0] = 0 ; 1. indexing position at 0° MD10910 $MN_INDEX_AX_POS_TAB_1[1] = 45 ;...
  • Page 789 T1: Indexing axes 15.6 Starting up indexing axes Example 2: Indexing axis as linear axis Workholder with 10 locations. The distances between the 10 locations are different. The first location is at position -100 Figure 15-4 Example: Workholder as an indexing axis The indexing positions for the workholder are entered in table 2: MD10930 $MN_INDEX_AX_POS_TAB_2[0] = -100 ;...
  • Page 790: Special Features Of Indexing Axes

    T1: Indexing axes 15.7 Special features of indexing axes 15.7 Special features of indexing axes An additional incremental work offset can also be generated for indexing axes in AUTOMATIC mode with the handwheel using the function. Software limit switch The software limit switches are also effective during traversing movements once the indexing axis has been referenced.
  • Page 791: Examples

    T1: Indexing axes 15.8 Examples 15.8 Examples 15.8.1 Examples of equidistant indexes Modulo rotary axis MD30502 $MA_INDEX_AX_DENOMINATOR[AX4] = 18 MD30503 $MA_INDEX_AX_OFFSET[AX4] = 5 MD30500 $MA_INDEX_AX_ASSIGN_POS_TAB[AX4] = 3 MD30300 $MA_IS_ROT_AX[AX4] = TRUE MD30310 $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°...
  • Page 792 T1: Indexing axes 15.8 Examples Linear axis MD30501 $MA_INDEX_AX_NUMERATOR[AX1] = 10 MD30502 $MA_INDEX_AX_DENOMINATOR[AX1] = 1 MD30503 $MA_INDEX_AX_OFFSET[AX1] = -200 MD30500 $MA_INDEX_AX_ASSIGN_POS_TAB[AX1] = 3 MD30300 $MA_IS_ROT_AX[AX1] = FALSE MD36100 $MA_POS_LIMIT_MINUS[AX1] = -200 MD36110 $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.
  • Page 793: Data Lists

    T1: Indexing axes 15.9 Data lists 15.9 Data lists 15.9.1 Machine data 15.9.1.1 General machine data Number Identifier: $MN_ Description 10260 CONVERT_SCALING_SYSTEM Basic system switchover active 10270 POS_TAB_SCALING_SYSTEM System of measurement of position tables 10900 INDEX_AX_LENGTH_POS_TAB_1 Number of positions for indexing axis table 1 10910 INDEX_AX_POS_TAB_1[n] Indexing position table 1...
  • Page 794: Signals

    T1: Indexing axes 15.9 Data lists 15.9.3 Signals 15.9.3.1 Signals from axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D Referenced/synchronized 1, referenced/synchronized 2 DB31, ..DBX60.4/5 DB390x.DBX0.4/5 Indexing axis in position DB31, ..DBX76.6 DB390x.DBX1002.6 15.9.4 System variables Identifier Description $AA_ACT_INDEX_AX_POS_NO[axis] Number of last indexing position reached or overtraveled $AA_PROG_INDEX_AX_POS_NO[axis]...
  • Page 795: W3: Tool Change

    W3: Tool change 16.1 Brief Description Tool change 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: 1. Movement of the tool carrier from the machining position to the tool change position 2.
  • Page 796: Tool Change Times

    W3: Tool change 16.3 Tool change times 16.3 Tool change times Tool change times depend strongly on the design layout of the machine tool. Typical tool change times 0.1 to 0.2 s for advancing a turret 0.3 to 2 s for tool change with gripper for a prepared tool 16.4 Cut-to-cut time...
  • Page 797: Tool Change Point

    W3: Tool change 16.6 Tool change point The M command for tool change is defined in machine data: MD22560 $MC_TOOL_CHANGE_M_CODE Default setting is 6 (corresponding to DIN 66025). Note If the tool offset number is supplied from the PLC or an HMI tool manager, a preprocessing stop STOPRE must be inserted at a suitable point.
  • Page 798: Supplementary Conditions

    W3: Tool change 16.7 Supplementary Conditions 16.7 Supplementary Conditions 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. 16.8 Examples Milling machine The following example shows a typical cut-to-cut sequence of operations for a tool change...
  • Page 799 W3: Tool change 16.8 Examples Axes stationary. Spindle rotates. Start of tool change cycle in N10. Move axes to tool change point with Spindle reaches programmed position from block Axes reach exact stop coarse from thus begins: removes the previous tool from the spindle and loads and clamps the new tool. Tool changer swivels back to original position.
  • Page 800: Data Lists

    W3: Tool change 16.9 Data lists 16.9 Data lists 16.9.1 Machine data 16.9.1.1 General machine data Number Identifier: $MN_ Description 18082 MM_NUM_TOOL Number of tools 16.9.1.2 Channelspecific machine data Number Identifier: $MC_ Description 22200 AUXFU_M_SYNC_TYPE Output timing of M functions 22220 AUXFU_T_SYNC_TYPE Output timing of T functions...
  • Page 801: W4: Grinding-Specific Tool Offset And Tool Monitoring

    W4: Grinding-specific tool offset and tool monitoring Contents The topics of this functional description are: ● Grinding-specific tool offset ● Online tool offsets (continuous dressing) ● Grinding-specific tool monitoring ● Constant grinding wheel peripheral speed (GWPS) References For fundamentals see: ●...
  • Page 802 W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Example 1: Example 2: All offsets belonging to a grinding wheel and dresser can be combined in the tool edges for the grinding wheel and, for example, for the dresser: ●...
  • Page 803: Edge-Specific Offset Data

    W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Figure 17-1 Structure of tool offset data for grinding tools 17.1.2 Edge-specific offset data Tool parameter The tool parameters for grinding tools have the same meaning as those for turning and milling tools.
  • Page 804 W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Tool parameter Meaning Comment Wear tool radius compensation Radius 1 Reserved Reserved Reserved Reserved Reserved Tool base dimension / adapter dimension tool length compensation Basic length 1 Basic length 2 Basic length 3 Technology...
  • Page 805 W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Definition of additional parameters $TC_DPC1...10 For user-specific cutting edge data, additional parameters $TC_DPC1 to 10 can be set up independent of the tool type using the following general machine data: MD18096 $MN_MM_NUM_CC_TOA_PARAM CAUTION Data loss...
  • Page 806: Tool-Specific Grinding Data

    W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations This structure can be used to create the following tool types: Type Description Surface grinding wheel Surface grinding wheel with monitoring with tool base dimension for GWPS Surface grinding wheel without monitoring without tool base dimension for GWPS Surface grinding wheel with monitoring without tool base dimension for GWPS Facing wheel...
  • Page 807 W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Parameter Meaning Data type Additional parameters (user-specific cutting edge data) $TC_TPC1 Real $TC_TPC10 Definition of additional parameters $TC_DPC1...10 For the user-specific cutting data the additional parameters $TC_DPC1 to $TC_DPC10 can be implemented independent of the WZ-type.
  • Page 808 W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Tool parameter Meaning Bit in $TC_TPG2 Wear tool length compensation $TC_DP12 Length 1 0800 4096 $TC_DP13 Length 2 1000 8192 $TC_DP14 Length 3 2000 16384 $TC_DP15 Radius 4000 32768 $TC_DP16...
  • Page 809 W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Parameter $TC_TPG2 must therefore be assigned as follows: Binary: $TC_TPG2[1]= 'B111 0000 0011 1000 0001 1101' (Bit 22 ... Bit 0) Hexadecimal: $TC_TPG2[1]= 'H70381D' 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.
  • Page 810 W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Angle of inclined wheel $TC_TPG8 This parameter specifies the angle of inclination of an inclined wheel in the current plane. It is evaluated for GWPS. Figure 17-3 Machine with inclined infeed axis Note The tool lengths are not automatically compensated when the angle is altered.
  • Page 811 W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Access from part program Parameters can be read and written from the part 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...
  • Page 812: Examples Of Grinding Tools

    W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations 17.1.4 Examples of grinding tools Assignment of length offsets 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):...
  • Page 813 W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Surface grinding wheel Figure 17-5 Offset values required by a surface grinding wheel Inclined wheel without tool base dimension for GWPS Figure 17-6 Offset values required for inclined wheel with implicit monitoring selection Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 814 W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Inclined wheel with tool base dimension for GWPS Figure 17-7 Required offset values shown by example of inclined grinding wheel with implicit monitoring selection and with base selection for GWPS calculation Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 815 W4: Grinding-specific tool offset and tool monitoring 17.1 Tool offset for grinding operations Surface grinding wheel Figure 17-8 Required offset values of a surface grinding wheel without base dimension for GWPS Facing wheel Figure 17-9 Required offset values of a facing wheel with monitoring parameters Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 816: Online Tool Offset

    W4: Grinding-specific tool offset and tool monitoring 17.2 Online tool offset 17.2 Online tool offset 17.2.1 General information Application A grinding operation involves both machining of a workpiece and dressing of the grinding wheel. These processes can take place 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.
  • Page 817 W4: Grinding-specific tool offset and tool monitoring 17.2 Online tool offset General information An online tool offset can be activated for every grinding tool in any channel. The online tool offset is generally applied as a length compensation. Like geometry and wear data, lengths are assigned to geometry axes on the basis of the current plane as a function of the tool type.
  • Page 818: Write Online Tool Offset: Continuous

    W4: Grinding-specific tool offset and tool monitoring 17.2 Online tool offset 17.2.2 Write online tool offset: Continuous FCTDEF 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.
  • Page 819 W4: Grinding-specific tool offset and tool monitoring 17.2 Online tool offset Example: Existing conditions: Lead: = +1 At the time of definition, the function value y should be equal to 0 and should be derived from machine axis XA (e.g. dresser axis). Figure 17-12 Straight line with gradient 1 Write online tool offset continuously PUTFTOCF(, , , ,
  • Page 820: Activate/Deactivate Online Tool Offset

    W4: Grinding-specific tool offset and tool monitoring 17.2 Online tool offset Length 1 of tool for spindle 1 in channel 2 is modified as a function of X axis movement. Note The online tool offset for a (geometric) grinding tool that is not active can be activated by specifying the appropriate spindle number.
  • Page 821: Example Of Writing Online Tool Offset Continuously

    W4: Grinding-specific tool offset and tool monitoring 17.2 Online tool offset 17.2.4 Example of writing online tool offset continuously Surface grinding machine Infeed axis for grinding wheel Infeed axis for dressing roller Reciprocating axis, left - right Plane for the tool offset: (Y/Z plane) Length 1 acts in Z, length 2 in Y, tool type = 401 Machining:...
  • Page 822 W4: Grinding-specific tool offset and tool monitoring 17.2 Online tool offset Main machining program in channel 1 Program code Comment G1 G19 F10 G90 ; Basic position T1 D1 ; Select current tool S100 M3 Y100 ; Spindle On, traverse to ;...
  • Page 823: Write Online Tool Offset Discretely

    W4: Grinding-specific tool offset and tool monitoring 17.2 Online tool offset 17.2.5 Write online tool offset discretely PUTFTOC This command writes an offset value by means of a program command. PUTFTOC(, , , ) Put Fine Tool Offset Compensation The wear of the specified length (1, 2 or 3) is modified online by the programmed value.
  • Page 824: Online Tool Radius Compensation

    W4: Grinding-specific tool offset and tool monitoring 17.3 Online tool radius compensation Resets and operating mode changes ● When online offset is active, and program end with are delayed until the STOP amount of compensation has been traversed. ● The online tool offset is immediately deselected in response to RESET ●...
  • Page 825: Grinding-Specific Tool Monitoring

    W4: Grinding-specific tool offset and tool monitoring 17.4 Grinding-specific tool monitoring Parameterization The parameters of the online tool offset are set using commands PUTFTOCF PUTFTOC Parameter "LENGTH 1_2_3" must be supplied as follows for an online tool radius compensation: Parameter = 4 Wear parameter to which correction value is added.
  • Page 826: Geometry Monitoring

    W4: Grinding-specific tool offset and tool monitoring 17.4 Grinding-specific tool monitoring Selection The monitoring function is selected: ● by programming ( ) in the part program TMON ● automatically through selection of tool length compensation of a grinding tool with uneven tool type number.
  • Page 827: Speed Monitoring

    W4: Grinding-specific tool offset and tool monitoring 17.4 Grinding-specific tool monitoring When does monitoring take place? The monitoring function for the grinding wheel radius remains active when an online tool offset is selected: ● When the monitoring function is activated ●...
  • Page 828: Selection/Deselection Of Tool Monitoring

    W4: Grinding-specific tool offset and tool monitoring 17.4 Grinding-specific tool monitoring When is the speed limit value recalculated? The speed limit value is recalculated: ● when the monitoring function is selected, ● when the online offset values (wear parameters) are altered. Monitor reactions The system reacts as follows when the speed monitor responds: ●...
  • Page 829: Constant Grinding Wheel Peripheral Speed (Gwps)

    W4: Grinding-specific tool offset and tool monitoring 17.5 Constant grinding wheel peripheral speed (GWPS). 17.5 Constant grinding wheel peripheral speed (GWPS). 17.5.1 General information What is GWPS? A grinding wheel peripheral speed, as opposed to a spindle speed, is generally programmed for grinding wheels.
  • Page 830: Selection/Deselection And Programming Of Gwps, System Variable

    W4: Grinding-specific tool offset and tool monitoring 17.5 Constant grinding wheel peripheral speed (GWPS). 17.5.2 Selection/deselection and programming of GWPS, system variable Part program commands The GWPS is selected and deselected with the following part program commands: Command Meaning Selection of GWPS for the active tool in the GWPSON Grinding wheel peripheral speed ON channel.
  • Page 831: Gwps In All Operating Modes

    W4: Grinding-specific tool offset and tool monitoring 17.5 Constant grinding wheel peripheral speed (GWPS). 17.5.3 GWPS in all operating modes General information This function allows the constant grinding wheel peripheral speed (GWPS) function to be selected for a spindle immediately after POWER ON and to ensure that it remains active after an operating mode changeover, RESET or part program end.
  • Page 832: Programming Example For Gwps

    W4: Grinding-specific tool offset and tool monitoring 17.5 Constant grinding wheel peripheral speed (GWPS). Programming The spindle speed can be modified through the input of a grinding wheel peripheral speed. The spindle speed can be modified through: ● programming in the part program/overstoring ●...
  • Page 833: Supplementary Conditions

    W4: Grinding-specific tool offset and tool monitoring 17.6 Supplementary Conditions Programming Program code Comment T1 D1 ; Select T1 and D1 S1=1000 M1=3 ; 1000 rpm for spindle 1 S2=1500 M2=3 ; 1500 rpm for spindle 2 GWPSON ; ;Selection of GWPS for active tool T1 S[$P_AGT[1]]=60 ;...
  • Page 834: Data Lists

    W4: Grinding-specific tool offset and tool monitoring 17.7 Data lists 17.7 Data lists 17.7.1 Machine data 17.7.1.1 General machine data Number Identifier: $MN_ Description 18094 MM_NUM_CC_TDA_PARAM Number of TDA 18096 MM_NUM_CC_TOA_PARAM Number of TOA 18100 MM_NUM_CUTTING_EDGES_IN_TOA Tool offsets per TOA 17.7.1.2 Channelspecific machine data Number...
  • Page 835: Z2: Nc/Plc Interface Signals

    Z2: NC/PLC interface signals 18.1 Digital and analog NCK I/Os (A4) 18.1.1 Signals to NC (DB10) Overview of signals from PLC to NC DB10 Signals to NC interface PLC → NC Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0...
  • Page 836 Z2: NC/PLC interface signals 18.1 Digital and analog NCK I/Os (A4) Disable digital NCK inputs Input 24 Input 23 Input 22 Input 21 Input 20 Input 19 Input 18 Input 17 Setting by PLC of the digital NCK inputs Input 24 Input 23 Input 22 Input 21...
  • Page 837 Z2: NC/PLC interface signals 18.1 Digital and analog NCK I/Os (A4) Output 40 Output 39 Output 38 Output 37 Output 36 Output 35 Output 34 Output 33 Disable analog NCK inputs Input 8 Input 7 Input 6 Input 5 Input 4 Input 3 Input 2 Input 1...
  • Page 838 Z2: NC/PLC interface signals 18.1 Digital and analog NCK I/Os (A4) DB10 DBB1, 123, 125, 127, Setting by PLC of the digital NCK inputs Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or The digital NCK input is set to a defined "1" state by the PLC. This means the signal state at the edge change 0 →...
  • Page 839 Z2: NC/PLC interface signals 18.1 Digital and analog NCK I/Os (A4) DB10 DBB6, 132, 136, 140, Set value by PLC of the digital NCK outputs Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or The signal status for the digital hardware output can be changed by the PLC with the setting value. edge change 0 →...
  • Page 840 Z2: NC/PLC interface signals 18.1 Digital and analog NCK I/Os (A4) DB10 DBB146 Disable analog NCK inputs Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or The analog input of the NCK is disabled by the PLC. It is thus set to "0" in a defined way in the edge change 0 →...
  • Page 841 Z2: NC/PLC interface signals 18.1 Digital and analog NCK I/Os (A4) DB10 DBB166 Overwrite screen form for analog NCK outputs Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or On signal transition 0 → 1 the previous NCK value is overwritten by the setting value (IS "Setting edge change 0 →...
  • Page 842 Z2: NC/PLC interface signals 18.1 Digital and analog NCK I/Os (A4) DB10 DBB168 Disable analog NCK outputs Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or The analog output of the NCK is disabled. "0V" is output in a defined way at the hardware output. edge change 0 →...
  • Page 843: Signals From Nc (Db10)

    Z2: NC/PLC interface signals 18.1 Digital and analog NCK I/Os (A4) 18.1.2 Signals from NC (DB10) Overview of signals from NC to PLC DB10 Signals from NC interface NC → PLC Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0...
  • Page 844 Z2: NC/PLC interface signals 18.1 Digital and analog NCK I/Os (A4) 200, Actual value for analog input 4 of NCK 202, Actual value for analog input 5 of NCK 204, Actual value for analog input 6 of NCK 206, Actual value for analog input 7 of NCK 208, Actual value for analog input 8 of NCK 210,...
  • Page 845 Z2: NC/PLC interface signals 18.1 Digital and analog NCK I/Os (A4) DB10 DBB64, 190 - 193 Setpoint for digital NCK outputs Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or The NCK value for the digital output currently set (setpoint) is "1". edge change 0 →...
  • Page 846: Distributed Systems (B3)

    Z2: NC/PLC interface signals 18.2 Distributed systems (B3) DB10 DBB210 - 225 Setpoint for analog NCK outputs Signal state 0 or This 'setpoint' is only output to the hardware output under the following conditions: edge change 1 → 0 Output is not disabled (IS "Disable analog NCK outputs") •...
  • Page 847 Z2: NC/PLC interface signals 18.2 Distributed systems (B3) Name Value Interface DB19 Meaning Online request PLC to control unit: PLC notifies control unit as to whether it ONL_PERM interface can go online or not. DBB108 The meaning of the signal is dependent on Z_INFO: DBB109 Online interfaces Control unit to PLC: Control unit goes online or changes S_ACT...
  • Page 848 Z2: NC/PLC interface signals 18.2 Distributed systems (B3) STATUS and Z_INFO can be combined as follows Name: Status Z_INFO Meaning PLC wants to displace online control unit by offline request. OFFL_REQ_PLC Control unit positively acknowledges the offline request from PLC. OFFL_CONF_PLC Control unit will subsequently go offline.
  • Page 849: Interfaces In Db19 For M:n

    Z2: NC/PLC interface signals 18.2 Distributed systems (B3) Name: Status Z_INFO Meaning Server HMI would like to set the operating focus on this NCU and ONL_REQ_FOC outputs an online focus request. PLC positively acknowledges the online focus request. ONL_PERM_FOC Server HMI then connects operating focus to this NCU. PLC negatively acknowledges the online focus request.
  • Page 850 Z2: NC/PLC interface signals 18.2 Distributed systems (B3) HMI data interfaces User data from/to the HMI are defined on these: ● DBB 0-49 control unit 1 interface ● DBB 50-99 control unit 2 interface These data and signals are always needed to operate control units. M:N sign-of-life monitoring This is an additional monitoring function which must not be confused with the HMI sign-of-life monitor.
  • Page 851 Z2: NC/PLC interface signals 18.2 Distributed systems (B3) Online request interface DB19 DBW100 ONL_REQUEST Client_Ident Control unit would like to go online and use the online request interface. HMI first writes its Client_Ident as a request. Bit 8 .. 15: Bus type: MPI 1 or BTSS 2 Bit 0 ..
  • Page 852 Z2: NC/PLC interface signals 18.2 Distributed systems (B3) 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 HMI that the M:N switchover is active and ready. 1.
  • Page 853 Z2: NC/PLC interface signals 18.2 Distributed systems (B3) Bit signals DB19 MMC1_SHIFT_LOCK DBX 126.0 Disable/enable control unit switchover Data Block Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or Control unit switchover or change in operating focus is disabled. edge change The current control unit-NCU constellation remains unchanged.
  • Page 854 Z2: NC/PLC interface signals 18.2 Distributed systems (B3) DB19 MMC1_ACTIVE_PERM DBX 126.3 Active/passive operating mode Data Block Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or PLC to HMI: edge change passive operator unit 1 can change to active operating mode 0 →...
  • Page 855 Z2: NC/PLC interface signals 18.2 Distributed systems (B3) 2. HMI/PLC online interface The signals of the 2nd HMI/PLC online interface are analogous in meaning to the signals of the 1st HMI/PLC online interface (MMC2_ ... replaces MMC1_...).. Sign-of-life monitoring HMI After a control unit has gone online to an NCU, the HMI sign of life is set in the interface.
  • Page 856: Signals From Nc (Db10)

    Z2: NC/PLC interface signals 18.2 Distributed systems (B3) Second HMI/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 control unit online to OPI or MPI TRUE Control unit online to OPI or MPI The sign-of-life monitor is switched on by the PLC as soon as a control unit has gone online...
  • Page 857: Signals From Axis/Spindle (Db31

    Z2: NC/PLC interface signals 18.2 Distributed systems (B3) 18.2.4 Signals from axis/spindle (DB31, ...) DB31, ... DBX60.1 NCU link axis active Edge evaluation: Signal(s) updated: Signal state 1 or edge Axis is active as NCU link axis. change 0 → 1 Signal state 0 or edge Axis is used as a local axis.
  • Page 858: Manual And Handwheel Travel (H1)

    Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) 18.3 Manual and Handwheel Travel (H1) 18.3.1 Signals from NC (DB10) DB10 DBB97, 98, 99 Channel number geometry axis for handwheel 1, 2, 3 Edge evaluation: No Signal(s) updated: Cyclic Significance of signal The operator can assign an axis to the handwheel (1, 2, 3) directly on the operator panel front.
  • Page 859 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB10 DBB100, 101, 102 Bit 0 - 4 Axis number for handwheel 1, 2 or 3 Edge evaluation: no Signal(s) updated: Cyclic 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.
  • Page 860 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB10 DBX100.6, 101.6, 102.6 Handwheel selected (for handwheel 1, 2 or 3) Edge evaluation: no Signal(s) updated: Cyclic Signal state 1 or The operator has selected the handwheel for the defined axis via the operator panel front (i.e. edge change 0 →...
  • Page 861: Signals To Channel (Db21

    Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) 18.3.2 Signals to channel (DB21, ...) Overview of signals to channel (to NCK) DB21, ... DBX0.3 Activate DRF Edge evaluation: No Signal(s) updated: Cyclically Signal state 1 Request to activate the DRF function. With the DRF function, the DRF offset can be changed in the AUTOMATIC and MDI modes using a handwheel.
  • Page 862 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX12.4, DBX16.4, DBX20.4 Traversing key disable for geometry axis (1, 2, 3) Edge evaluation: No Signal(s) updated: Cyclically Signal state 1 A traversing request using the "Plus" and "Minus" traversing keys is ignored for the geometry axis. If the traversing key disable is activated while traversing, then traversing is canceled.
  • Page 863 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX12.6-7, DBX16.6-7, DBX20.6-7 Plus and minus traversing keys for geometry axis (1, 2, 3) Edge evaluation: No Signal(s) updated: Cyclically Signal state 1 The selected geometry axis can be traversed in both directions in JOG mode with the traversing keys plus and minus.
  • Page 864 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX13.0-5, DBX17.0-5, DBX21.0-5 Request for incremental machine function for geometry axis (1, 2, 3) Edge evaluation: No Signal(s) updated: Cyclically Signal state 1 Request for a machine function for incremental traversing of the geometry axis in JOG mode: Bit 0 = INC1 •...
  • Page 865 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX15.0, DBX 19.0, DBX 23.0 Handwheel direction of rotation inversion for geometry axis (1, 2, 3) Edge evaluation: No Signal(s) updated: Cyclically Signal state 1 Request to invert the handwheel direction of rotation. It is only permissible to change the interface signal when the geometry axis is at a standstill.
  • Page 866 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX320.0-2, DBX324.0-2, Activate handwheel for orientation axis (1, 2, 3) DBX328.0-2 Edge evaluation: No Signal(s) updated: Cyclically Signal state 1 Request for activation of the corresponding handwheel for the orientation axis. The interface can be interpreted either bit or binary-coded.
  • Page 867: Signals From Channel (Db21

    Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) 18.3.3 Signals from channel (DB21, ...) Description of signals from channel to PLC DB21, ... DBX24.3 DRF selected Edge evaluation: No Signal(s) updated: Cyclically Signal state 1 The DRF function is active. Signal state 0 The DRF function is not active.
  • Page 868 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX37.0-2 Contour handwheel active Binary-coded: Maximum of six handwheels Number of the assigned handwheel Bit 2 Bit 1 Bit 0 Signal state 0 The "Contour handwheel/path input using handwheel" is not assigned to a handwheel. Corresponding to ...
  • Page 869 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX40.4-5, DBX46.4-5, DBX52.4-5 Plus or minus traversing request for geometry axis (1, 2, 3) Edge evaluation: No Signal(s) updated: Cyclically Signal state 1 A traversing request is available for the geometry axis for the corresponding traversing direction. Bit 4 = minus traversing request •...
  • Page 870 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX40.7-6, DBX46.7-6, Traversing command plus and minus for geometry axis (1, 2, 3) DBX52.7-6 Application Releasing the axis clamp when the traversing command is identified. example(s) Note For axes on which the clamping is not released until a drive command is detected, continuous-path mode ( ) is not possible.
  • Page 871 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX332.0-2, DBX336.0-2, Handwheel active for orientation axis (1, 2, 3) DBX340.0-2 Edge evaluation: No Signal(s) updated: Cyclically Signal state 1 Feedback signal indicating which handwheel is active for the orientation axis. The interface can be interpreted either bit or binary-coded.
  • Page 872 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX332.4-5, DBX336.4-5, Plus and minus traversing request for orientation axis (1, 2, 3) DBX340.4-5 Signal state 0 A traversing command in the relevant axis direction has not been given or a traversing movement has been completed.
  • Page 873 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX332.6-7, DBX336.6-7, Traversing command plus and minus for orientation axis (1, 2, 3) DBX340.6-7 Signal state 0 A traversing command in the relevant axis direction has not been given or a traversing movement has been completed.
  • Page 874: Signals With Contour Handwheel

    Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) 18.3.4 Signals with contour handwheel Overview of interface signals for contour handwheel Description of interface signals for contour handwheel DB10 DBX100.5 Define handwheel 1 as contour handwheel DBX101.5 Define handwheel 2 as contour handwheel DBX102.5 Define handwheel 3 as contour handwheel Edge evaluation: No...
  • Page 875 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX30.0 Activate handwheel 1 as contour handwheel; DBX30.1 Activate handwheel 2 as contour handwheel; DBX30.2 Activate handwheel 3 as contour handwheel Enabling/disabling of the contour handwheel can be performed in the middle of a block. Upon enabling, the movement is first decelerated and then traversed according to the contour handwheel.
  • Page 876: Signals To Axis/Spindle (Db31

    Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB21, ... DBX37.0 Handwheel 1 active as contour handwheel DBX37.1 Handwheel 2 active as contour handwheel DBX37.2 Handwheel 3 active as contour handwheel Edge evaluation: No Signal(s) updated: Cyclic Description These signals show which handwheel is selected as contour handwheel: Signal = 1 Handwheel x is selected as contour handwheel.
  • Page 877 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB31, ... DBX4.4 Traversing key lock Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or The traverse keys plus and minus have no effect on the machine axes in question. It is thus not edge change 0 →...
  • Page 878 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB31, ... DBB4 Bit 7, 6 Plus and minus traverse keys Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 The selected machine axis can be traversed in both directions in JOG mode using the traversing keys "plus"...
  • Page 879 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB31, ... DBB5 Bit 0-5 Machine function INC1, INC10, INC100, INC1000, INC10000, INCvar Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 Request to activate a machine function for incremental traversing of the axis: Bit 0: INC1 •...
  • Page 880 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB31, ... DBX7.0 Invert handwheel direction of rotation (machine axes) Signal state 0 The handwheel direction of rotation is not inverted. Application The direction of movement of the handwheel does not match the expected direction of the axis. •...
  • Page 881: Signals From Axis/Spindle (Db31

    Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) 18.3.6 Signals from axis/spindle (DB31, ...) Description of signals from axis/spindle DB31, ... DBX62.1 Handwheel override active Edge evaluation: no Signal(s) updated: Cyclic Signal state 1 or The function "Handwheel override in AUTOMATIC mode" is active for the programmed positioning edge change 0 →...
  • Page 882 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB31, ... DBB64 Bit 5, 4 Plus and minus traversing request Edge evaluation: no Signal(s) updated: Cyclic Signal state 1 or A traverse movement of the axis is to be executed in one or the other direction. Depending on the edge change 0 →...
  • Page 883 Z2: NC/PLC interface signals 18.3 Manual and Handwheel Travel (H1) DB31, ... DBB64 Bit 7, 6 Plus and minus traversing command Signal state 1 or A traverse movement of the axis is to be executed in one or the other direction. edge change 0 →...
  • Page 884: Compensations (K3)

    Z2: NC/PLC interface signals 18.4 Compensations (K3) DB31, ... DBX67.0 Invert handwheel direction of rotation active (machine axes) Edge evaluation: No Signal(s) updated: Cyclic Description For a handwheel, which is assigned to a machine axis, this signal indicates whether the direction of rotation was inverted: Signal = 1 The direction of rotation of the handwheel is inverted.
  • Page 885: Mode Groups, Channels, Axis Replacement (K5)

    Z2: NC/PLC interface signals 18.5 Mode Groups, Channels, Axis Replacement (K5) 18.5 Mode Groups, Channels, Axis Replacement (K5) 18.5.1 Signals to axis/spindle (DB31, ...) DB31, ... DBB8 Axis/spindle replacement Edge evaluation: Yes Signal(s) updated: Cyclic Signal state 1 or The current axis type and currently active channel for this axis must be specified. edge change 0 →...
  • Page 886: Signals From Axis/Spindle (Db31

    Z2: NC/PLC interface signals 18.6 Kinematic Transformation (M1) 18.5.2 Signals from axis/spindle (DB31, ...) DB31, ... DBB68 Axis/spindle replacement Edge evaluation: Yes Signal(s) updated: Cyclic Signal state 1 or The current axis type and currently active channel for this axis is displayed. edge change 0 →...
  • Page 887: Measurement (M5)

    Z2: NC/PLC interface signals 18.7 Measurement (M5) 18.7 Measurement (M5) 18.7.1 Signals from NC (DB10) DB10 DBX107.0 and DBX107.1 Probe actuated Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or Probe 1 or 2 is actuated. edge change 0 → 1 Signal state 0 or Probe 1 or 2 is not actuated.
  • Page 888: Software Cams, Position Switching Signals (N3)

    Z2: NC/PLC interface signals 18.8 Software cams, position switching signals (N3) 18.8 Software cams, position switching signals (N3) 18.8.1 Signal overview PLC interface signals for "Software cams, position switching signals" Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 889: Signals From Nc (Db10)

    Z2: NC/PLC interface signals 18.8 Software cams, position switching signals (N3) 18.8.2 Signals from NC (DB10) DB10 DBX110.0-113.7 Minus cam signal 1-32 Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or The switching edge of the minus cam signal 1-32 is generated as a function of the traversing edge change 0 →...
  • Page 890: Signals To Axis/Spindle (Db31

    Z2: NC/PLC interface signals 18.8 Software cams, position switching signals (N3) 18.8.3 Signals to axis/spindle (DB31, ...) DB31, ... DBX2.0 Cam activation Edge evaluation: no Signal(s) updated: Cyclic Signal state 1 or Output of the minus and plus cam signals of an axis to the general PLC interface is activated. edge change 0 →...
  • Page 891: Punching And Nibbling (N4)

    Z2: NC/PLC interface signals 18.9 Punching and Nibbling (N4) 18.9 Punching and Nibbling (N4) 18.9.1 Signal overview Figure 18-1 PLC interface signals for "Punching and nibbling" 18.9.2 Signals to channel (DB21, ...) DB21, ... DBX3.0 No stroke enable Edge evaluation: Signal(s) updated: Signal state 1 or This signal releases the punching strokes via the PLC.
  • Page 892 Z2: NC/PLC interface signals 18.9 Punching and Nibbling (N4) DB21, ... DBX3.2 Stroke suppression Edge evaluation: Signal(s) updated: Signal state 1 or This signal simply prevents execution of the stroke. The machine traverses anyway. edge change 0 → 1 The automatic path segmentation remains active if it is already activated. Only the signal "Stroke initiation"...
  • Page 893: Signals From Channel (Db21

    Z2: NC/PLC interface signals 18.9 Punching and Nibbling (N4) DB21, ... DBX3.5 Manual stroke initiation Edge evaluation: Signal(s) updated: Signal state 1 or The signal "manual stroke initiation" allows the operator to initiate a punching process, even when edge change 0 → 1 the parts program is not being processed.
  • Page 894: Positioning Axes (P2)

    Z2: NC/PLC interface signals 18.10 Positioning axes (P2) 18.10 Positioning axes (P2) The following signals or commands on the NCK-HMI-PLC interface are only of significance for the positioning axis: Figure 18-2 Signal modification by the PLC 18.10.1 Signals to axis/spindle (DB31, ...) DB31, ...
  • Page 895 Z2: NC/PLC interface signals 18.10 Positioning axes (P2) DB31, ... DBX28.1 Reset Edge evaluation: Yes Signal(s) updated: Cyclic Signal state 1 or edge Reset request to the NCK for the PLC-controlled axis/spindle. change 0 → 1 Feedback signal from the NCK to the PLC: DB31 ...
  • Page 896 Z2: NC/PLC interface signals 18.10 Positioning axes (P2) DB31, ... DBX61.1 Axial alarm Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or edge Effects: change 0 → 1 The axis/spindle is stopped by the NCK via a braking ramp. •...
  • Page 897 Z2: NC/PLC interface signals 18.10 Positioning axes (P2) DB31, … DBX63.2 Axis stop active Signal state 0 or edge Confirmation from the NC to the PLC that the axis has been stopped. change 1 → 0 System variable: $AA_SNGLAX_STAT = 3 (single axis is interrupted) Corresponding to ...
  • Page 898: Function Call - Only 840D Sl

    Z2: NC/PLC interface signals 18.11 Oscillation (P5) 18.10.2 Function call - only 840D sl FC18 For SINUMERIK 840D sl, concurrent positioning axes can be started from the PLC using FC18 (Function Call 18) of the PLC. The following parameters are passed to the function call: ●...
  • Page 899 Z2: NC/PLC interface signals 18.11 Oscillation (P5) DB31, ... DBX28.3 Set reversal point Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or edge Reversal point 2 change 0 → 1 Signal state 0 or edge Reversal point 1 change 1 → 0 DB31, …...
  • Page 900: Signals From Axis/Spindle (Db31

    Z2: NC/PLC interface signals 18.11 Oscillation (P5) DB31, ... DBX28.7 PLC controls axis Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or Axis is controlled by the PLC. edge change The reaction to interface signals is controlled by the PLC by means of the 2 stop bits, other 0 →...
  • Page 901 Z2: NC/PLC interface signals 18.11 Oscillation (P5) DB31, … DBX100.5 Sparking-out active Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or edge The axis is executing sparking-out strokes. change 0 → 1 Signal state 0 or edge The axis is not currently executing sparking-out strokes. change 1 →...
  • Page 902: Rotary Axes (R2)

    Z2: NC/PLC interface signals 18.12 Rotary axes (R2) 18.12 Rotary axes (R2) 18.12.1 Signals to axis/spindle (DB31, ...) DB31, ... DBX12.4 Traversing range limitation for modulo rotary axes Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or Activate traversing range limitation for modulo rotary axes edge change 0 →...
  • Page 903: Synchronous Spindles (S3)

    Z2: NC/PLC interface signals 18.13 Synchronous Spindles (S3) 18.13 Synchronous Spindles (S3) 18.13.1 Signals to axis/spindle (DB31, ...) DB31, ... DBX31.5 Disable synchronization Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or edge The synchronization motion for the following spindle is not disabled from the PLC. change 0 →...
  • Page 904 Z2: NC/PLC interface signals 18.13 Synchronous Spindles (S3) DB31, ... DBX98.0 Fine synchronism Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or edge The positional deviation or velocity difference between the following spindle and its leading change 0 → 1 spindle is within the "Fine synchronism"...
  • Page 905 Z2: NC/PLC interface signals 18.13 Synchronous Spindles (S3) DB31, ... DBX98.2 Actual value coupling 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 circumstances.
  • Page 906: Memory Configuration (S7)

    Z2: NC/PLC interface signals 18.14 Memory Configuration (S7) DB31, ... DBX99.1 FS (following spindle) active Edge evaluation: No Signal(s) updated: Cyclic Signal state 1 or edge The machine axis is currently operating as the following spindle. change 0 → 1 The following spindle thus follows the movements of the leading spindle in synchronous operation in accordance with the transmission ratio.
  • Page 907: Tool Change (W3)

    Z2: NC/PLC interface signals 18.16 Tool Change (W3) DB31, ... DBX76.6 Indexing axis in position Signal state 0 or The axis is not defined as an indexing axis. • edge change 1 → 0 The indexing axis is traversing: • DB31, ...
  • Page 908: Grinding-Specific Tool Offset And Tool Monitoring (W4)

    Z2: NC/PLC interface signals 18.17 Grinding-specific tool offset and tool monitoring (W4) 18.17 Grinding-specific tool offset and tool monitoring (W4) 18.17.1 Signals from axis/spindle (DB31, ...) DB31, ... DBX83.3 Geometry monitoring Edge evaluation: No Signal(s) updated: - Signal state 1 or Error in grinding wheel geometry.
  • Page 909: Appendix

    Appendix List of abbreviations Output ADI4 (Analog drive interface for 4 axes) Adaptive Control Active Line Module Rotating induction motor ASCII American Standard Code for Information Interchange: American coding standard for the exchange of information ASIC Application-Specific Integrated Circuit: User switching circuit ASUB Asynchronous subprogram AUXFU...
  • Page 910 Appendix A.1 List of abbreviations Connector Input CF Card Compact Flash Card Computerized Numerical Control: Computer-Supported Numerical Control Connector Output Certificate of License Communication Compiler Projecting Data: Configuring data of the compiler Cathode Ray Tube picture tube Central Service Board: PLC module Control Unit Communication Processor Central Processing Unit: Central processing unit...
  • Page 911 Appendix A.1 List of abbreviations Input Input/Output Encoder: Actual value encoder Compact I/O module (PLC I/O module) Electrostatic Sensitive Devices ElectroMagnetic Compatibility European standard EnDat Encoder interface EPROM Erasable Programmable Read Only Memory: Erasable, electrically programmable read-only memory ePS Network Services Services for Internet-based remote machine maintenance Designation for an absolute encoder with 2048 sine signals per revolution Engineering System...
  • Page 912 Appendix A.1 List of abbreviations GSDML Generic Station Description Markup Language: XML-based description language for creating a GSD file Global User Data: Global user data Abbreviation for hexadecimal number AuxF Auxiliary Function Hydraulic linear drive Human Machine Interface: SINUMERIK user interface Main Spindle Drive Hardware Commissioning...
  • Page 913 Appendix A.1 List of abbreviations Logic Machine Axis Image: Logical machine axes image Local Area Network Liquid Crystal Display: Liquid crystal display Light Emitting Diode: Light-emitting diode Line Feed Position Measuring System Position controller Least Significant Bit Least significant bit Local User Data: User data (local) Media Access Control MAIN...
  • Page 914 Appendix A.1 List of abbreviations Organization block in the PLC Original Equipment Manufacturer Operator Panel: Operating equipment Operator Panel Interface: Interface for connection to the operator panel Options: Options Optical Link Plug: Fiber optic bus connector Open Systems Interconnection: Standard for computer communications Process Image Output Process Image Input Personal Computer...
  • Page 915 Appendix A.1 List of abbreviations Quadrant Error Compensation Random Access Memory: Read/write memory REFerence point approach function REPOS REPOSition function RISC Reduced Instruction Set Computer: Type of processor with small instruction set and ability to process instructions at high speed Rapid Override: Input correction R Parameter, arithmetic parameter, predefined user variable R Parameter Active: Memory area on the NCK for R parameter numbers...
  • Page 916 Appendix A.1 List of abbreviations Sub Routine File: Subprogram (NC) Programmable Logic Controller SRAM Static RAM (non-volatile) TNRC Tool Nose Radius Compensation Synchronous Rotary Motor Leadscrew Error Compensation Serial Synchronous Interface: Synchronous serial interface Block search Control word GWPS Grinding Wheel Peripheral Speed Software System Files: System files SYNACT...
  • Page 917 Appendix A.1 List of abbreviations Internal communication interface between NCK and PLC Verein Deutscher Ingenieure [Association of German Engineers] Verband Deutscher Elektrotechniker [Association of German Electrical Engineers] Voltage Input Voltage Output Feed Drive Smooth Approach and Retraction Workpiece Coordinate System Tool Tool Length Compensation Workshop-Oriented Programming...
  • Page 918: Overview

    Appendix A.2 Overview Overview Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 919: Glossary

    Glossary Absolute dimensions A destination for an axis motion is defined by a dimension that refers to the origin of the currently active coordinate system. See → Incremental dimension Acceleration with jerk limitation In order to optimize the acceleration response of the machine whilst simultaneously protecting the mechanical components, it is possible to switch over in the machining program between abrupt acceleration and continuous (jerk-free) acceleration.
  • Page 920 Glossary Auxiliary functions Auxiliary functions enable → part programs to transfer → parameters to the → PLC, which then trigger reactions defined by the machine manufacturer. Axes In accordance with their functional scope, the CNC axes are subdivided into: ● Axes: Interpolating path axes ●...
  • Page 921 Glossary Baud rate Rate of data transfer (bits/s). Blank Workpiece as it is before it is machined. Block "Block" is the term given to any files required for creating and processing programs. Block search For debugging purposes or following a program abort, the "Block search" function can be used to select any location in the part program at which the program is to be started or resumed.
  • Page 922 Glossary Component of the NC for the implementation and coordination of communication. Compensation axis Axis with a setpoint or actual value modified by the compensation value Compensation table Table containing interpolation points. It provides the compensation values of the compensation axis for selected positions on the basic axis. Compensation value Difference between the axis position measured by the encoder and the desired, programmed axis position.
  • Page 923 Glossary Cycles Protected subprograms for execution of repetitive machining operations on the → workpiece. Data block 1. Data unit of the → PLC that → HIGHSTEP programs can access. 2. Data unit of the → NC: Data modules contain data definitions for global user data. This data can be initialized directly when it is defined.
  • Page 924 Glossary Editor The editor makes it possible to create, edit, extend, join, and import programs/texts/program blocks. Exact stop When an exact stop statement is programmed, the position specified in a block is approached exactly and, if necessary, very slowly. To reduce the approach time, → exact stop limits are defined for rapid traverse and feed.
  • Page 925 Glossary Frame A frame is an arithmetic rule that transforms one Cartesian coordinate system into another Cartesian coordinate system. A frame contains the following components: → zero offset, → rotation, → scaling, → mirroring. Geometry Description of a → workpiece in the → workpiece coordinate system. Geometry axis The geometry axes form the 2 or 3-dimensional →...
  • Page 926 Glossary HW Config SIMATIC S7 tool for the configuration and parameterization of hardware components within an S7 project Identifier In accordance with DIN 66025, words are supplemented using identifiers (names) for variables (arithmetic variables, system variables, user variables), subprograms, key words, and words with multiple address letters.
  • Page 927 Glossary Interpolatory compensation Interpolatory compensation is a tool that enables manufacturing-related leadscrew error and measuring system error compensations (SSFK, MSFK). Interrupt routine Interrupt routines are special → subprograms that can be started by events (external signals) in the machining process. A part program block which is currently being worked through is interrupted and the position of the axes at the point of interruption is automatically saved.
  • Page 928 Glossary Leadscrew error compensation Compensation for the mechanical inaccuracies of a leadscrew participating in the feed. The controller uses stored deviation values for the compensation. Limit speed Maximum/minimum (spindle) speed: The maximum speed of a spindle can be limited by specifying machine data, the →...
  • Page 929 Glossary Machining channel A channel structure can be used to shorten idle times by means of parallel motion sequences, e.g. moving a loading gantry simultaneously with machining. Here, a CNC channel must be regarded as a separate CNC control system with decoding, block preparation and interpolation.
  • Page 930 Glossary Mode An operating concept on a SINUMERIK controller. The following modes are defined: → Jog, → MDA, → Automatic. Mode group Axes and spindles that are technologically related can be combined into one mode group. Axes/spindles of a mode group can be controlled by one or more → channels. The same →...
  • Page 931 Glossary Offset memory Data range in the control, in which the tool offset data is stored. Oriented spindle stop Stops the workpiece spindle in a specified angular position, e.g. in order to perform additional machining at a particular location. Oriented tool retraction : If machining is interrupted (e.g.
  • Page 932 Glossary Path axis Path axes include all machining axes of the → channel that are controlled by the → interpolator in such a way that they start, accelerate, stop, and reach their end point simultaneously. Path feedrate Path feed affects → path axes. It represents the geometric sum of the feedrates of the →...
  • Page 933 Glossary Polar coordinates A coordinate system which defines the position of a point on a plane in terms of its distance from the origin and the angle formed by the radius vector with a defined axis. Polynomial interpolation Polynomial interpolation enables a wide variety of curve characteristics to be generated, such as straight line, parabolic, exponential functions (SINUMERIK 840D sl).
  • Page 934 Glossary Programmable logic controller Programmable logic controllers (PLCs) are electronic controllers, the function of which is stored as a program in the control unit. This means that the layout and wiring of the device do not depend on the function of the controller. The programmable logic control has the same structure as a computer;...
  • Page 935 Glossary Rotation Component of a → frame that defines a rotation of the coordinate system around a particular angle. Rounding axis Rounding axes rotate a workpiece or tool to an angular position corresponding to an indexing grid. When a grid index is reached, the rounding axis is "in position". RS-232-C Serial interface for data input/output.
  • Page 936 Glossary Spline interpolation With spline interpolation, the controller can generate a smooth curve characteristic from only a few specified interpolation points of a set contour. Standard cycles Standard cycles are provided for machining operations which are frequently repeated: ● For the drilling/milling technology ●...
  • Page 937 Glossary Synchronized axes Synchronized axes take the same time to traverse their path as the geometry axes take for their path. Synchronized axis A synchronized axis is the → gantry axis whose set position is continuously derived from the motion of the → leading axis and is, thus, moved synchronously with the leading axis. From the point of view of the programmer and operator, the synchronized axis "does not exist".
  • Page 938 Glossary Tool Active part on the machine tool that implements machining (e.g. turning tool, milling tool, drill, LASER beam, etc.). Tool nose radius compensation Contour programming assumes that the tool is pointed. Because this is not actually the case in practice, the curvature radius of the tool used must be communicated to the controller which then takes it into account.
  • Page 939 Glossary User program User programs for the S7-300 automation systems are created using the programming language STEP 7. The user program has a modular layout and consists of individual blocks. The basic block types are: ● Code blocks These blocks contain the STEP 7 commands. ●...
  • Page 940 Glossary Workpiece Part to be made/machined by the machine tool. Workpiece contour Set contour of the → workpiece to be created or machined. Workpiece coordinate system The workpiece coordinate system has its starting point in the → workpiece zero-point. In machining operations programmed in the workpiece coordinate system, the dimensions and directions refer to this system.
  • Page 941: Index

    Index $AN_CEC_OUTPUT_AXIS, 248 $AN_CEC_STEP, 248 $AN_LAI_AX_IS_AXCTAX, 111 $AN_LAI_AX_IS_LEADLINKAX, 111 $AN_LAI_AX_IS_LINKAX, 111 $A_DP_IN_CONF, 59 $AN_LAI_AX_TO_IPO_NC_CHANAX, 111 $A_DP_IN_STATE, 60 $AN_LAI_AX_TO_MACHAX, 111 $A_DP_IN_VALID, 60 $AN_REBOOT_DELAY_TIME, 300 $A_DP_OUT_CONF, 59 $P_COUP_OFFS, 726 $A_DP_OUT_STATE, 60 $P_ISTEST, 317 $A_DP_OUT_VALID, 60 $VA_COUP_OFFS, 726 $A_DPx_IN, 58 $A_DPx_OUT, 58 $A_IN, 31 $A_INA, 27 103lp, 110 $A_INCO, 45...
  • Page 942 Index Active file system, 756 Geometry axis in rotated frame, 337 Active infeed axes, 901 Release axis container rotation, 333 Active/passive operating mode, 854 Requirements, 321 Active/passive operating mode of control unit, 854 Time of release, 332 Actual value coupling, 904 without preprocessing stop, 333 Actual value for analog NCK inputs, 845 Axis replacement via PLC, 631...
  • Page 943 Index Persistent transformation, 390 DBB102, 859 Special points to be noted, 389 DBB122, 837 Chaining direction, 388 DBB122 ..., 32 Chaining rule, 807 DBB123, 838 Changing the assignment, 414 DBB123 ..., Channel, 602 DBB124, 837 synchronization, 308 DBB125, 838 Channel axis, 320 DBB126, 837 Channel axis identifier, 268 DBB127, 838...
  • Page 944 Index DBB99, 858 DBX15.0, 19.0, 23.0, 865 DBW148-162, 38 DBX16.0-2, 865 DBW170 …, DBX16.0-5, 864 DBW194-208, 38 DBX16.4, 862 DBX100.0-4, 156 DBX16.5, 862 DBX100.6, 860 DBX16.6, 863 DBX100.7, 860 DBX16.7, 863 DBX101.0-4, 156 DBX17.6, 864 DBX101.6, 860 DBX19.0, 159 DBX101.7, 860 DBX20.0-2, 865 DBX102.0-4, 156 DBX20.0-5, 864...
  • Page 945 Index DBX343.0, 159 DBX40.4, 157 DBX37.0, 876 DBX40.6, 158 DBX37.0-2, 867 DBX41.6, 148 DBX37.1, 876 DBX46.4, 157 DBX37.2, 876 DBX46.6, 158 DBX377.4, 196 DBX52.4, 157 DBX377.5, 196 DBX52.6, 158 DBX38.0, 893 DB31, ... DBX38.1, 893 DBB0, 894 DBX39.5, 876 DBB19, 742 DBX40.5, 157 DBB68, 886 DBX40.6, 869...
  • Page 946 Index DBX4.5, 877 DB31, … DBX4.6, 878 DBX 61.2, 299 DBX4.7, 878 DBX4.0-2, 173 DBX5.0 - 5.5, 151 DBX64.4, 157 DBX5.0-5, 879 DBX64.6, 158 DBX5.6, 879 Defining geometry axes, 414 DBX6.2, 611 Deformation DBX60.1, 857 due to temperature effects, 224 DBX60.4, 773 Delay time, 523 Delayed stroke, 892...
  • Page 947 Index Path definition, 171 Programming and activation, 175 FC18, 629 Velocity override, 172 Feed override, 629 Handwheel selected (for handwheel 1, 2 or 3), 860 Feedforward control Hardware limit switches, 213 Speed, 280 Hirth tooth system, 783 Torque, 282 Home NCU, 95 Feedforward control, 278 Feedrate override, 145 Feedrate override / spindle override axis-specific, 894...
  • Page 948 Index Handwheel 1 active as contour handwheel, 876 Interpolation point, 236 Handwheel 2 active as contour handwheel, 876 Interpolator Handwheel 3 active as contour handwheel, 876 path, 606 Handwheel active (1 to 3), 881 Shaft, 606 Handwheel active (1 to 3) for geometry axis, 871 IPOBRKA, 618 Handwheel direction of rotation inversion active IPOENDA, 618...
  • Page 949 Index MD10360, 35 MD11410, 300 MD10361, 36 MD11450, 571 MD10362, 29 MD12701, 133 MD10364, 29 MD12702, 133 MD10366, 29 MD12703, 133 MD10368, 29 MD12704, 133 MD10394, 49 MD12705, 133 MD10395, 49 MD12706, 133 MD10396, 49 MD12707, 133 MD10397, 49 MD12708, 133 MD10398, 49 MD12709, 133 MD10399, 50...
  • Page 950 Index MD20700, 197 MD32200, 744 MD20730, 608 MD32300, 616 MD20750, 607 MD32301, 146 MD21106, 405 MD32400, 746 MD21150, 698 MD32410, 746 MD21158, 211 MD32420, 746 MD21159, 211 MD32430, 746 MD21166, 210 MD32431, 616 MD21168, 210 MD32436, 146 MD21220, 47 MD32450, 233 MD21300, 743 MD32452, 233 MD21310, 744...
  • Page 951 Index MD37210, 745 Memory expansion, 760 MD37220, 745 Memory organization, 755 MD37230, 748 Minimum interval between two consecutive MD37500, 614 strokes, 568 MD37510, 614 Minus MD37511, 614 -output cam, 535 MD38000, 239 Minus cam signals 1-32, 889 MD7200, 748 Mode group, 306 MEASA, MEAWA, MEAC commands, 446 Modes, 214 Measurement...
  • Page 952 Index with synchronized actions, 667 Positioning axes, 600 Oscillating axis, 641 Axis types, 603 Oscillation active, 901 Axis-specific signals, 630 Oscillation cannot start, 900 Channel-specific signals, 630 Oscillation movement active, 901 Concurrent, 629 Oscillation reversal active, 900 Dry run feedrate, 635 OSCTRL, Maximum number, 617 OSE, 649...
  • Page 953 Index Rotary axes, 681 SD42100, 644 Absolute programming, 694 SD42101, 644 Axis addresses, 682 SD42300, 744 Commissioning, 697 SD42400, 565 Feedrate, 684 SD42402, 568 Incremental programming, 696 SD42404, 568 Mirroring, 699 SD42600, 774 Modulo 360, 685 SD42650, 406 Modulo conversion, 694 SD43300, 774 Operating range, 683 SD43400, 692...
  • Page 954 Index Speed monitoring, 908 Tool offset for grinding tools, 801 Spindle manual travel, 211 Tool types for grinding tools, 805 Spindle number, 807 TRAANG Spindle replacement, 320 Brief description, 349 START, 308 Restrictions, 384 Static NC memory, 755 TRACYL, 348 Static user memory, 759 Axis image, 371 Stop along braking ramp, 899...
  • Page 955 Index x edge ($AC_MEAS_TYPE = 1), 466 y edge ($AC_MEAS_TYPE = 2), 468 z edge ($AC_MEAS_TYPE = 3), 469 Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...
  • Page 956 Index Extended Functions Function Manual, 03/2013, 6FC5397-1BP40-3BA1...

This manual is also suitable for:

Sinumerik 840d slSinumerik 828d

Table of Contents