Siemens SINUMERIK 840D sl Function Manual
Hide thumbs Also See for SINUMERIK 840D sl:
Table of Contents

Advertisement

SINUMERIK SINUMERIK 840D sl/SINUMERIK 828D Extended Functions
SINUMERIK
SINUMERIK 840D sl/
SINUMERIK 828D
Extended Functions
Function Manual
Valid for
Control System
SINUMERIK 840D sl/840DE sl
SINUMERIK 828D
Software
NCU system software for 840D sl/840DE sl
NCU system software for 828D
09/2009
6FC5397-1BP20-0BA0
Preface
A4: Digital and analog
NCK I/Os
B3: Several operator panels
connected to several NCUs,
distributed systems -
only 840D sl
B4: Operation via PG/PC -
only 840D sl
H1: Manual travel and
handwheel travel
K3: Compensation
K5: Mode groups, channels,
axis interchange
M1: Kinematic
transformation
M5: Measuring
N3: Software cams, position
switching cycles -
only 40D sl
N4: Punching and nibbling -
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 monitoring
functions - only 840D sl
Version
2.6
Z2: NC/PLC interface signals
2.6
Appendix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
A

Advertisement

Table of Contents
loading

Summary of Contents for Siemens SINUMERIK 840D sl

  • Page 1 Preface A4: Digital and analog SINUMERIK SINUMERIK 840D sl/SINUMERIK 828D Extended Functions NCK I/Os B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl SINUMERIK B4: Operation via PG/PC - only 840D sl H1: Manual travel and...
  • 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

    ● Researching documentation online Information on DOConCD and direct access to the publications in DOConWEB. ● Compiling individual documentation on the basis of Siemens contents with the My Documentation Manager (MDM), refer to http://www.siemens.com/mdm. My Documentation Manager provides you with a range of features for generating your own machine documentation.
  • Page 4 Preface Standard version This documentation only describes the functionality of the standard version. Extensions or changes made by the machine tool manufacturer are documented by the machine tool manufacturer. Other functions not described in this documentation might be executable in the control. This does not, however, represent an obligation to supply such functions with a new control or when servicing.
  • Page 5 The description of functions include as <signal address> 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 6 If you have any questions, please contact our hotline: Europe/Africa Phone +49 180 5050 - 222 +49 180 5050 - 223 €0.14/min. from German landlines, cell phone prices may differ Internet http://www.siemens.de/automation/support-request Americas Phone +1 423 262 2522 +1 423 262 2200 E-mail mailto:techsupport.sea@siemens.com...
  • Page 7 Preface Note You will find telephone numbers for other countries for technical support on the Internet: http://www.automation.siemens.com/partner Questions about the manual If you have any queries (suggestions, corrections) in relation to this documentation, please send a fax or e-mail to the following address:...
  • Page 8 Preface PPU 260 / 261 PPU 280 / 281 HMI, CNC programming ShopMill/ShopTurn HMI functions ● ● ● ● DIN/ISO programming with programGUIDE ● ● ● ● Online ISO dialect interpreter ● ● ● ● ShopMill/ShopTurn machining step programming ○ ○...
  • Page 9: Table Of Contents

    Contents Preface ..............................3 A4: Digital and analog NCK I/Os......................27 Brief description ...........................27 NCK I/O via PLC ..........................28 1.2.1 General functionality ........................28 1.2.2 NCK digital inputs/outputs......................35 1.2.2.1 NCK digital inputs ........................35 1.2.2.2 NCK digital outputs ........................37 1.2.3 Connection and logic operations of fast NCK inputs/outputs ............41 1.2.4 NCK analog inputs/outputs ......................43 1.2.4.1...
  • Page 10 Contents 2.1.2 Several operator panels and NCUs with control unit management (option)....... 84 2.1.2.1 General information........................84 2.1.2.2 System features .......................... 85 2.1.2.3 Hardware............................. 86 2.1.2.4 Functions............................. 88 2.1.2.5 Configurability ..........................89 2.1.3 Several operator panel fronts and NCUs, standard functionality..........90 2.1.3.1 System features ..........................
  • Page 11 Contents 2.7.1 System variables for axis containers ..................161 2.7.2 Machining with axis container (schematic) ................163 2.7.3 Axis container behavior after Power ON..................164 2.7.4 Axis container response to mode switchover ................164 2.7.5 Axis container behavior in relation to ASUBs ................164 2.7.6 Axis container response to RESET ...................164 2.7.7 Axis container response to block searches ................164...
  • Page 12 Contents 2.15.6.1 Axis container rotation without a part program wait..............245 2.15.6.2 Axis container rotation with an implicit part program wait............246 2.15.6.3 Axis container rotation by one channel only (e.g. during power up) ......... 246 2.15.7 Evaluating axis container system variables ................246 2.15.7.1 Conditional branch ........................
  • Page 13 Contents 4.2.3 Special features of continuous travel..................291 Incremental travel (INC)......................292 4.3.1 General functionality ........................292 4.3.2 Distinction between inching mode and continuous mode............292 4.3.3 Special features of incremental travel..................294 Handwheel travel in JOG ......................295 4.4.1 General functionality ........................295 4.4.2 Travel request ..........................299 4.4.3 Double use of the handwheel ....................303 Handwheel override in automatic mode ..................305...
  • Page 14 Contents Temperature compensation ...................... 345 5.2.1 Description of functions......................345 5.2.2 Commissioning.......................... 348 5.2.2.1 Temperature-dependent parameters ..................348 5.2.2.2 Temperature compensation type and activation ............... 348 5.2.2.3 Maximum compensation value per IPO clock cycle ..............349 5.2.3 Example ............................ 349 5.2.3.1 Commissioning the temperature compensation for the Z axis of a lathe........
  • Page 15 Contents 5.8.2 Reboot delay ..........................452 Data lists ............................455 5.9.1 Machine data..........................455 5.9.1.1 General machine data........................455 5.9.1.2 Channel-specific machine data....................455 5.9.1.3 Axis/Spindle-specific machine data ...................455 5.9.2 Setting data ..........................456 5.9.2.1 General setting data........................456 5.9.2.2 Axis/spindle-specific setting data ....................457 5.9.3 Signals ............................457 5.9.3.1 Signals from NC.........................457 5.9.3.2...
  • Page 16 Contents 7.1.3 TRAANG (option) ........................500 7.1.4 Chained transformations ......................500 7.1.5 Activating transformation machine data via parts program/softkey .......... 501 TRANSMIT (option)........................502 7.2.1 Preconditions for TRANSMIT....................503 7.2.2 Settings specific to TRANSMIT....................506 7.2.3 Activation of TRANSMIT ......................510 7.2.4 Deactivation of the TRANSMIT function ...................
  • Page 17 Contents 7.10.3 TRAANG ............................590 7.10.4 Chained transformations......................591 7.10.5 Activating transformation MD via a parts program..............595 7.10.6 Axis positions in the transformation chain .................596 7.11 Data lists ............................599 7.11.1 Machine data..........................599 7.11.1.1 TRANSMIT..........................599 7.11.1.2 TRACYL .............................600 7.11.1.3 TRAANG ............................602 7.11.1.4 Chained transformations......................603 7.11.1.5 Non transformation-specific machine data ................603 7.11.2 Signals ............................603...
  • Page 18 Contents 8.4.5.4 Measuring a tool length with stored or current position (measurement type 23)...... 672 8.4.5.5 Measurement of a tool length of two tools with orientation............673 Measurement accuracy and functional testing................685 8.5.1 Measurement accuracy......................685 8.5.2 Probe functional testing......................685 Examples - only 840D sl ......................
  • Page 19 Contents 10.2.5 PLC signals specific to punching and nibbling................723 10.2.6 Punching and nibbling-specific reactions to standard PLC signals ...........723 10.2.7 Signal monitoring ........................724 10.3 Activation and deactivation ......................725 10.3.1 Language commands ........................725 10.3.2 Functional expansions .......................729 10.3.3 Compatibility with earlier systems....................733 10.4 Automatic path segmentation ....................735 10.4.1...
  • Page 20 Contents 11.7 Control by the PLC........................799 11.7.1 Starting concurrent positioning axes from the PLC ..............801 11.7.2 PLC-controlled axes........................801 11.7.3 Control response of PLC-controlled axes ................. 803 11.8 Response with special functions....................804 11.8.1 Dry run (DRY RUN)........................804 11.8.2 Single block..........................
  • Page 21 Contents 12.6.1.1 General machine data........................844 12.6.2 Setting data ..........................844 12.6.2.1 Axis/spindle-specific setting data ....................844 12.6.3 Signals ............................844 12.6.3.1 Signals to axis/spindle .......................844 12.6.3.2 Signals from axis/spindle ......................845 12.6.4 System variables........................845 12.6.4.1 Main run variables for motion-synchronous actions ..............845 R2: Rotary axes ............................. 849 13.1 Brief description .........................849 13.2...
  • Page 22 Contents 14.4.1 Special features of synchronous mode in general..............903 14.4.2 Restore synchronism of following spindle................. 905 14.4.3 Influence on synchronous operation via PLC interface ............907 14.4.4 Differential speed between leading and following spindles ............910 14.4.5 Behavior of synchronism signals during synchronism correction ..........915 14.4.6 Delete synchronism correction and NC reset ................
  • Page 23 Contents 16.5.1 Function .............................953 16.5.2 Hirth tooth system ........................955 16.5.3 Response of the Hirth axes in particular situations..............956 16.5.4 Restrictions ..........................957 16.5.5 Modified activation of machine data ..................958 16.6 Starting up indexing axes......................959 16.7 Special features of indexing axes ....................962 16.8 Examples ...........................963 16.8.1...
  • Page 24 Contents 18.3.4 Example of writing online tool offset continuously ..............997 18.3.5 Write online tool offset discretely ....................998 18.3.6 Information about online offsets....................999 18.4 Online tool radius compensation..................... 1001 18.5 Grinding-specific tool monitoring..................... 1002 18.5.1 General information......................... 1002 18.5.2 Geometry monitoring.......................
  • Page 25 Contents 19.8.2 Signals from axis/spindle (DB31, ...)..................1064 19.9 Software cams, position switching signals................1065 19.9.1 Signal overview ........................1065 19.9.2 Signals from NC (DB10) ......................1066 19.9.3 Signals to axis/spindle (DB31, ...) ....................1067 19.9.4 Signals from axis/spindle (DB31, ...)..................1067 19.10 Punching and nibbling......................1068 19.10.1 Signal overview ........................1068 19.10.2 Signals to channel (DB21, ...) ....................1068 19.10.3 Signals from channel (DB21, ...) ....................1070...
  • Page 26 Contents Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 27: A4: Digital And Analog Nck I/Os

    A4: Digital and analog NCK I/Os Brief description General information Signals can be read and output in the interpolation cycle via the "digital and analog NCK I/Os". The following functions can be executed with these signals, for example: ● Several feedrate values in one block ●...
  • Page 28: Nck I/O Via Plc

    A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC NCK I/O via PLC 1.2.1 General functionality General The ability to control or influence time-critical NC functions is dependent on high-speed NCK I/O interfaces or the facility to rapidly address particular PLC I/Os. Therefore, the functions below can be carried out using the SINUMERIK 840D/840Di: ●...
  • Page 29 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC 840Di hardware digital I/Os Digital inputs/outputs are provided for the SINUMERIK 840Di via the MCI-Board-Extension module. The following connections are available: ● Two handwheels ● Two probes ● Four digital inputs/outputs Note The MCI-Board-Extension module is an option for the SINUMERIK 840Di.
  • Page 30 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Number The number of addressable digital NCK input/output bytes and analog inputs/outputs must be defined by means of general machine data. Machine data Number of active ... Max. number MD10350 $MN_FASTIO_DIG_NUM_INPUTS ...
  • Page 31 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Note The hardware assignment is different on the SINUMERIK 840D and 840Di controls. The assignment of I/Os for SINUMERIK 840Di is specified via the machine data: MD10362 to MD10368 with the following default values: Machine data Description...
  • Page 32 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Guidelines for machine data $MN_HW_ASSIGN_...: ● Logical address in 1st and 2nd byte is specified in hexadecimal format. Example: 050001A2 (hex) equals logical address 418 (dec). ● Address 0 is reserved for the PLC and cannot be used as an NC I/O. ●...
  • Page 33 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Weighting factor The evaluation factors of the following general machine data allow each individual analog NCK input and output to be adapted to the AD or DA converters of the analog I/O module used: MD10320 $MN_FASTIO_ANA_INPUT_WEIGHT[hw] MD10330 $MN_FASTIO_ANA_OUTPUT_WEIGHT[hw]...
  • Page 34 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Isochronous processing The I/O modules of the external NCK I/Os on the SINUMERIK 840D can be operated in one of the following two modes: ● Asynchronous The input and output values are made available in cycles set by the terminal block, which are asynchronous with the internal NC processing cycles.
  • Page 35: Nck Digital Inputs/Outputs

    A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC 1.2.2 NCK digital inputs/outputs 1.2.2.1 NCK digital inputs Number General machine data is used to define available digital NCK inputs (in groups of 8). MD10350 $MN_FASTIO_DIG_NUM_INPUTS (Number of active digital NCK input bytes) Function The digital NCK inputs allow external signals to be injected which can then be used, for example, to control the workpiece-machining program sequence.
  • Page 36 A4: Digital and analog NCK I/Os 1.2 NCK I/O 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. The influence of the PLC is, therefore, ignored in the actual value (see fig.).
  • Page 37: Nck Digital Outputs

    A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Figure 1-1 Signal flow for digital NCK inputs 1.2.2.2 NCK digital outputs Number The available digital NCK outputs can be defined (in groups of eight) using the following general machine data (number of active digital NCK output bytes): MD10360 $MN_FASTIO_DIG_NUM_OUTPUTS Function The digital NCK outputs provide the option of outputting important switching commands at...
  • Page 38 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Disable output The PLC user program is capable of disabling the digital NCK outputs individually with interface signal DB10, DBB4 or DBB130 ... (disable digital NCK outputs). In this case, the "0" signal is output at the hardware output (see fig.). Overwrite mask Every output that can be set by the NC part program can be overwritten from the PLC using the overwrite mask.
  • Page 39 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Read setpoint The current NCK value of the digital outputs can be read by the PLC user program: DB10, DBB64 or DBB186 ... (setpoint for digital NCK outputs) Please note that this setpoint ignores disabling and the PLC setting mask. Therefore, the setpoint can differ from the actual signal state at the hardware output (see fig.).
  • Page 40 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Figure 1-2 Signal flow for digital NCK outputs Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 41: Connection And Logic Operations Of Fast Nck Inputs/Outputs

    A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC 1.2.3 Connection and logic operations of fast NCK inputs/outputs Function Fast NCK I/O inputs can be set using software as a function of fast-output signal states. Overview: Connect The NCK I/O fast input is set to the signal state of the assigned fast output. OR operation The NCK I/O fast input adopts the signal state as a result of the ORing of the output signal with the assigned input signal.
  • Page 42 A4: Digital and analog NCK I/Os 1.2 NCK I/O 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 43: Nck Analog Inputs/Outputs

    A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC 1.2.4 NCK analog inputs/outputs 1.2.4.1 NCK analog inputs Amount General machine data is used to define available analog NCK inputs: MD10300 $MN_FASTIO_ANA_NUM_INPUTS(Number of analog NCK inputs) Function The value of the analog NCK input [n] can be accessed directly in the part program using system variable $A_INA[n].
  • Page 44 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Weighting factor The weighting factor in general machine data can be used to adapt the analog NCK inputs to different analog-to-digital converter hardware variants for the purpose of reading in the part program (see figure): MD10320 $MN_FASTIO_ANA_INPUT_WEIGHT[hw] In this machine data, it is necessary to enter the value x that is to be read in the part program...
  • Page 45: Nck Analog Outputs

    A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Figure 1-3 Signal flow for analog NCK inputs 1.2.4.2 NCK analog outputs Number The available analog NCK outputs are defined using general machine data MD10310 $MN_FASTIO_ANA_NUM_OUTPUTS (number of analog NCK outputs). Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 46 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Function The value of the analog output [n] can be defined directly in the part program using system variable $A_OUTA[n]. Before output to the hardware I/Os, the analog value set by the NCK can be changed by the PLC (see fig.).
  • Page 47 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Read setpoint The current NCK value of the analog outputs can be read by the PLC user program: DB10, DBB210 - 225 (setpoint of NCK analog output n) Please note that this setpoint ignores disabling and the PLC setting mask. Therefore, the setpoint can differ from the actual analog value at the hardware output (see fig.).
  • Page 48 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC The analog NCK outputs are used in particular for grinding and laser machines. Figure 1-4 Signal flow for analog NCK outputs Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 49: Direct Plc I/Os, Addressable From The Nc

    A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC 1.2.5 Direct PLC I/Os, addressable from the NC Introduction 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 50 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Variable-value ranges Values within the following ranges can be stored in the variables: $A_PBB_OUT[n] ;(-128 ... +127) or (0 ... 255) $A_PBW_OUT[n] ;(-32768 ... +32767) or (0 ... 65535) $A_PBD_OUT[n] ;(-2147483648 ...
  • Page 51 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC MD10399 $MN_PLCIO_TYPE_REPRESENTATION Little-/big-endian format display of system variables $A_PBx_OUT, $A_PBx_IN for PLC I/Os that can be controlled directly from the NCK value = 0 (Default) System variables are displayed in little-endian format (i.e., least significant byte at least significant address) value = 1 (Standard format for PLC, recommended)
  • Page 52: Analog-Value Representation Of The Nck Analog Input/Output Values

    A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC 1.2.6 Analog-value representation of the NCK analog input/output values Conversion of analog values The analog values are only processed by the NCU in a digital form. Analog input modules convert the analog process signal into a digital value. Analog output modules convert the digital output value into an analog value.
  • Page 53 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Table 1- 2 Examples of digital analog-value representation Resolution Binary analog value High byte Low byte Bit number Significance of the bits 14-bit analog value 12-bit analog value For the resolutions and rating ranges of the analog input/output modules used, see: References: /PHD/ SINUMERIK 840D Configuration Manual NCU(HW) /S7H/ SIMATIC S7-300 Software Installation Manual, Technology Functions.
  • Page 54: Comparator Inputs

    A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC 1.2.7 Comparator inputs Function Two internal comparator inputs bytes (with eight comparator inputs each) are available in addition to the digital and analog NCK inputs. The signal 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 (see fig.).
  • Page 55 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Example MD10530 $MN_COMPAR_ASSIGN_ANA_INPUT_1[0] = 1 MD10530 $MN_COMPAR_ASSIGN_ANA_INPUT_1[1] = 1 MD10530 $MN_COMPAR_ASSIGN_ANA_INPUT_1[7] = 7 Analog input 1 acts on input bits 0 and 1 of comparator byte 1. Analog input 7 acts on input bit 7 of comparator byte 1. Similarly, the assignment for comparator byte 2 should be set using the following machine data: MD10531 $MN_COMPAR_ASSIGN_ANA_INPUT_2[b]...
  • Page 56 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Threshold values The threshold values used for comparisons on comparator byte 1 or 2 must be stored as setting data. For every comparator input bit [b], you must enter a separate threshold value: SD41600 $SN_COMPAR_THRESHOLD_1[b] (threshold values for input bit [b] of comparator byte 1);...
  • Page 57 A4: Digital and analog NCK I/Os 1.2 NCK I/O via PLC Figure 1-5 Functional sequence for comparator input byte 1 (or 2) Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 58: Nck I/O Via Profibus - Only 840D Sl

    A4: Digital and analog NCK I/Os 1.3 NCK I/O via PROFIBUS - only 840D sl NCK I/O via PROFIBUS - only 840D sl 1.3.1 Functionality General The function "NCK-I/O via PROFIBUS" implements a direct data exchange between NCK and PROFIBUS-I/O. The PROFIBUS-I/O is connected to the control.
  • Page 59: Parameter Assignment

    A4: Digital and analog NCK I/Os 1.3 NCK I/O via PROFIBUS - only 840D sl Parallel data access A parallel read access through compile cycles and part programs/synchronous actions on data of the same I/O range is possible, as long as the corresponding I/O range has been configured for this.
  • Page 60 A4: Digital and analog NCK I/Os 1.3 NCK I/O via PROFIBUS - only 840D sl Further attributes Further attributes can be allocated to each I/O range with the following machine data: MD10502 $MN_ DPIO_RANGE_ATTRIBUTE_IN[n] Value Description Little Endian format Big Endian format Reserved Reading possible via system variables and CC-binding.
  • Page 61: Programming

    A4: Digital and analog NCK I/Os 1.3 NCK I/O via PROFIBUS - only 840D sl 1.3.3 Programming Requirement ● Correct configuration of the corresponding I/O ranges. ● PLC must actually be able to provide the required I/O ranges (useful-data slots). ●...
  • Page 62 A4: Digital and analog NCK I/Os 1.3 NCK I/O via PROFIBUS - only 840D sl Access I/O range data The following system variables are available for accessing the I/O range data: Table 1- 3 NCK → PROFIBUS-I/O System variables Value Description $A_DPB_OUT[n,m] 8 bit unsigned...
  • Page 63 A4: Digital and analog NCK I/Os 1.3 NCK I/O via PROFIBUS - only 840D sl Query status of an I/O range The exact status of an I/O range can be queried with the help of the following system variables. System variables Value Description $A_DP_IN_STATE[n]...
  • Page 64: Communication Via Compile Cycles

    A4: Digital and analog NCK I/Os 1.3 NCK I/O via PROFIBUS - only 840D sl 1.3.3.2 Communication via compile cycles General The CC-bindings are available for reading/printing the 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 are updated in each Servo cycle.
  • Page 65 A4: Digital and analog NCK I/Os 1.3 NCK I/O via PROFIBUS - only 840D sl 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, are rejected by returning the enumerator CCDATASTATUS_RANGE_LENGTH_LIMIT.
  • Page 66: Constraints

    A4: Digital and analog NCK I/Os 1.4 Constraints Constraints 1.4.1 NCK I/O via PLC Availability of the function "digital and analog NC inputs/outputs" Digital and analog CNC inputs/outputs (DI, DO, AI, AO) are available as follows: ● SINUMERIK 840D with NCU 571 4 DI/4 DO (on board) 32 DI/32 DO with expansion via NCU terminal block ●...
  • Page 67: Nck I/O Via Profibus - Only 840D Sl

    1.4 Constraints 1.4.2 NCK I/O via PROFIBUS - only 840D sl System The function is available in the SINUMERIK 840D sl system for isochronous and non- isochronous configured PROFIBUS-I/Os. Hardware ● The required PROFIBUS-I/O must be available and ready to use.
  • Page 68: Examples

    A4: Digital and analog NCK I/Os 1.5 Examples Examples 1.5.1 NCK I/O via PLC 1.5.1.1 Writing to PLC-I/Os The following assumptions are made in this example: ● Data are to be output directly to the following PLC I/Os: - log. addr. 521: ;8-bit digital output module - log.
  • Page 69: Reading From Plc-I/Os

    A4: Digital and analog NCK I/Os 1.5 Examples 1.5.1.2 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. addr. 426: 32-bit DP slave input - log.
  • Page 70: Nck I/O Via Profibus - Only 840D Sl

    A4: Digital and analog NCK I/Os 1.5 Examples 1.5.2 NCK I/O via PROFIBUS - only 840D sl 1.5.2.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 71: Profibus-I/O In Read Direction

    A4: Digital and analog NCK I/Os 1.5 Examples Programming $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 ; Caution: RangeData of byte 6 are overwritten $A_DPSD_OUT[5,3]=’8FHex’ ; write (32 bit) to RangeIndex=5, RangeOffset=3 ;...
  • Page 72 A4: Digital and analog NCK I/Os 1.5 Examples MD10502 $MN_DPIO_RANGE_ATTRIBUTE_IN[0] Bit0 = 1 (Big-Endian-Format) Bit2 = 0 (read possible via system variable and CC-binding) Bit3 = 0 (Slot-lifespan-alarms issued) Configuration for programming via CompileCycles ● RangeIndex = 1 (NCK-internal configuration) ●...
  • Page 73: Query Of The Rangeindex In Case Of "Profibus-I/O In Write Direction

    A4: Digital and analog NCK I/Os 1.5 Examples 1.5.2.3 Query of the RangeIndex in case of "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) ● as per S7-HW-configuration: –...
  • Page 74 A4: Digital and analog NCK I/Os 1.5 Examples Query, whether the configured RangeIndex = 5 is valid check: ; Jump marker IF $A_DP_OUT_VALID B_AND ’B100000’ GOTOF ; if data range valid write ; => jump to N15 SETAL(61000) ; Set alarm no. 61000 write: ;...
  • Page 75: Data Lists

    A4: Digital and analog NCK I/Os 1.6 Data lists Data lists 1.6.1 Machine data 1.6.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 10330 FASTIO_ANA_OUTPUT_WEIGHT...
  • Page 76: Channel-Specific Machine Data

    41601 COMPAR_THRESHOLD_2 Threshold values for comparator byte 2 1.6.3 Signals 1.6.3.1 Signals to NC Signal name SINUMERIK 840D sl SINUMERIK 828D Disable digital NCK inputs DB10.DBB0/122/124/126/128 DB2800.DBB0/1000 Setting on PLC of digital NCK inputs DB10.DBB1/123/125/127/129 DB2800.DBB1/1001 Disable digital NCK outputs DB10.DBB4/130/134/138/142...
  • Page 77: Signals From Nc

    A4: Digital and analog NCK I/Os 1.6 Data lists 1.6.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...
  • Page 78 A4: Digital and analog NCK I/Os 1.6 Data lists Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 79: B3: Several Operator Panels Connected To Several Ncus, Distributed Systems - Only 840D Sl

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl Brief description 2.1.1 Topology of distributed system configurations Features Rotary indexing machines, multi-spindle turning machines and complex NC production centers all exhibit one or more of the following features: ●...
  • Page 80 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Figure 2-1 Topology of distributed system configurations PLC-PLC communication entails one of the following: - PLC-PLC cross-communication master, slave comm.) - Local PLC I/Os Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 81 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description M: N Assignment of several control units (M) to several NCUs (N): ● Bus addresses, bus type ● Properties of the control units: –...
  • Page 82 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description NCU link with different IPO cycles It is possible to use an NCU link connection between NCUs with different interpolation cycles for specific applications, e.g. non-circular turning. Host computer Communication between master computers and operator panels is described in: Reference:...
  • Page 83 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Bus capacities The buses illustrated in the diagram above are specially designed for their transmission tasks. The resultant communication specifications are shown in the next diagram: ●...
  • Page 84: Several Operator Panels And Ncus With Control Unit Management (Option)

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description 7-layer model structure Communication takes place on the following protocol layers: Figure 2-3 Protocol levels of 7-layer model The NCU link and DP can operate faster because they are assigned directly to layer 2. 2.1.2 Several operator panels and NCUs with control unit management (option) 2.1.2.1...
  • Page 85: System Features

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description 2.1.2.2 System features M:N concept This concept allows the user to connect any control units to any NCUs in the system (within the limits imposed by the hardware) via the bus and to switch them over as and when required.
  • Page 86: Hardware

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description 2.1.2.3 Hardware Operator panel fronts The OP/TP operator panel fronts incorporate a slimline screen, softkeys, a keyboard, interfaces and a power supply. Machine control panel The machine control panel (MCP) incorporates a keyboard, a rotary button pad and interfaces.
  • Page 87 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Address assignments Bus nodes each have a unique address on the bus. The NCU uses: ● A common address for the NC and PLC on the OPI ●...
  • Page 88: Functions

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Number of MCPs/HHUs on 1 NCU Two MCPs and one HHU can be connected to the OPI or MPI interface of an NCU as standard.
  • Page 89: Configurability

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Dynamic properties The dynamic properties can be changed during runtime. The states: Online Offline Normal HMI operating mode with communication between PCU/HT6 and No communication NCU: Operation and/or monitoring possible.
  • Page 90: Several Operator Panel Fronts And Ncus, Standard Functionality

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description This means that: ● The hardware configuration is displayed ● The properties of the components are defined ● The desired switchovers/assignments are possible 2.1.3 Several operator panel fronts and NCUs, standard functionality 2.1.3.1...
  • Page 91: Functions

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description 2.1.3.2 Functions Switchover of link to another NCU with the softkey labeled "Connections" A menu appears in which you can select the connections conn_1, ... conn_n (declared in NETNAMES.INI) via softkeys.
  • Page 92 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Alarms, messages HMI Embedded, OP030 HMI Advanced It is only possible to output the alarms of the NCU The alarms and messages of all connected NCUs to which a connection is currently active.
  • Page 93: Configurability

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description M:N function The M:N function is operated via the "Control unit management" option. Prerequisite: Configuration via the NETNAMES.INI file References: /IAD/ 840D Commissioning Manual The channel menu is selected using the "Channel switchover"...
  • Page 94 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Features When operating two control units in the configuration illustrated above, the user will observe the following system operating characteristics: ● For the NCU, there is no difference between inputs from the various control units. ●...
  • Page 95 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Features The operating characteristics are as follows when several NCUs are linked to one operator panel: ● NCU operation: The user must select the NCU to be operated by means of a softkey. The operator display in the "Connection"...
  • Page 96 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Features The following operating characteristics are typical of the OEM solution illustrated in the diagram above: ● NCU operation: The user must select the NCU to be operated by means of a softkey. The operator display shows the name of the connection and of the NCU to which the control unit is currently linked.
  • Page 97: Mpi/Opi Network Rules

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description At any given time, only one preselected NCU can be connected to the HMI Advanced operator panel for operations: ● HMI Embedded also only has one connection for alarms. ●...
  • Page 98: Ncu Link

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description ● Either one HHU and one HT6, or two HHUs, or two HT6s can be connected to each bus segment. No bus terminators must be inserted in the distributor boxes of an HHU or HT6. If more than one HHU/HPU are connected to a bus segment, this can be done with an intermediate repeater.
  • Page 99: Types Of Distributed Machines

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description WARNING If Safety Integrated (SI) is used in machines with NCU Link, then it is possible, when: • the configuration of the system-integrated SI functions does not include the link, containerlink and/or lead-link axes.
  • Page 100 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description NCU assignments The numerous axes on these machines are assigned to different NCUs based on the RVM/MS configuration (e.g. one NCU for each machining unit or group of machining units). The global units are assigned to a separate NCU or distributed accordingly.
  • Page 101: Link Axes

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description When advancing the rotary table with RVM or the drum with MS, the axis holding the workpiece moves to the next machining unit. The axis holding the workpiece is now assigned to the channel of the machining unit.
  • Page 102: Flexible Configuration

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Hardware ● The NCUs involved in alternate use of axes across NCU limits must be equipped with a link module. The NCU link module offers fast NCU-to-NCU communication based on a synchronized 12-Mbaud Profibus interface.
  • Page 103: User Communication Across The Ncus

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description 2.1.4.5 User communication across the NCUs Link variables ● Every NCU connected by means of a link module can address uniformly accessible global link variables for all connected NCUs. Link variables can be programmed in the same way as system variables.
  • Page 104: Lead Link Axes

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description 2.1.4.6 Lead link axes Following axis movements The configuration illustrated below shows how to traverse following axes on several NCUs (NCU2 to NCU n in the diagram) in relation to the movement of the leading axis controlled by another NCU (NCU 1 in the example).
  • Page 105 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Application guideline Whereas the NCU/NCUs with a standard interpolation cycle operate(s) axes and spindles with standard requirements with respect to dynamic performance and accuracy, the NCU/NCUs with a faster interpolation cycle operate(s) one or a small number of axes with higher requirements with respect to dynamic performance and accuracy.
  • Page 106 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.1 Brief description Essential features ● Cross-NCU interpolation of fast (X) and standard (C,Z) axes/spindles (see diagram). ● The part program is running on the NCU with the faster interpolation cycle and can "see" the other axes as link axes or container link axes.
  • Page 107: Several Operator Panel Fronts And Ncus With Control Unit Management Option

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Several operator panel fronts and NCUs with control unit management option The following section provides a detailed description of the preparations and implementation of the operating steps for the M:N concept.
  • Page 108 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Properties The M:N system features control units with the following properties: Server Control panel Maintains a constant 1:N connection Can be switched over to different NCUs and maintains a constant 1:1 connection...
  • Page 109: Configuration File Netnames.ini

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Permissible combinations in one installation If a server (alarm/data management server) is configured in an M:N system, it also acts as a main control panel.
  • Page 110 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option In the following tables, italics ● Parameters which the user may need to change are printed in ●...
  • Page 111 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option IV. HMI Description Characteristics of the control unit: Element Explanation Example Identifier [param Header [param MMC_1] Type/connection mmc_typ =...
  • Page 112 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Explanatory notes on mmc_typ: mmc_typ contains type and connection identifiers for the control units and is transferred to the PLC in the event of a switching request.
  • Page 113 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Note If the bus node addresses on the MPI bus are configured in conformance with SIMATIC, the configuring engineer can read out the assigned addresses using a SIMATIC programming device and use them to create the NETNAMES.INI file.
  • Page 114: Creating And Using The Configuration File

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Element Explanation Example ChanNum = i (i = 1, 2, 3,...) Number of channel configured ChanNum = 1 for associated NCU (3.) And so on for all channels in...
  • Page 115: Power Up

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option 2.2.6 Power up Defaults standard functionality The following defaults are applied (standard M:N = 1:1) if no NETNAMES.INI configuration file is loaded into the HMI Embedded/OP030/HT6 or if the file cannot be interpreted: ●...
  • Page 116 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Sequence 1. HMI/HT6 boots on the NCU with bus address 13 if the NETNAMES.INI file has not been changed (original factory settings).
  • Page 117 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Sequence 1. HMI boots on the NCU with bus address 13, if the NETNAMES.INI has not been not changed (original factory settings).
  • Page 118: Hmi Switchover

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option 2.2.7 HMI switchover With the M:N concept, you can change the control unit properties and states configured in the NETNAMES.INI file during runtime.
  • Page 119 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Suppression strategy The PLC program "Control Unit Switchover" operates according to the ● priorities of the control units and ●...
  • Page 120: Connection And Switchover Conditions

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option 2.2.9 Connection and switchover conditions Proceed as follows to allow a previously offline control unit on a particular NCU to go online or to switch an online control unit over to another NCU: 1.
  • Page 121: Implementation Of Control Unit Switchover

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option 2.2.10 Implementation of control unit switchover Control unit switchover is an extension of channel switchover. Channel switchover Channel configuration allows channels of selected NCUs to be individually grouped and named.
  • Page 122: Operating Mode Switchover

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Channel switchover You can switch over to other channels by means of the vertically arranged softkeys. Group switchover You can switch to another group by means of the softkeys on the horizontal menu (see Section "Implementation of control unit switchover");...
  • Page 123 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Interaction takes place according to the following rules: Active operating mode ● The user requests active operating mode by pressing a key on the operator panel front. Active mode has the following characteristics: –...
  • Page 124: Mcp Switchover

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Rules for operating mode switchover The following rules apply to changes of operating mode (see also Sections "Suppression", "Suppression strategy"): ●...
  • Page 125: Plc Program "Control Unit Switchover

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Activating/deactivating the MCP If an MCP is assigned to the PCU in the NETNAMES.INI file, it is activated/deactivated as part of the operating mode change.
  • Page 126 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option MCP switchover The MCP switchover is not mandatory. It can be enabled or disabled via the FB101/DB101 variable: MSTT_enable.
  • Page 127 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option If the default settings in FB101 are not changed, the alarms start at DB2.DBX188.0 (1st alarm) and end at DB2.DBX188.(6th alarm) With variable: DBX_Byte_alarm, the byte value for the 6 alarms can be changed from the default setting of...
  • Page 128 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Processing operating authorization for servers Three server-related program branches for handling HMI requests are implemented in the control unit switchover program: 1.
  • Page 129 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.2 Several operator panel fronts and NCUs with control unit management option Resetting of interface by PLC The interface signals relating to control unit switchover can be reset selectively as follows (without RESET on the NCU): FB101/DB101 variables: Initialization...
  • Page 130: Several Operator Panel Fronts And Ncus, Standard Functionality

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.3 Several operator panel fronts and NCUs, standard functionality Several operator panel fronts and NCUs, standard functionality The M:N concept without the Control Unit Management option is described below. Note This section does not apply to the HT6, since only one HT6 can be operated on an NCU without control unit management.
  • Page 131: Configurations

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.3 Several operator panel fronts and NCUs, standard functionality 2.3.1 Configurations Configuration parameters As it is possible to freely combine hardware components, it is necessary to inform the system which components are combined and in what manner.
  • Page 132 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.3 Several operator panel fronts and NCUs, standard functionality Syntactic declarations The configuration file must be generated as an ASCII file. The syntax is the same as that used in Windows *.ini"...
  • Page 133 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.3 Several operator panel fronts and NCUs, standard functionality Identifier: A descriptive entry for an operator panel front must be generated with the selected identifier according to IV. NCU_ID: A descriptive entry for the NCU must be generated with the selected NCU identifier according to V.
  • Page 134 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.3 Several operator panel fronts and NCUs, standard functionality Vocabulary words: param: Introduces parameter for operator component name: User-defined name for the operator component to be described type: Operator component type mmc_address: Bus address of operator component V.
  • Page 135: Switchover Of Connection To Another Ncu

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.3 Several operator panel fronts and NCUs, standard functionality Defaults The following defaults are applied if no NETNAMES.INI configuration file has been copied into the HMI Embedded/OP030 or if the file cannot be interpreted: ●...
  • Page 136: Power Up

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.3 Several operator panel fronts and NCUs, standard functionality 2.3.4 Power up Differences between HMI Embedded and HMI Advanced Due to the differences in power-up characteristics, different commissioning procedures are required.
  • Page 137: Ncu Replacement

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.3 Several operator panel fronts and NCUs, standard functionality 2.3.5 NCU replacement The procedure for NCU replacement or configuration of an additional NCU is similar to that for commissioning (see "Power up").
  • Page 138: Restrictions For Switchover Of Operator Components

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.4 Restrictions for switchover of operator components Restrictions for switchover of operator components Rejection of link On switchover to another NCU, the NCU selected for the new link may reject the connection. There may be a defect in the NCU or no further operator panel can be accepted.
  • Page 139: Ncu Link

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.5 NCU link NCU link 2.5.1 Introduction The number of channels or axes per NCU is restricted due to the limitation on memory and computing capacity elements. A single NCU is not sufficient to fulfill the requirements made by complex and distributed machines, such as multi-spindle and rotary indexing machines.
  • Page 140: Technological Description

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.5 NCU link 2.5.2 Technological description Figure 2-15 Sectional diagram of a drum changeover Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 141 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.5 NCU link The diagram shows the main components of a simple multi-spindle plant. Several spindles are mounted mechanically on the drum, each of which can used to perform a different machining operation.
  • Page 142: Link Axes

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes Link axes Introduction This subsection describes how an axis (for example, B1 in diagram "Overview of link axes"), which is physically connected to the drive control system of NCU2, can be addressed not only by NCU2, but also by NCU1.
  • Page 143 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes Terminology The following terms are important for understanding the subsequent description: ● Link axis Link axes are machine axes, which are physically connected to another NCU and whose position is controlled from this NCU.
  • Page 144: Configuration Of Link Axes And Container Axes

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes ● Home channel Channel in which the setpoint-generating part program for the axis is executed after the installation has powered up. ● Lead link axis leading axis From the point of view of an NCU (2) that traverses following axes, a that is...
  • Page 145 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes The diagram below illustrates the interrelationships: Figure 2-17 Configuration of link axes Differentiation between local/link axes To enable link axes to be addressed throughout the system, the configuration must contain information about the axis NCUs.
  • Page 146 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes Note The axis container functions are described in the subsection "Axis container". Figure 2-18 Assignment of channel axes to local machine axes and link axes Explanation Logical machine axis image A addresses local machine axes B and link axes C.
  • Page 147 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes Default By default, the settings of logical machine axis image A are local axis name AX1 for entry 1, and local axis name AX2 for entry 2, etc. Examples The following expressions can appear in the logical machine axis image, for example: NC2_AX7: Machine axis 7 of NCU 2...
  • Page 148: Axis Data And Signals

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes 2.6.2 Axis data and signals Introduction Axis data and signals for a link axis are produced on the home NCU of the link axis. The NCU that has caused the movement of a link axis is provided with axis data and signals from the system: Figure 2-19...
  • Page 149 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes Position control The position control is implemented on the NCU on which the axis is physically connected to the drive. This NCU also contains the associated axis interface. The position setpoints for link axes are generated on the active NCU and transferred via the NCU link.
  • Page 150 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes Non-cyclic communication ● Exchange of link variables ● Warm restart requirements ● Activation of axis container rotation ● Changes in NCU global machine and setting data ●...
  • Page 151: Output Of Predefined Auxiliary Functions In The Case Of An Ncu Link

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes 2.6.3 Output of predefined auxiliary functions in the case of an NCU link Predefined M, S, F auxiliary functions For link axes and container link axes, a predefined M, S, and F auxiliary function is transferred from the NCK via the NCU link to the home NCU of the link axes and output from there as system auxiliary functions to the PLC.
  • Page 152: Supplementary Conditions For Link Axes

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes 2.6.4 Supplementary conditions for link axes Output of alarms from position controller or drive Axis alarms are always output on the NCU which is producing the interpolation value. If an alarm is generated for a link axis by the position controller, then the alarm is transferred to the NCU which is currently processing the interpolation.
  • Page 153: Programming With Channel And Machine Axis Identifiers

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes Powering up an NCU grouping If an NCU in a link grouping is restarted by an NCK reset, the other NCUs in the grouping will also execute an NCK reset.
  • Page 154: Flexible Configuration

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.6 Link axes This method of programming is permitted only if machine axis AX3 is known in the channel at the time of scanning. Note System variables which can be used in conjunction with channel axis identifiers are specially marked in the Job Planning Programming Manual (Appendix).
  • Page 155: Axis Container

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container Axis container Axis container An axis container can be imagined as a circular buffer in which the assignment ● Local axes and/or ● link axes are assigned to channels.
  • Page 156 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container Axis container names The axis containers can be named with the machine data: MD12750 $MN_AXCT_NAME_TAB The axis container names can be used: ● in the axis container rotation commands AXCTSWE() and AXCTSWED() to address the container to be rotated.
  • Page 157 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container Example: The following assignment is thrown up for the container axes after the control is ramped up (initial state before a first container rotation): ③...
  • Page 158 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container Container rotation The contents of the axis container slots are variable inasmuch as the contents of the circular buffer (axis container) can be shifted together by ± n increments. The number of increments n is defined for each axis container in setting data: SD41700 $SN_AXCT_SWWIDTH The number of increments n is evaluated modulo in relation to the number of actually...
  • Page 159 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container For example, when rotating the drum of a multi-spindle machine into a new position, it must be ensured that each position addresses the newly changed spindle by rotation of the axis container.
  • Page 160 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container This call may only be used if the other channels, which have axes in the container are in the RESET state. Note The axis container names allotted through the following machine data can be used for the AXCTSWE and AXCTSWED commands: MD12750 $MN_AXCT_NAME_TAB Implicit wait...
  • Page 161: System Variables For Axis Containers

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container The following machine data is used to define which NCU possesses the axis after power up or is producing the interpolation value. MD10002 $MN_AXCONF_LOGIC_MACHAX_TAB Since the axial machine data of link axes are the same on all NCUs, the machine data below is only evaluated if the NCU also has write authorization to the axis (see MD 10002): MD30550 $MA_AXCONF_ASSIGN_MASTER_CHAN...
  • Page 162 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container Name Type/SW Description/values Index cess cess $AC_AXCTSWA[n] BOOLEAN Channel state of axis container rotation/ Identi- fier (AXis ConTainer SWitch 1: The channel has enabled axis container rotation for Active) axis container n and this is not yet finished.
  • Page 163: Machining With Axis Container (Schematic)

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container 2.7.2 Machining with axis container (schematic) Figure 2-23 Schematic machining of a station/position Note An NCU machining cycle which is in charge of the rotation of the rotary table or the drum for multi-spindle machines contains the query of enables for container rotation of all NCUs concerned.
  • Page 164: Axis Container Behavior After Power On

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container 2.7.3 Axis container behavior after Power ON The container always assumes the state defined in the machine data on Power On, irrespective of its status when the power supply was switched off, i.e. the user must distinguish between the actual status of the machine and the default setting and compensate accordingly by specifying appropriate axis container rotations.
  • Page 165 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container Axial machine data If an axis is assigned to an axis container, then certain axial machine data must be identical for all axes in the axis container as the data are activated. This can be ensured by making a change to this type of machine data effective on all container axes and all NCUs which see the axis concerned.
  • Page 166 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container Exceptions to this rule are synchronized actions M3, M4, M5 and a motion-changing S function: If an axis container rotation is active and the spindle is transferred to the control of another NCU, alarm 20142 (channel %1 command axis %2: Invalid axis type) is output.
  • Page 167 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.7 Axis container Transformations If the container axis is a spindle which is involved in a transformation, then the transformation must be deselected before the axis container rotation is enabled. Otherwise alarm 17605 is activated.
  • Page 168: Link Communication

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.8 Link communication Link communication 2.8.1 Link variables Function Complex systems often feature multiple NCUs, each with multiple channels. Each NCU has a link communication channel for the purpose of coordinating manufacturing processes throughout the entire system.
  • Page 169 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.8 Link communication System-wide alignment Once a link variables memory has been written to, the changes that have been made to the data are transferred to the link variables memories of all other NCUs involved in the link grouping.
  • Page 170 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.8 Link communication ● Reciprocal overwriting of the same data item by multiple channels of a single NCU or different NCUs ● Reading a data item before it has been updated by a channel of its own NCU or of a different NCU NOTICE Data consistency...
  • Page 171 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.8 Link communication The byte addressed by link variable $A_DLB[0] is only written to N120 if the write job can be transferred to the other NCUs in the link grouping in the same interpolation cycle. If this is the case, the link variable is written and the system variable decremented at the same time.
  • Page 172: Reading Drive Data Via Link Variables

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.8 Link communication Program code Description $A_DLB[0] BYTE(1) $A_DLB[1] BYTE(2) $A_DLW[2] WORD $A_DLD[4] DWORD(1) $A_DLD[8] DWORD(2) $A_DLD[12] DWORD(3) $A_DLR[16] REAL See also Reading drive data via link variables (Page 172) 2.8.2 Reading drive data via link variables Task...
  • Page 173 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.8 Link communication Requirements The actual current value of axis AX2 can be read via system variable $VA_CURR. In the case of PROFIdrive-based drives, the following machine data needs to be set for this purpose: MD36730 $MA_DRIVE_SIGNAL_TRACKING = 1 (acquisition of additional drive actual values)
  • Page 174: Configuration Of A Link Grouping

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.9 Configuration of a link grouping Configuration of a link grouping Introduction The preceding sections described how to configure link axes and axis containers. Both require a link communication to be established between the NCUs concerned. Setting up the link communication takes place by means of: ●...
  • Page 175 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.9 Configuration of a link grouping Machine data MD18780 $MN_MM_NCU_LINK_MASK This machine data ensures that link communication is established. It provides the dynamic memory space that is required for communication in the NCUs equipped with link modules. The machine data below determines the data transfer rate of link communication based on the assignments listed below: MD12540 $MN_LINK_BAUDRATE_SWITCH...
  • Page 176 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.9 Configuration of a link grouping The set values refer to the entries defined with machine data: MD12510 $MN_NCU_LINKNO 0 corresponds to the first definition, 1 to the second, etc. from machine data: MD12510 $MN_NCU_LINKNO.
  • Page 177: Communication In Link Grouping

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.10 Communication in link grouping 2.10 Communication in link grouping 2.10 Although communication by means of link modules is high-speed communication, the following aspects have to be taken into account during configuration. Data transport Both cyclic and acyclic services are used for data communication.
  • Page 178 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.10 Communication in link grouping Examples Let an axis container contain 12 slots. Three axes are local on NCU1, and three link axes are located on each of NCU 2, NCU3, and NCU4. The MD is set with 0 as the value. Figure 2-26 Resources insufficient Let an axis container contain 12 slots.
  • Page 179 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.10 Communication in link grouping Figure 2-27 Resources sufficient Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 180 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.10 Communication in link grouping Figure 2-28 Increase in communication time of the number of NCUs connected via the link (for scaling refer to Interdependencies) Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 181 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.10 Communication in link grouping Configuration limit The diagram above illustrates how the communication overhead grows as the number of NCUs increases. Curve trace A: Time required for the exchange of link variables/machine data information and the lead link axis information (one lead link axis) between the NCU giving the master value and other NCUs that interpolate the following axes as a function of the leading axis (lead link axis).
  • Page 182: Lead Link Axis

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.11 Lead link axis 2.11 Lead link axis 2.11 Term A lead link axis allows read access to the axis data (setpoint, actual value, ...) on another NCU.
  • Page 183 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.11 Lead link axis Couplings The following coupling types can be used: ● Master value (setpoint, actual value, simulated master value) ● Coupled motion ● Tangential correction ●...
  • Page 184 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.11 Lead link axis ● The lead link axis must be configured in the logical machine axis image with machine data: MD AXCONF_LOGIC_MACHAX_TAB[i] = "NC " This allows a relation to be established with the NCU that is interpolating the lead link axis.
  • Page 185 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.11 Lead link axis The following steps are illustrated: ● 1.1 Position control on NCU1 reads in actual values of leading value axis from the drive and writes them in the communication buffer for interpolation.
  • Page 186: Programming A Lead Link Axis

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.11 Lead link axis 2.11.1 Programming a lead link axis Master value axis view Only the NCU which is physically assigned to the master value axis can program travel motions for this axis.
  • Page 187: Ncu Link With Different Interpolation Cycles

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.12 NCU link with different interpolation cycles 2.12 NCU link with different interpolation cycles 2.12 Problem description In the engineering world, parts which deviate slightly from a precise round/cylindrical shape are also required.
  • Page 188 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.12 NCU link with different interpolation cycles Motion sequences While the workpiece is rotating about the C axis, the X axis must be advanced with high precision between the smallest and largest radius/diameter according to the required shape (sine, double sine, etc.).
  • Page 189: Diagram Of General Solution

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.12 NCU link with different interpolation cycles Generalized solution In a link grouping with several (up to 8) NCUs, some NCUs are set up with short interpolation cycles, some with standard interpolation cycles, and the axes are configured as in the diagram above.
  • Page 190 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.12 NCU link with different interpolation cycles Abbreviations and terms NCU-A, NCU-B NCUs with standard interpolation cycle NCU-U Eccentric NCU with fast interpolation cycle Position control cycle i "slower"...
  • Page 191 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.12 NCU link with different interpolation cycles Axis assignments Link axes may only be connected to NCUs that have the same IPO cycle as the link cycle. Example: Axis X9 on the fast NCU-U in the diagram above cannot be interpolated as a link axis by NCU-A or NCU-B.
  • Page 192: Different Position Control Cycles

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.12 NCU link with different interpolation cycles ● Acceleration processes on the link axes are always output with the link cycle and are therefore not exactly synchronous with the axes physically connected to the fast NCU. Therefore, it is only advisable to use this configuration with interpolating axes on NCUs with different IPO cycles if you are machining with link axes that are only accelerated a little or not at all.
  • Page 193 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.12 NCU link with different interpolation cycles Setting notes The required position setpoint delay depends on the controller structure used (DSC (dynamic stiffness control), feedforward control); this delay is taken into account when switching to the respective controller (e.g.
  • Page 194: Supplementary Conditions

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.12 NCU link with different interpolation cycles Appropriate changes to parameter settings A change in the parameter settings of machine data: MD10065 $MN_POSCTRL_DESVAL_DELAY is appropriate in the following cases: ●...
  • Page 195: Activating Ncu Links With Different Interpolation Cycles

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.12 NCU link with different interpolation cycles ● Axis container – It is only permissible to switch axis containers with rotating spindles on NCUs with IPO cycles that are equal to the link cycle.
  • Page 196: Link Grouping System Of Units

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.13 Link grouping system of units 2.13 Link grouping system of units 2.13 Introduction Cross-NCU interpolations are possible in the link grouping with: ● Link axes (see "Link axes") ●...
  • Page 197: Supplementary Conditions

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.14 Supplementary conditions 2.14 Supplementary conditions 2.14 2.14.1 Several operator panels and NCUs with control unit management option Configuration The number of configurable control units/NCUs is only limited by the availability of bus addresses on the individual bus segments of the different bus types.
  • Page 198: Link Axes

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.14 Supplementary conditions 2.14.3 Link axes Availability 1. Precondition is that the NCUs are networked with link modules. 2. The link axis function is an option which is necessary for each link axis (max. 32). 3.
  • Page 199: Ncu Link With Different Interpolation Cycles

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.14.6 NCU link with different interpolation cycles Availability NCU link with different interpolation cycles is an option. All requirements that apply for link axes must be fulfilled. If the non-local axes - seen from the point of view of the NCU with the fast interpolation cycle - are container axes (e.g.
  • Page 200 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Bus identification [param network] bus = OPI; OPI bus (1.5 Mbaud) HMI description [param MMC_1] mmc_typ = 40 ; = 0100 0000: HMI is server and main control panel mmc_bustyp = OPI ;...
  • Page 201 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Channel data Sample of a channel menu configuration with M:N assignment option: [chan MMC_1] DEFAULT_logChanSet = G_1 ; Group to be set on power up DEFAULT_logChan = K_1_1 ;...
  • Page 202: User-Specific Reconfiguring Of Plc Program Control Unit Switchover

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.2 User-specific reconfiguring of PLC program control unit switchover Introduction The solution outlined roughly below should be selected only if at least one of the following configuring requirements is applicable: ●...
  • Page 203: Description Of Operational Sequences (Details)

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Operating focus switchover in server mode A server maintains a permanent link to the NCUs to which it is assigned. The operator can switch the operating focus from one NCU to another without interrupting the existing link. Active/passive operating mode An online operator panel can operate in two different modes: Active mode: Operator can control and monitor...
  • Page 204 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples OFFL_CONF_OP/PLC_LOCKED Online PLC has received the offline request. The operator panel switchover is disabled in the HMI-PLC interface. The operator panel cannot link up with another NCU and must remain online.
  • Page 205 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Operator panel coming Once the operator panel has sent an online request to the target PLC and received online permission from it, it can set up a link to the target NCU. It goes online and notifies the PLC with (station active) S_ACT/CONNECT that it has linked up with the NCU.
  • Page 206 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples The falling edge combined with the sequence described above signals to the online PLC that the operator panel has broken off the link to the online NCU. If an MCP is assigned to the operator panel and activated, it must now be deactivated by the PLC.
  • Page 207 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples If an MCP has been configured for the online operator panels, the MCP of the active operator panel is switched on. The MCP of the passive operator panel is deactivated, i.e. only one MCP is active at a time on an NCU.
  • Page 208 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples We must differentiate between two cases here: 1. MMC_1 can change to passive operating mode: MMC_1 changes from active to passive operating mode and acknowledges the changeover with MMC1_ACTIVE_CHANGED = FALSE.
  • Page 209 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Figure 2-33 MMC_1 requests active mode, MMC_2 is in passive mode Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 210 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Note for the reader The arrangement of the signals of a block in box PLC_x (marked as B) corresponds to the arrangement of signal names in the header section (marked as A). Blocks B repeat in box PLC_x from top to bottom as a function of time.
  • Page 211 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Figure 2-35 MMC_1 requests active mode, MMC_2 is in active mode, but cannot change to passive mode Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 212 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples MCP SWITCHOVER A control unit consists of an operator panel and an MCP; these can both be switched over as a unit. If an MCP has been configured for the operator panel in configuring file NETNAMES.INI, it will be activated and deactivated with the operator panel.
  • Page 213: Defined Logical Functions/Defines

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.2.3 Defined logical functions/defines Note Please refer to Section "Defined logical functions/defines" for the legal values for bus type, functions/status and additional information, plus permissible combinations of status and additional information.
  • Page 214 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Figure 2-37 MMC_1 online to NCU_1, MMC_1 wants to switch over to NCU_2, online-request interface in PLC_2 occupied by another MMC Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 215 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Figure 2-38 MMC_1 online to NCU_1, MMC_1 wants to switch over to NCU_2, but does not receive permission from PLC_2 Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 216 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Figure 2-39 MMC_1 online to NCU_1, MMC_1 switches over to NCU_2 (no suppression) Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 217 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Figure 2-40 MMC_1 online to NCU_1, MMC_2 online to NCU_2, MMC_1 wants to switch over to NCU_2, but MMCs executing uninterruptible processes are online to NCU_2 Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 218 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Figure 2-41 MMC_1 online to NCU_1, MMC_2 online to NCU_2, MMC_1 switches from NCU_1 to NCU_2, MMC_2 is suppressed Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 219 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Figure 2-42 MMC_1 server, wishes to switch operating focus from NCU_1 to NCU_2, switchover disabled in PLC_1 Figure 2-43 MMC_1 is server, wishes to switch operating focus from NCU_1 over to NCU_2, switchover is disabled in PLC_2 Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 220 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Figure 2-44 MMC_1 is server, wishes to switch operating focus from NCU_1 over to NCU_2, switchover not disabled in PLCs, MMC_1 can switch operating focus Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 221: Configuration File Netnames.ini, Standard Functionality

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.3 Configuration file NETNAMES.INI, standard functionality 2.15.3.1 Two operator panel fronts and one NCU A sample configuration file for the second control unit is given below for a system consisting of two control units and one NCU on the OPI.
  • Page 222 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Any adaptations which may need to be made are described in Section "Configurations". ; NETNAMES.INI Example 3 Start ; Identification entry: [own] owner = MMC_1 ;...
  • Page 223: Quick M:n Commissioning Based On Examples

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples type= ncu_573 nck_address= 15 plc_address= 15 ; NETNAMES.INI, example 3 End 2.15.4 Quick M:N commissioning based on examples Introduction The MPI/OPI bus network rules are not described. See References: /BH/, Operator Components Manual Three examples are used to demonstrate the steps involved in starting up an M:N grouping.
  • Page 224 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Step 1: Configuration file NETNAMES.INI The following entries are made in this example: [own] owner = MMC_1 ; Connection entry [conn MMC_1] conn_1 = NCU_1 conn_2 = NCU_2 ;...
  • Page 225 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples [Station_1] logChanList = N1_K1, N1_K2 [N1_K1] logNCName = NCU_1 ChanNum = 1 [N1_K2] logNCName = NCU_1 ChanNum = 2 [Station_2] logChanList = N2_K1, N2_K2 [N2_K1] logNCName = NCU_2 ChanNum = 1...
  • Page 226: Example 2

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Step 4: An FB9 call is not required for this configuration, because no suppression or active/passive switching takes place. Softkey label The texts are transferred from the NETNAMES.INI file. No extra texts over and above those in NETNAMES.INI are required for the present example.
  • Page 227 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Step 1a): NETNAMES.INI configuration files In this example, separate entries are input for the operator panels in NETNAMES.INI files. Operator panel 1 Entries for HMI Advanced/PCU50: [own] owner = MMC_1 ;...
  • Page 228 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples ; Channel data [chan MMC_1] DEFAULT_logChanSet = Station_1 DEFAULT_logChan = N1_K1 ShowChanMenu = True logChanSetList = Station_1, Station_2 [Station_1] logChanList = N1_K1, N1_K2 [N1_K1] logNCName = NCU_1 ChanNum = 1 [N1_K2]...
  • Page 229 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Step 2a): Load file NETNAMES.INI HMI Advanced/PCU50: Once the NETNAMES.INI file has been created, it is transferred into the USER directory of the PCU Step 1b): Operator panel 2 Entries for HMI Embedded/PCU20:...
  • Page 230 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples plc_address = 23 name = NCU2 ; Channel data [chan PCU20] DEFAULT_logChanSet = Station_2 DEFAULT_logChan = N1_K1 ShowChanMenu = True logChanSetList = Station_1, Station_1 [Station_1] logChanList = N1_K1, N1_K2 [N1_K1]...
  • Page 231 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Step 2b: PCU20 After the NETNAMES.INI and chan.txt files have been created, they are included in the *.abb file with the application. Step 3: Set the NCK bus addresses HMI Advanced/PCU50: 1.
  • Page 232: Example 3

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.4.3 Example 3 Hardware configuration The hardware comprises the following components: ● 1 operator panel (PCU50 with HMI Advanced, operator panel) ● 1 HT6 ●...
  • Page 233 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples ; HMI descriptions [param MMC_1] mmc_type = 0x40 mmc_bustyp = OPI mmc_address = 1 mstt_address = 255 ; 255 is necessary if no MCP ;...
  • Page 234 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples [N1_K1] logNCName = NCU_2 ChanNum = 1 [N1_K2] logNCName = NCU_2 ChanNum = 2 ; End Step 1b: Create the NETNAMES.INI file for HT6 [own] owner = HT_6 ;...
  • Page 235 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples DEFAULT_logChan = N1_K1 ShowChanMenu = True logChanSetList = Station_2 [Station_2] logChanList = N2_K1, N2_K2 [N2_K1] logNCName = NCU_2 ChanNum = 1 [N2_K2] logNCName = NCU_2 ChanNum = 2 ;End of file Step 2a:...
  • Page 236: Description Of Fb9

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Step 4: Include FB9 in the PLC user program. You will find more details in the following section. 2.15.4.4 Description of FB9 Function description This block allows switchover between several operator panels (PCU with operator panel and/or machine control panel), which are connected to one or more NCU control modules via a bus system.
  • Page 237 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples MCP switchover: As an option, an MCP assigned to the PCU can be switched over at the same time. This can be done on condition that the MCP address is entered in parameter mstt_adress of PCU configuration file NETNAMES.INI and MCPEnable is set to true.
  • Page 238: Example Of Calling Fb9

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Report : BOOL ;// Message: Sign-of-life monitoring ErrorMMC : BOOL ; // Error detection HMI END_VAR Explanation of the formal parameters The following table shows all formal parameters of function FB9 Table 2- 8 Formal parameters of FB9 Signal...
  • Page 239 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Alarm2 := DB2.dbx188.1, // Error message 700.101 Alarm3 := DB2.dbx188.2, // Error message 700.102 Alarm3 := DB2.dbx188.3, // Error message 700.103 Alarm3 := DB2.dbx188.4, // Error message 700.104 Alarm6 := DB2.dbx188.5, // Error message 700.105 Report := DB2.dbx192.0, // Operational message 700.132 ErrorMMC := DB2.dbx192.1) // Operational message 700.133...
  • Page 240: Example Of Override Switchover

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.4.6 Example of override switchover The example uses auxiliary flags M100.0, M100.1, M100.2, M100.3. The positive edge of MCP1Ready must check for override and initiate measures for the activation of the MCP block.
  • Page 241: Switchover Between Mcp And Ht6

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples MCP: CALL "MCP_IFM"( //FC 19 BAGNo := B#16#1, ChanNo := B#16#1, SpindleIFNo := B#16#0, FeedHold := M 101.0, SpindleHold := M 101.1); wei2: NOP 0; 2.15.4.7 Switchover between MCP and HT6 CALL FCxx...
  • Page 242: General Information

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.4.8 General Information ● In a configuration with only one NCU, the additional entry: " ,SAP=202 " must be set for the PLC address in the [param NCU_xx] section of the NETNAMES.INI file. Example: [param NCU_1] type =NCU_573...
  • Page 243 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples HT6 removal/insertion Trouble-free removal and insertion of the HT 6 during machine operation requires the following: ● Release or override of the HT 6 EMERGENCY STOP ●...
  • Page 244: Link Axis

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.5 Link axis Assumption NCU1 and NCU2 have one link axis each, machine data e.g.: ; Machine data for NCU1: $MN_NCU_LINKNO = 1 ; Set NCU number to 1 ;...
  • Page 245: Axis Container Coordination

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples $MN_AXCONF_LOGIC_MACHAX_TAB[0] = "AX1" $MN_AXCONF_LOGIC_MACHAX_TAB[1] = "AX2" $MN_AXCONF_LOGIC_MACHAX_TAB[2] = "NC1_AX3" ; Link axis ; Unique NCU axis names $MN_AXCONF_MACHAX_NAME_TAB[0] = "NC2_A1" $MN_AXCONF_MACHAX_NAME_TAB[1] = "NC2_A2" $MN_AXCONF_MACHAX_NAME_TAB[2] = "NC2_A3" CHANDATA(1) $MC_AXCONF_MACHAX_USED[0] = 1 $MC_AXCONF_MACHAX_USED[1] = 2...
  • Page 246: Axis Container Rotation With An Implicit Part Program Wait

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.6.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.
  • Page 247: Wait For Certain Completion Of Axis Container Rotation

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.7.3 Wait for certain completion of axis container rotation If you want to wait until the axis container rotation is reliably completed, you can use one of the examples below selected to suit the relevant situation.
  • Page 248: Configuration Of A Multi-Spindle Turning Machine

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples N2150 WHILE (rl == $AN_AXCTAS[ctl]) Note Programming in the NC program: WHILE ($AN_AXCTSWA[n] == 0) ENDWHILE cannot be used as a reliable method of determining whether an earlier axis container rotation has finished.
  • Page 249 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Machine description ● Distributed on the circumference of a drum A (front-plane machining) the machine has: – 4 main spindles, HS1 to HS4 Each main spindle has the possibility of material feed (bars, hydraulic bar feed, axes: STN1 - STN4).
  • Page 250 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Bar feed: STN For the master NCU, in addition to the above-mentioned axes there are the two axes for rotating drums A and B. The list shows that it would not be possible to configure the axis number for a total of 4 positions via an NCU.
  • Page 251 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Figure 2-50 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 252 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Common axes Local axes Comment Slide 2 Slide 1 Slide 2 Axis container necessary Axis container necessary Axis container necessary STN1 Axis container necessary Axes of NCUb to NCUd The NCUs that are not master NCUs have the same axes with the exception of the axes for the drive for drums TRV and TRH.
  • Page 253 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 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.
  • Page 254 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Channel axis name ..._MACHAX $MN_ Container, slot Machine axis name _USED AXCONF_LOGIC_MACH entry (string) AX_TAB, AX4: AX5: CT4_SL1 NC1_AX5 AX6: WZ1A AX7: CT2_SL1 STN1 NC1_AX7 AX11: AX12:...
  • Page 255 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 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. ●...
  • Page 256 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Container Slot Initial position Switch 1 Switch 2 Switch 3 Switch 4 = (TRA 0°) (TRA 90°) (TRA 180°) (TRA 270°) (TRA 0°) NC1_AX7, STN1 NC2_AX7, STN2 NC3_AX7, STN3 NC4_AX7 STN4...
  • Page 257: Lead Link Axis

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.9 Lead link axis 2.15.9.1 Configuration Figure 2-52 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 258 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples Machine data for NCU1 NCU traversing leading axis $MN_NCU_LINKNO = 1 ; Master NCU $MN_MM_NCU_LINK_MASK = 1 ; NCU link active $MN_MM_LINK_NUM_OF_MODULES = 2 ; Number of link modules $MN_MM_SERVO_FIFO_SIZE = 4 ;...
  • Page 259: Programming

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.9.2 Programming Program on NCU 1 NCU1 traverses leading axis Z. The variable is 1 for as long as NCU2 is prepared for movement of the leading axis (messages via link variable $A_DLB[0]); after completion of movement, the variable is 0.
  • Page 260: Ncu Link With Different Interpolation Cycles

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples 2.15.10 NCU link with different interpolation cycles 2.15.10.1 Example of eccentric turning Task assignment Create a non-circular shape with the following characteristics: Ellipticity: 0.2 mm Base circle diameter: 50 mm Z path per revolution: 0.1 mm Spindle speed: 3000 rpm...
  • Page 261 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.15 Examples The following part program describes the commands required for the first spindle revolution. It must then be continued accordingly for the entire required length of the Z path: G0 C0 X24.95 Z0 ;...
  • Page 262: Data Lists

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.16 Data lists 2.16 Data lists 2.16 2.16.1 Machine data 2.16.1.1 General machine data Number Identifier: $MN_ Description 10002 AXCONF_LOGIC_MACHAX_TAB[n] Logical NCU machine axis image 10065 POSCTRL_DESVAL_DELAY Position setpoint delay 10087...
  • Page 263: Axis/Spindle-Specific Machine Data

    Identifier: $SA_ Description 43300 ASSIGN_FEED_PER_REV_SOURCE Rotational feedrate for positioning axes/spindles 2.16.3 Signals 2.16.3.1 Signals from NC Signal name SINUMERIK 840D sl SINUMERIK 828D MCP1 ready DB10.DBX104.0 MCP2 ready DB10.DBX104.1 HHU ready DB10.DBX104.2 NCU link active DB10.DBX107.6 HMI2-CPU ready (HMI connected to OPI or MPI) DB10.DBX108.1...
  • Page 264: Signals From Hmi/Plc

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.16 Data lists 2.16.3.2 Signals from HMI/PLC Signal name SINUMERIK 840D sl SINUMERIK 828D ONL_REQUEST DB19.DBB100 Online request from HMI ONL_CONFIRM DB19.DBB102 Acknowledgement from PLC for online request PAR_CLIENT_IDENT DB19.DBB104...
  • Page 265 B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.16 Data lists Signal name SINUMERIK 840D sl SINUMERIK 828D MMC1_MSTT_SHIFT_LOCK DB19.DBX126.1 MCP shiftover 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...
  • Page 266: Signals From Axis/Spindle

    B3: Several operator panels connected to several NCUs, distributed systems - only 840D sl 2.16 Data lists 2.16.3.4 Signals from axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D NCU link axis active DB31, ..DBX60.1 Axis container rotation active DB31, ..DBX61.1 DB390x.DBX1.1...
  • Page 267: B4: Operation Via Pg/Pc - Only 840D Sl

    B4: Operation via PG/PC - only 840D sl Brief description Applications Operation via PG/PC ● must be utilized if no operator panel front is installed. ● can be utilized as a handling support for OP030 panels. Hardware The following hardware requirements must be fulfilled: ●...
  • Page 268 B4: Operation via PG/PC - only 840D sl 3.1 Brief description Implementation Variant 2 Operator panel front and up to three NCUs The machine control panel is permanently allocated to the NCU concerned. Figure 3-2 Configuration m:n corresponds to 1:3 Reference: /FB2/ Function Manual, Extended Functions;...
  • Page 269: Software Installation

    B4: Operation via PG/PC - only 840D sl 3.2 Software installation Software installation 3.2.1 System requirements Hardware requirements The following hardware requirements must be fulfilled to allow operation via PG/PC: ● IBM AT-compatible PG/PC with 486DX33 microprocessor ® ● At least 8 MB of main memory ●...
  • Page 270: Installation

    B4: Operation via PG/PC - only 840D sl 3.2 Software installation 3.2.2 Installation Storage area of MPI card The storage area of the MPI card must be excluded from use by the memory manager (files: CONFIG.SYS, SYSTEM.INI). Example for entry in SYSTEM.INI: [386enh] EmmExclude=..<storage area of card>...
  • Page 271 B4: Operation via PG/PC - only 840D sl 3.2 Software installation Figure 3-3 Enter installation path 3. Select operation with MPI or without MPI Figure 3-4 Operation with/without MPI Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 272 B4: Operation via PG/PC - only 840D sl 3.2 Software installation 4. Select turning or milling Figure 3-5 Select turning/milling Note If you want to change your selection later, select the directory "mmc2" and copy "dpturn.exe" (turning) or "dpmill.exe" (milling) into the directory "dp.exe". 5.
  • Page 273 B4: Operation via PG/PC - only 840D sl 3.2 Software installation Following the selection, a status display with the inputs made is shown. Figure 3-7 Status display of the installation mode 6. Continue When you press Continue, you are prompted to insert the installation diskettes. Note Please observe the requests made on the screen.
  • Page 274 B4: Operation via PG/PC - only 840D sl 3.2 Software installation 1. Determination of the NCK/PLC bus address – If PLC < software version 3.2, then NC address = 13 PLC address = 2 – If PLC ≥ software version 3.2 and PLC module 314, then NC address = 13 PLC address = 2 –...
  • Page 275: Supplementary Software Conditions

    B4: Operation via PG/PC - only 840D sl 3.2 Software installation 3.2.3 Supplementary software conditions ● Function keys The function keys must not be actuated in any of the displays until the display has fully built up. ● Monochrome screen When a monochrome screen is used, the colors used by the MMC must be adapted accordingly.
  • Page 276: Close Program

    B4: Operation via PG/PC - only 840D sl 3.2 Software installation 3.2.5 Close program Deselect the program The following steps must be taken to deselect the MMC 102/103 software: 1. Press function key F10 A horizontal softkey bar is displayed. 2.
  • Page 277: Operation Via Pg/Pc

    B4: Operation via PG/PC - only 840D sl 3.3 Operation via PG/PC Operation via PG/PC 3.3.1 General operation Operating philosophy The special function keys of the operator keyboard can be used with the full keyboard. Operator inputs can be made using the mouse or via the keyboard. Keyboard operation The following table shows the assignments between the function keys and the softkeys/special keys:...
  • Page 278 B4: Operation via PG/PC - only 840D sl 3.3 Operation via PG/PC Selection fields i and R, which appear in every display, have the following meaning: ● The i field is selected with the Help key or by mouse click. ●...
  • Page 279: Additional Information

    B4: Operation via PG/PC - only 840D sl 3.3 Operation via PG/PC Activation of fields To be able to alter values and functions, the window with the input field must be activated using the CTRL + TAB keys or the HOME key (yellow frame = focus). 3.3.2 Additional information Axis selection...
  • Page 280: Operation Of Operator Panel Fronts

    B4: Operation via PG/PC - only 840D sl 3.3 Operation via PG/PC 3.3.3 Operation of operator panel fronts The system responds as follows, for example, when two operator panel fronts are operated in the configuration illustrated below: 1. For the NCU, there is no difference whether the input is from the MMC or OP030 operator panel front.
  • Page 281: Simulation Of Part Programs

    B4: Operation via PG/PC - only 840D sl 3.4 Simulation of part programs Simulation of part programs Windows 32s, version 1.30.166.0 or higher, must be installed in order to operate part program simulation. For notes on operation, see References: /BA/ Operating Manual Marginal conditions The "Operation via PG/PC"...
  • Page 282 B4: Operation via PG/PC - only 840D sl 3.6 Data lists Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 283: H1: Manual Travel And Handwheel Travel

    H1: Manual travel and handwheel travel Brief description 4.1.1 Overview Applications 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 284: General Characteristics Of Manual Travel In Jog

    H1: Manual travel and handwheel travel 4.1 Brief description Fixed point approach The "fixed point approach in JOG" function enables the manual travel to fixed axis positions that are defined through a machine data. 4.1.2 General characteristics of manual travel in JOG The following is a description of the characteristics which generally apply to manual travel in JOG mode (irrespective of the type selected).
  • Page 285 H1: Manual travel and handwheel travel 4.1 Brief description Velocity The velocity for a JOG traversing movement is determined by the following value settings depending on the feedrate mode: ● With active linear feedrate (G94) (SD41100 $SN_JOG_REV_IS_ACTIVE (JOG: revolutional/linear feedrate) = 0): –...
  • Page 286 H1: Manual travel and handwheel travel 4.1 Brief description Instead of being set by the feedrate-override-switch position (gray code), the percentage value (0% to 200%) can be set directly by the PLC. Again, the selection is made via machine data. References: /FB1/ Function Manual Basic Functions;...
  • Page 287: Control Of Manual-Travel Functions Via Plc Interface

    H1: Manual travel and handwheel travel 4.1 Brief description 4.1.3 Control of manual-travel functions via PLC interface HMI/NCK/PLC interface Most individual functions required for manual travel in JOG are activated via the PLC user interface. The machine manufacturer can adapt the manual-travel functionality to the machine tool depending on the configuration, using the PLC user program.
  • Page 288: Control-System Response To Power On, Mode Change, Reset, Block Search, Repos

    H1: Manual travel and handwheel travel 4.1 Brief description 4.1.4 Control-system response to power ON, mode change, RESET, block search, REPOS A RESET will always abort (with braking ramp) any traversing movement triggered by handwheel travel. Selection from MCP The following example shows the sequence of operations for selecting the "continuous" machine function for a machine axis of the machine control panel.
  • Page 289: Continuous Travel

    H1: Manual travel and handwheel travel 4.2 Continuous travel Continuous travel 4.2.1 General functionality Selection In JOG mode, continuous travel must be activated via the PLC interface: DB21, ... DBX13.6, ff (machine function: continuous) As soon as continuous travel is active, interface signal DB21, …...
  • Page 290 H1: Manual travel and handwheel travel 4.2 Continuous travel Default setting Traversing in inching mode is the default setting. Continuous travel in jog mode Function In inching mode (default setting), the axis traverses for as long as the traversing key is held down, provided that no axis limitation is reached.
  • Page 291: Special Features Of Continuous Travel

    H1: Manual travel and handwheel travel 4.2 Continuous travel ● On deselection of the continuous mode ● On reaching the first valid limitation ● In the event of faults CAUTION Software limit switches and working-area limitations are only activated after reference point approach.
  • Page 292: Incremental Travel (Inc)

    H1: Manual travel and handwheel travel 4.3 Incremental travel (INC) Incremental travel (INC) 4.3.1 General functionality Programming increments The path to be traversed by the axis is defined by so-called increments (also called "incremental dimensions"). The required increment must be set by the machine user before the axis is traversed.
  • Page 293 H1: Manual travel and handwheel travel 4.3 Incremental travel (INC) Incremental travel in inching mode Function If the traversing key for the required direction (e.g., +) is pressed, the axis begins to traverse the increment that has been set. If the traversing key is released before the increment has been fully traversed, the movement is interrupted and the axis stops.
  • Page 294: Special Features Of Incremental Travel

    H1: Manual travel and handwheel travel 4.3 Incremental travel (INC) ● On deselection or change of the current increment (e.g., change from INC100 to INC10) ● In the event of faults (e.g., on cancellation of the servo enable) Note While an axis is moving, a change of mode from JOG to AUT or MDI is not permitted within the control.
  • Page 295: Handwheel Travel In Jog

    H1: Manual travel and handwheel travel 4.4 Handwheel travel in JOG Handwheel travel in JOG 4.4.1 General functionality Selection JOG mode must be active. The user must also set the increment INC1, INC10, etc., which applies to handwheel travel. As with incremental travel, the required machine function must be set at the PLC interface accordingly.
  • Page 296 H1: Manual travel and handwheel travel 4.4 Handwheel travel in JOG Handwheel assignment A handwheel is assigned to a geometry or machine axes via a separate axis-specific VDI interface signal. The axis to be moved as a result of rotating handwheel 1 or 2 is set as follows: ●...
  • Page 297 H1: Manual travel and handwheel travel 4.4 Handwheel travel in JOG Input frequency The handwheel connections can receive handwheel pulses with a maximum input frequency of 100 kHz. Velocity In handwheel travel the following axis velocities, effective during JOG mode, are used: ●...
  • Page 298 H1: Manual travel and handwheel travel 4.4 Handwheel travel in JOG A traversing movement defined by the handwheel for a machine axis is defined by: ● Traversing path ● Size of the variable increment (SD41010 $SN_JOG_VAR_INCR_SIZE) ● Machine-axis assignment (MD32080 $ HANDWH_MAX_INCR_SIZE) Movement in the opposite direction Depending on machine data: MD11310 $MN_HANDWH_REVERSE (threshold for handwheel change of direction),...
  • Page 299: Travel Request

    H1: Manual travel and handwheel travel 4.4 Handwheel travel in JOG reached, the fictitious distance-to-go can be deleted via delete distance-to-go or deselection of the handwheel assignment. ● All handwheel pulses leading to an end point behind the limitation are ignored. Any movement of the handwheel in the opposite direction leads to an immediate movement in the opposite direction, i.e., away from the limitation.
  • Page 300 H1: Manual travel and handwheel travel 4.4 Handwheel travel in JOG "Travel-request" signals DB21, … DBX40.5 Travel request + Geometry axis 1 DB21, … DBX40.4 Travel request - Geometry axis 1 DB21, … DBX46.5 Travel request + Geometry axis 2 DB21, …...
  • Page 301 H1: Manual travel and handwheel travel 4.4 Handwheel travel in JOG Figure 4-3 Signal/timing diagram MD17900 $MN_VDI_FUNCTION_MASK bit 0 = 1 If a pending stop condition is selected as an abort criterion via machine data MD32084 $MA_HANDWH_STOP_COND MD20624 $MC_HANDWH_CHAN_STOP_COND during handwheel travel, once again no motion command is output (compatibility), but the corresponding travel request is output.
  • Page 302 H1: Manual travel and handwheel travel 4.4 Handwheel travel in JOG Figure 4-4 Signal/timing diagram, handwheel travel when stop condition is abort criterion If a stop condition is activated during the handwheel-travel movement, the movement is aborted and the "travel request" and "motion command" are reset. With velocity specification If the handwheel is no longer moved with velocity specification (MD11346 $MN_HANDWH_TRUE_DISTANCE == 0 or == 2),...
  • Page 303: Double Use Of The Handwheel

    H1: Manual travel and handwheel travel 4.4 Handwheel travel in JOG Supplementary conditions With NC Stop present, no motion 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 response corresponds to that of handwheel travel.
  • Page 304 H1: Manual travel and handwheel travel 4.4 Handwheel travel in JOG Example: Path override Assumption: Channel 1 and geometry axis X correspond to machine axis 3 and geometry axis Y corresponds to machine axis 5 and handwheel 2 is selected for the first geometry axis. If block X10 Y10 FD=0 is processed in the main run, neither machine axis 3 nor machine axis 5 can be traversed with DRF via handwheel 2.
  • Page 305: Handwheel Override In Automatic Mode

    H1: Manual travel and handwheel travel 4.5 Handwheel override in automatic mode Handwheel override in automatic mode 4.5.1 General functionality Function With this function it is possible to traverse axes or to change their velocities directly with the handwheel in automatic mode (Automatic, MDI). The handwheel override is activated in the NC part program using the NC language elements FD (for path axes) and FDA (for positioning axes) and is non-modal.
  • Page 306 H1: Manual travel and handwheel travel 4.5 Handwheel override in automatic mode Path definition With axis feedrate = 0 (e.g., FDA[AXi] = 0), the traversing movement of the positioning axis towards the programmed target position is controlled entirely by the user rotating the assigned handwheel.
  • Page 307 H1: Manual travel and handwheel travel 4.5 Handwheel override in automatic mode Application example The "Handwheel override in automatic mode" function is frequently used on grinding machines. For example, the user can position the reciprocating grinding wheel on the workpiece using the handwheel (path default). After scratching, the traversing movement is terminated and the block change is initiated (by activating DB31, ...
  • Page 308 H1: Manual travel and handwheel travel 4.5 Handwheel override in automatic mode For example, the axis traverses by 0.001 mm per handwheel detent position if machine function INC1 and the default setting of the above machine data are selected. In the case of velocity override, the velocity results from the traverse path covered using the handwheel within a certain period of time.
  • Page 309: Programming And Activating Handwheel Override

    H1: Manual travel and handwheel travel 4.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 310 H1: Manual travel and handwheel travel 4.5 Handwheel override in automatic mode POS[U]=10 Target position of positioning axis U FDA[U]=100 Activate velocity override for positioning axis U; axis velocity of U = 100 mm/min POSA[V]=20 Target position of positioning axis V (modally) FDA[V]=150 Activate velocity override for positioning axis V;...
  • Page 311: Special Features Of Handwheel Override In Automatic Mode

    H1: Manual travel and handwheel travel 4.5 Handwheel override in automatic mode If the velocity parameter (F_value) is transferred with a value of 0, the activated handwheel override acts as a path default (i.e., in this case the feedrate is not derived from axial machine data MD32060 $MA_POS_AX_VELO (initial setting for positioning-axis velocity).
  • Page 312: Contour Handwheel/Path Input Using Handwheel (Option)

    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" function is available as an option that is under license. Function response...
  • Page 313 H1: Manual travel and handwheel travel 4.6 Contour handwheel/path input using handwheel (option) The feedrate is not dependent on: ● The programmed feedrate mode (mm/min, mm/rev.) ● The programmed feedrate (resultant velocity can be higher) ● The rapid-traverse rate for G0 blocks ●...
  • Page 314 H1: Manual travel and handwheel travel 4.6 Contour handwheel/path input using handwheel (option) The direction is also defined via an interface signal: DB21, ... DBX30.4 (contour-handwheel-simulation negative direction) When the simulation is deselected or the direction is changed, the current movement is decelerated using a braking ramp.
  • Page 315: Drf Offset

    H1: Manual travel and handwheel travel 4.7 DRF offset DRF offset Function The "DRF offset" function (differential resolver function) can be used to set an additive incremental work offset in respect of geometry and auxiliary axes in the basic coordinate system in AUTOMATIC mode via an electronic handwheel.
  • Page 316 H1: Manual travel and handwheel travel 4.7 DRF offset DRF active DRF must be active to allow the DRF offset to be modified by means of traversal with the handwheel. The following preconditions must be fulfilled: ● AUTOMATIC mode ● DB21, ... DBX0.3 (activate DRF) = 1 The DRF offset can be activated/deactivated for specific channels using the "program control"...
  • Page 317 H1: Manual travel and handwheel travel 4.7 DRF offset Figure 4-6 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 318: Start-Up: Handwheels

    Note Currently only 6 handwheels can be parameterized in a SINUMERIK control system. Connection options SINUMERIK 840D sl For SINUMERIK 840D sl, handwheels can be connected via the following components: ● PROFIBUS Module ● Ethernet Module Note Several handwheels, which are connected via different components, can be connected to a SINUMERIK 840D slcontrol system simultaneously.
  • Page 319: Connection Via Ppu - Only 828D

    H1: Manual travel and handwheel travel 4.8 Start-up: Handwheels 4.8.2 Connection via PPU - only 828D Parameterization 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 must always be entered as hardware segment.
  • Page 320: Connected Via Profibus - Only 840D Sl

    H1: Manual travel and handwheel travel 4.8 Start-up: Handwheels 4.8.3 Connected via PROFIBUS - only 840D sl Parameter setting Parameterization of handwheels connected via PROFIBUSmodules (e.g. machine control table "MCP 483") is done with the following NCK machine data: Handwheel_No._in_NCK - 1 ●...
  • Page 321 H1: Manual travel and handwheel travel 4.8 Start-up: Handwheels Note Machine data gaps are allowed when parameterizing handwheels in NCK machine data. Machine control tables have been configured in SIMATIC STEP 7, HW Config as follows: Slot DP ID Order No. / Description I address O address 1st MCP...
  • Page 322: Connected Via Ethernet - Only 840D Sl

    H1: Manual travel and handwheel travel 4.8 Start-up: Handwheels Machine data Value Description 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 handwheel slot 4th handwheel in NCK MD11350 $MN_HANDWHEEL_SEGMENT[3] No handwheel parameterized MD11351 $MN_HANDWHEEL_MODULE[3] No handwheel parameterized...
  • Page 323 H1: Manual travel and handwheel travel 4.8 Start-up: Handwheels Handwheel interfaces at the Ethernet Bus The handwheel interfaces at the Ethernet bus are numbered on the basis of the following considerations: ● The sequence of the operator component interfaces is: MCP1, MCP2, BHG ●...
  • Page 324 H1: Manual travel and handwheel travel 4.8 Start-up: Handwheels Table 4- 1 NCK machine data for the handwheel assignment Machine data Value Description HT 8: Handwheel number in the NC = 1 MD11350 $MN_HANDWHEEL_SEGMENT[ 0 ] Segment: Ethernet MD11350 $MN_HANDWHEEL_MODULE[ 0 ] Module: Ethernet MD11350 $MN_HANDWHEEL_INPUT[ 0 ] Handwheel interface at Ethernet bus...
  • Page 325 H1: Manual travel and handwheel travel 4.8 Start-up: Handwheels Filter time Since the handwheel pulses on the Ethernet bus are not transferred deterministically, filtering (smoothing) of the handwheel pulse transfer process may be necessary for highly dynamic drives. The parameter for the filter time is assigned using the following machine data: ●...
  • Page 326: Special Features Of Manual Travel

    H1: Manual travel and handwheel travel 4.9 Special features of manual travel Special features of manual travel 4.9.1 Geometry-axis manual travel Coordinate systems in JOG In JOG mode, the user can also traverse the axes declared as geometry axes in the workpiece coordinate system manually.
  • Page 327: Special Features Of Spindle Manual Travel

    H1: Manual travel and handwheel travel 4.9 Special features of manual travel Alarms Alarm 20062, "Axis already active", is triggered in the case of geometry-axis manual travel under the following conditions: ● The axis is already being traversed in JOG mode via the axial PLC interface. ●...
  • Page 328: Monitoring Functions

    H1: Manual travel and handwheel travel 4.9 Special features of manual travel Velocity override The spindle-override-switch JOG velocity is active for spindles. JOG acceleration As a spindle often uses many gear stages in speed-control and position-control modes, the acceleration associated with the current gear stage is always applied to the spindle in JOG mode.
  • Page 329 H1: Manual travel and handwheel travel 4.9 Special features of manual travel Alarms are triggered when the various limitations are reached (alarms 16016, 16017, 16020, 16021). The control automatically prevents further movement in this direction. The traversing keys and the handwheel have no effect in this direction. Note The software limit switches and working-area limitations are only active if the axis has first been referenced.
  • Page 330: Other

    H1: Manual travel and handwheel travel 4.9 Special features of manual travel 4.9.4 Other Mode change from JOG to AUT or from JOG to MDI It is possible to switch operating modes from JOG to AUT or MDI only if all axes in the channel have reached "coarse exact stop".
  • Page 331: Approaching A Fixed Point In Jog

    H1: Manual travel and handwheel travel 4.10 Approaching a fixed point in JOG 4.10 Approaching a fixed point in JOG 4.10 4.10.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 332: Functionality

    H1: Manual travel and handwheel travel 4.10 Approaching a fixed point in JOG 4.10.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 The PLC sets the interface signal after the "Approach fixed point in JOG"...
  • Page 333 H1: Manual travel and handwheel travel 4.10 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 334: Parameter Setting

    H1: Manual travel and handwheel travel 4.10 Approaching a fixed point in JOG Features of modulo rotary axes Modulo rotary axes can approach the fixed point in both directions. The shortest path (DC) is not observed during the travel. Features of spindles A spindle changes to the positioning mode on actuating the "Approaching fixed point in JOG"...
  • Page 335: Programming

    H1: Manual travel and handwheel travel 4.10 Approaching a fixed point in JOG 4.10.4 Programming System variables The following system variables that can be read in the part program and in the synchronous actions for the "Approach fixed point" function. System variable Description $AA_FIX_POINT_SELECTED [<Axis>]...
  • Page 336: Application Example

    H1: Manual travel and handwheel travel 4.10 Approaching a fixed point in JOG 4.10.6 Application example Target A rotary axis (machine axis 4 [AX4]) is to be moved to Fixed Point 2 (90 degrees) with the "Approaching fixed point in JOG" function. Parameter setting The machine data for the "Approaching fixed point"...
  • Page 337: Data Lists

    H1: Manual travel and handwheel travel 4.11 Data lists 4.11 Data lists 4.11 4.11.1 Machine data 4.11.1.1 General machine data Number Identifier: $MN_ Description 10000 AXCONF_MACHAX_NAME_TAB[n] Machine axis name 10735 JOG_MODE_MASK Settings of the JOG mode 11300 JOG_INC_MODE_LEVELTRIGGRD INC and REF in inching mode 11310 HANDWH_REVERSE Defines movement in the opposite direction...
  • Page 338: Axis/Spindle-Specific Machine Data

    H1: Manual travel and handwheel travel 4.11 Data lists 4.11.1.3 Axis/spindle-specific machine data Number Identifier: $MA_ Description 30450 IS_CONCURRENT_POS_AX Default setting at reset: neutral axis or channel axis 30600 FIX_POINT_POS[n] Fixed point positions of the axis 30610 NUM_FIX_POINT_POS Number of fixed point positions of an axis 31090 JOG_INCR_WEIGHT Weighting of an increment for INC/handwheel...
  • Page 339: Signals

    H1: Manual travel and handwheel travel 4.11 Data lists 4.11.3 Signals 4.11.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 Channel number for geometry axis, handwheel 1, 2, 3 DB10.DBB97/98/99...
  • Page 340: Signals From Channel

    H1: Manual travel and handwheel travel 4.11 Data lists 4.11.3.5 Signals from channel Signal name SINUMERIK 840D sl SINUMERIK 828D DRF selected DB21, ..DBX24.3 DB1700.DBX0.3 Handwheel active (3, 2, 1) DB21, ..DBX40.0-2 DB3300.DBX1000.0-1 DB21, ..DBX46.0-2 DB3300.DBX1004.0-1 DB21, ..DBX52.0-2 DB3300.DBX1008.0-1...
  • Page 341: Signals From Axis/Spindle

    H1: Manual travel and handwheel travel 4.11 Data lists 4.11.3.7 Signals from axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D Position reached with coarse/fine exact stop DB21, ..DBX60.6/7 DB390x.DBX0.6/7 Handwheel active (1, 2, 3) DB21, ..DBX64.0-2 DB390x.DBX4.0/1 Plus and minus axis/spindle travel request DB21, ...
  • Page 342 H1: Manual travel and handwheel travel 4.11 Data lists Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 343: K3: Compensation

    State-of-the-art CNC controls have compensation functions that are active on an axis for axis basis. For SINUMERIK 840D sl, the following compensation functions are available: ● Temperature compensation ● Backlash compensation ●...
  • Page 344 K3: Compensation 5.1 Introduction Parameterization These compensation functions can be set for each machine individually with axis-specific machine data. Activation The compensations are active in all operating modes of the control as soon as the input data are available. Any compensations that require the position actual value are not activated until the axis reaches the reference point.
  • Page 345: Temperature Compensation

    K3: Compensation 5.2 Temperature compensation Temperature compensation 5.2.1 Description of functions Deformation due to temperature effects Heat generated by the drive equipment or high ambient temperatures (e.g. caused by sunlight, drafts) cause the machine base and parts of the machinery to expand. This expansion depends, among other things, on the temperature and on the thermal conductivity of the machine parts.
  • Page 346 K3: Compensation 5.2 Temperature compensation The error curve for a given temperature T can generally be represented with sufficient accuracy by a straight line with a temperature dependent gradient and reference position. Compensation equation The compensation value ∆K is calculated on the basis of current actual position P of this axis and temperature T according to the following equation: ΔK...
  • Page 347 K3: Compensation 5.2 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 "Temperature compensation type and activation (Page 348)"). 2. The parameters for the compensation type are defined (see "Temperature-dependent parameters (Page 348)").
  • Page 348: Commissioning

    K3: Compensation 5.2 Temperature compensation Smooth the compensation value To prevent overloading of the machine or tripping of monitoring functions in response to step changes in the temperature compensation parameters, the compensation values are distributed over several IPO cycles by an internal control function as soon as they exceed the maximum compensation value specified for each IPO cycle (MD32760, see "Maximum compensation value per IPO clock cycle (Page 349)").
  • Page 349: Maximum Compensation Value Per Ipo Clock Cycle

    K3: Compensation 5.2 Temperature compensation 5.2.2.3 Maximum compensation value per IPO clock cycle MD32760 The maximum possible compensation value per IPO cycle, i.e. the maximum distance that can be traversed in an IPO cycle as a result of the temperature compensation, is limited using machine data: MD32760 $MA_COMP_ADD_VELO_FACTOR (velocity increase as a result of compensation)
  • Page 350 K3: Compensation 5.2 Temperature compensation Figure 5-2 Error curves determined for the Z axis 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 351 K3: Compensation 5.2 Temperature compensation Coefficient tanβ (T) In order to determine the dependency of coefficient tanβ of the position-dependent temperature compensation on the temperature, the error curve gradient is plotted against the measured temperature: Figure 5-3 Characteristic of coefficient tanβ as a function of measured temperature T With the appropriate linearization, coefficient tanβ...
  • Page 352: Backlash Compensation

    K3: Compensation 5.3 Backlash compensation Backlash compensation 5.3.1 Description of functions Mechanical backlash When force is transmitted between a moving machine part and its drive (e.g. ball screw), there is normally a small amount of backlash because adjusting mechanical parts so that they are completely free of backlash would result in too much wear and tear on the machine.
  • Page 353: Commissioning

    K3: Compensation 5.3 Backlash compensation Display The compensation value associated with the actual position is output as the total compensation calculated from "LEC" and "backlash compensation" in the "Service axes" display in the "Diagnosis" operating area. 5.3.2 Commissioning 5.3.2.1 Backlash MD32450 The correction value for the backlash compensation is entered into the machine data for each axis/spindle:...
  • Page 354: Weighting Factor For Backlash

    K3: Compensation 5.3 Backlash compensation 5.3.2.2 Weighting factor for backlash MD32452 The backlash can be weighted by a factor dependent on the particular parameter set. This weighting factor is set to between 0.01 and 100.0 in the following machine data: MD32452 $MA_BACKLASH_FACTOR (backlash weighting factor) The factory default setting is 1.0.
  • Page 355: Interpolatory Compensation

    K3: Compensation 5.4 Interpolatory compensation Interpolatory compensation 5.4.1 General properties Function The "Interpolatory compensation" function allows position-related dimensional deviations (for example, leadscrew and measuring system errors, sag and angularity errors) to be corrected. The compensation values are measured during commissioning and stored in a table as a position-related value.
  • Page 356 K3: Compensation 5.4 Interpolatory compensation Compensation tables Because the mentioned dimensional deviations directly affect the accuracy of workpiece machining, they must be compensated for by the relevant position-dependent compensation values. The compensation values are derived from measured error curves and entered in the control in the form of compensation tables during commissioning.
  • Page 357 K3: Compensation 5.4 Interpolatory compensation CAUTION When the setting in machine data: • MD18342 $MN_MM_CEC_MAX_POINTS[<t>] (maximum number of interpolation points for sag compensation); <t> = Index of the compensation table • MD38000 $MA_MM_ENC_COMP_MAX_POINTS (number of interpolation points for interpolatory compensation) the static user memory is automatically re-allocated when the system boots.
  • Page 358: Compensation Of Leadscrew Errors And Measuring System Errors

    K3: Compensation 5.4 Interpolatory compensation Linear interpolation between interpolation points The traversing path to be compensated delineated by the start and end positions is divided up into several (number depends on error curve shape) path segments of equal size (see diagram below).
  • Page 359 K3: Compensation 5.4 Interpolatory compensation Compensation With "measuring system error compensation" (referred to below as MSEC), the base and compensation axes are always identical. It is therefore an axial compensation for which a definition of the base axis and compensation axis in the compensation table is not necessary.
  • Page 360: Commissioning

    K3: Compensation 5.4 Interpolatory compensation 5.4.2.2 Commissioning Number of compensation interpolation points (MD38000) For every machine axis and for every measuring system (if a 2nd measuring system is installed), the number of reserved interpolation points of the compensation table must be defined and the necessary memory reserved with the following machine data: MD38000 $MA_MM_ENC_COMP_MAX_POINTS[<e>,<AXi>] with: <e>...
  • Page 361 K3: Compensation 5.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 362 K3: Compensation 5.4 Interpolatory compensation ● $AA_ENC_COMP_MAX[<e>,<AXi>] (end position) The end position is the axis position at which the compensation table for the relevant axis ends (≙ interpolation point <k>). The compensation value for the end position is $AA_ENC_COMP[<e>,<k>,<AXi>)]. The compensation value of interpolation point <k> is used for all positions larger than the end position (exception for table with modulo function).
  • Page 363: Example

    K3: Compensation 5.4 Interpolatory compensation Note Table parameters containing position information are automatically converted when the system of units is changed (change from MD10240 $MN_SCALING_SYSTEM_IS_METRIC). The position information is always interpreted in the actual system of units. Conversion must be implemented externally. Automatic conversion of the position data can be configured as follows: MD10260 $MN_CONVERT_SCALING_SYSTEM = 1 External conversion is no longer necessary.
  • Page 364: Compensation Of Sag And Angularity Errors

    K3: Compensation 5.4 Interpolatory compensation Program code Comment $AA_ENC_COMP[0,2,X1]=0.012 3rd compensation value (interpolation point 2) +12µm $AA_ENC_COMP[0,800,X1]=-0.0 Last compensation value (interpolation point 800) $AA_ENC_COMP_STEP[0,X1]=1.0 Distance between interpolation points 1.0 mm $AA_ENC_COMP_MIN[0,X1]=-200.0 Compensation starts at -200.0 mm $AA_ENC_COMP_MAX[0,X1]=600.0 Compensation ends at +600.0 mm $AA_ENC_COMP_IS_MODULO[0,X1]=0 Compensation without modulo function For this example, the configured number of interpolation points must be ≥...
  • Page 365 K3: Compensation 5.4 Interpolatory compensation Figure 5-5 Example of sag caused by own weight 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.
  • Page 366 K3: Compensation 5.4 Interpolatory compensation Setting options The many ways in which the compensation value for sag compensation can be produced/influenced are listed below (see diagram below). 1. An axis can be defined as the input variable (base axis) for several compensation tables (settable via system variables).
  • Page 367 K3: Compensation 5.4 Interpolatory compensation Figure 5-6 Generation of compensation value for sag compensation Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 368: Commissioning

    K3: Compensation 5.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 369 K3: Compensation 5.4 Interpolatory compensation with: <t> = Index of the compensation table Permissible range: 0 ≤ t < 2 * maximum number of axes t = 0: 1st compensation table t = 1: 2nd compensation table … The required number of compensation interpolation points is calculated as follows: 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:...
  • Page 370 K3: Compensation 5.4 Interpolatory compensation ● $AN_CEC_MAX[<t>] (end position) The end position is the base axis position at which the compensation table [<t>] ends (≙ interpolation point <k>). The compensation value for the end position is $AN_CEC [<t>,<k>]. The compensation value of interpolation point <k> is used for all positions larger than the end position (exception: table with modulo functions).
  • Page 371 K3: Compensation 5.4 Interpolatory compensation ● $AN_CEC_MULT_BY_TABLE [<t>] (table multiplication) With the table multiplication function, the compensation values of any table can be multiplied by those of any other table (or even by the same table). The product is added as an additional compensation value to the total compensation value of the compensation table.
  • Page 372: Examples

    K3: Compensation 5.4 Interpolatory compensation With this setting, the following axial machine data are activated: MD32711 $MA_CEC_SCALING_SYSTEM_METRIC (system of units for sag compensation) The measuring system for all tables effective for this axis is set in this machine data. Hereby all position entries are interpreted together with the calculated total compensation value in the configured measuring system.
  • Page 373 K3: Compensation 5.4 Interpolatory compensation Program code Comment $AN_CEC[0,100]=0 ; Last compensation value (interpolation point 101) ; for Z1: ±0µm $AN_CEC_INPUT_AXIS[0]=(AX2) ; Basic axis Y1 $AN_CEC_OUTPUT_AXIS[0]=(AX3) ; Compensation axis Z1 $AN_CEC_STEP[0]=8 ; Distance between interpolation points 8.0mm $AN_CEC_MIN[0]=-400.0 ; Compensation starts at Y1=-400mm $AN_CEC_MAX[0]=400.0 ;...
  • Page 374 K3: Compensation 5.4 Interpolatory compensation On large machines, sagging of the foundation can cause inclination of the whole machine. For the boring mill shown in the diagram, for example, it is determined that compensation of the X1 axis is dependent both on the position of the X1 axis itself (since this determines angle of inclination β) and on the height of the boring mill (i.e.
  • Page 375 K3: Compensation 5.4 Interpolatory compensation The following example explains in more detail how sag and angularity compensation can be implemented by a grid of 4 x 5 (lines x columns) in size. The size of the whole grid is 2000 x 900 mm .
  • Page 376 K3: Compensation 5.4 Interpolatory compensation The application example can be realized with the following part program code: $MA_CEC_ENABLE[Z1] = FALSE ; Deactivate compensation ; by setting to FALSE. ; The table values can then be ; altered without generation of ;...
  • Page 377 K3: Compensation 5.4 Interpolatory compensation $SN_CEC_TABLE_WEIGHT[1] =1.0 $SN_CEC_TABLE_WEIGHT[2] =1.0 $SN_CEC_TABLE_WEIGHT[3] =1.0 ;Changes to the following table parameters do not take effect until ;a Power On ;Define base axis X1 $AN_CEC_INPUT_AXIS[0] =(X1) $AN_CEC_INPUT_AXIS[1] =(X1) $AN_CEC_INPUT_AXIS[2] =(X1) $AN_CEC_INPUT_AXIS[3] =(X1) ;Define compensation axis Z1 $AN_CEC_OUTPUT_AXIS[0] =(Z1) $AN_CEC_OUTPUT_AXIS[1]...
  • Page 378 K3: Compensation 5.4 Interpolatory compensation $AN_CEC [4,0] =1.0 $AN_CEC [4,1] =0.0 $AN_CEC [4,2] =0.0 $AN_CEC [4,3] =0.0 ;Function values g_2(x) for table with index [5] $AN_CEC [5,0] =0.0 $AN_CEC [5,1] =1.0 $AN_CEC [5,2] =0.0 $AN_CEC [5,3] =0.0 ;Function values g_3(x) for table with index [6] $AN_CEC [6,0] =0.0 $AN_CEC [6,1]...
  • Page 379 K3: Compensation 5.4 Interpolatory compensation $AN_CEC_OUTPUT_AXIS[5] =(Z1) $AN_CEC_OUTPUT_AXIS[6] =(Z1) $AN_CEC_OUTPUT_AXIS[7] =(Z1) ;Define distance between interpolation points for compensation values in g tables $AN_CEC_STEP[4] =300.0 $AN_CEC_STEP[5] =300.0 $AN_CEC_STEP[6] =300.0 $AN_CEC_STEP[7] =300.0 ;Compensation starts at Y1=0 $AN_CEC_MIN[4] =0.0 $AN_CEC_MIN[5] =0.0 $AN_CEC_MIN[6] =0.0 $AN_CEC_MIN[7] =0.0 ;Compensation ends at Y1=900...
  • Page 380 K3: Compensation 5.4 Interpolatory compensation ;to prepare the table configuration, the Power On ;machine data are set ;cec.md: ;Set option data for commissioning ;Define the number of interpolation points in the compensation tables ;Machine data is memory-configuring $MN_MM_CEC_MAX_POINTS[0]=5 $MN_MM_CEC_MAX_POINTS[1]=5 $MN_MM_CEC_MAX_POINTS[2]=5 $MN_MM_CEC_MAX_POINTS[3]=5 $MN_MM_CEC_MAX_POINTS[4]=4 $MN_MM_CEC_MAX_POINTS[5]=4...
  • Page 381: Direction-Dependent Leadscrew Error Compensation

    K3: Compensation 5.4 Interpolatory compensation Applied to the example, this means, for instance, that compensation value D (500/300) is calculated by multiplying each of the function values f_i(500) in the f tables by the function values g_i(300) in the g tables: (500/300) = f_1(1000)*g_1(300) + f_2(1000)*g_2(300) + f_3(1000)*g_3(300) + f_4(1000)*g_4(300) (500/300) = 0.2*0 + 0.7*1 + 1.2*0 + 1.7*0 = 0.7...
  • Page 382: Commissioning

    K3: Compensation 5.4 Interpolatory compensation 5.4.4.2 Commissioning Measuring the error or compensation values Based on the procedure for the direction independent LEC (see"Compensation of leadscrew errors and measuring system errors (Page 358)") for the direction-dependent LEC, the direction-dependent error curve for each axis is determined using a suitable measuring device (e.g.
  • Page 383 K3: Compensation 5.4 Interpolatory compensation Commissioning the direction-dependent LEC 1. Enable the "sag compensation, multidimensional" option. Note Take into account the licensing procedure! 2. Define the number of compensation interpolation points (see also "Compensation of sag and angularity errors: Commissioning (Page 368)") Two compensation tables for the positive and negative traversing directions should be assigned to each axis and the number of compensation interpolation points defined using the following machine data:...
  • Page 384 K3: Compensation 5.4 Interpolatory compensation 5. Execute the 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[<AXi>] (enable sag compensation) = 0 →...
  • Page 385 K3: Compensation 5.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[<t>,<N>] (compensation value for interpolation point <N> of compensation table [<t>]) ●...
  • Page 386: Example

    K3: Compensation 5.4 Interpolatory compensation 5.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: Configuration 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 387 K3: Compensation 5.4 Interpolatory compensation -0.0023 0.0000 -0.0011 -0.0003 $AC_CEC_MAX[<t>] -0.0031 -0.0012 -0.0001 -0.0012 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...
  • Page 388 K3: Compensation 5.4 Interpolatory compensation CHANDATA(1) $MA_CEC_ENABLE[AX1]=0 ;compensation OFF $SN_CEC_TABLE_ENABLE[0]=0 ;lock Table 1 $SN_CEC_TABLE_ENABLE[1]=0 ;lock Table 2 NEWCONF ;-------------------------------------------------------------------------------------- $AN_CEC[0,0]=0 ;1st compensation value (interpolation point 0) $AN_CEC[0,1]=0.001 ;2nd compensation value (interpolation point 1) $AN_CEC[0,2]=0.004 ;3rd compensation value (interpolation point 2) $AN_CEC[0,3]=0.0034 ;4th compensation value (interpolation point 3) $AN_CEC[0,4]=0.0013...
  • Page 389: Extension Of The Sag Compensation With Ncu Link - Only 840D Sl

    K3: Compensation 5.4 Interpolatory compensation ;-------------------------------------------------------------------------------------- $MA_CEC_ENABLE[AX1]=1 ;compensation ON $SN_CEC_TABLE_ENABLE[0]=1 ;enable Table 1 $SN_CEC_TABLE_ENABLE[1]=1 ;enable Table 2 NEWCONF Additional tables can be set-up, e.g. for axes Y and Z: MD18342 $MN_MM_CEC_MAX_POINTS[2] = 90 (Table 3: Axis Y, positive traversing direction) MD18342 $MN_MM_CEC_MAX_POINTS[3] = 90 (Table 4: Axis Y, negative traversing direction) MD18342 $MN_MM_CEC_MAX_POINTS[4] = 50 (Table 5: Axis Z, positive traversing...
  • Page 390 K3: Compensation 5.4 Interpolatory compensation This way AX3 on NCU-1 is "coupled" with AX2 on NCU-2 (see configuration 1). The following variants can be used to parameterize if the axes to be coupled are on different channels: ● Version 1: "Programming with channel axis identifier": Two different part programs TP1 and TP2 are created, they are then processed in different channels.
  • Page 391 K3: Compensation 5.4 Interpolatory compensation Data backup is always undertaken with machine axis identifiers. Note The sag compensation can couple the axis only on one NCU, which can also be traversed from this NCU either via the part program or via a synchronized action. These variables are set optionally if the axes (input and output) are not available on the local NCU.
  • Page 392 K3: Compensation 5.4 Interpolatory compensation NOTICE YY is coupled to XX with each container rotation, there is a different axis behind YY now: YY "AX5 of NCU-1" is in configuration 3. Other real axes are coupled after the rotation in this way: In this example, AX-5 of NCU-1 is coupled to AX-2 of NCU-1.
  • Page 393 K3: Compensation 5.4 Interpolatory compensation Figure 5-10 Configuration 1: NCU link from channel to real axis 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"...
  • Page 394 K3: Compensation 5.4 Interpolatory compensation $MC_AXCONF_CHANAX_NAME_TAB[1] = "YR" $MC_AXCONF_CHANAX_NAME_TAB[2] = "ZR" 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] = "NC2_AX1"...
  • Page 395 K3: Compensation 5.4 Interpolatory compensation Figure 5-11 Configuration 2: NCU link with axis container in output state Figure 5-12 Configuration 3: NCU link with axis container in rotary state Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 396 K3: Compensation 5.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 397: Special Features Of Interpolatory Compensation

    K3: Compensation 5.4 Interpolatory compensation $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" $MN_AXCONF_LOGIC_MACHAX_TAB[2] = "NC2_AX3" $MN_AXCONF_LOGIC_MACHAX_TAB[3] = "NC2_AX4" $MN_AXCONF_LOGIC_MACHAX_TAB[4] = "NC2_AX5" $MN_AXCONF_LOGIC_MACHAX_TAB[5] = "NC2_AX6" CHANDATA(1) $MC_AXCONF_MACHAX_USED[0]=1 $MC_AXCONF_MACHAX_USED[1]=2...
  • Page 398 K3: Compensation 5.4 Interpolatory compensation Position display The position actual-value display in the machine coordinate system shows the ideal (programmed) actual position value of the axis (ideal machine). The position actual value determined by the measuring system plus the sum of MSEC and backlash compensation (= position actual value, measuring system 1/2) is displayed the "axis/spindle"...
  • Page 399: Dynamic Feedforward Control (Following Error Compensation)

    Note The torque feedforward control is an option that must be licensed and is only available for SINUMERIK 840D sl. The function is not available for SINUMERIK 828D. Activation The feedforward control method is selected and activated using the machine data:...
  • Page 400 K3: Compensation 5.5 Dynamic feedforward control (following error compensation) Note Upgrading 840D sl and 840Di sl When upgrading SINUMERIK 840 D sl and 840Di sl, new commissioning settings must be entered. If the feedforward control version MD32620 = 3 was already used, then when upgrading the software, the commissioning setting of MD32810 $MA_EQUIV_SPEEDCTRL_TIME (equivalent time constant, speed control loop for feedforward control) must be re-performed, as the Ti and To values are automatically taken into account.
  • Page 401: Speed Feedforward Control

    K3: Compensation 5.5 Dynamic feedforward control (following error compensation) Please note the following in this context: A block search stop is not effective for command or PLC axes traversing asynchronously to the subprogram processing. To ensure that FFWON/FFWOF only has an effect on the axis/spindle when it is next stationary in the axis mode, you must explicitly set MD32630 = 2 for each axis/spindle in the axis mode (see also "Forward feed control for command- and PLC axes (Page 406)").
  • Page 402 K3: Compensation 5.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 Value range: 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 403: Torque Feedforward Control - Only 840D Sl (Option)

    K3: Compensation 5.5 Dynamic feedforward control (following error compensation) Example Part program to set the equivalent time constants for the X axis Program code Comment MD32300 $MA_MAX_AX_ACCEL=0,1 ; Unit: m/s2 MD32000 $MA_MAX_AX_VELO=20000.0 ; Unit: mm/min ; Part program for setting the equivalent time constant G1 F20000 FFWON LOOP:...
  • Page 404 K3: Compensation 5.5 Dynamic feedforward control (following error compensation) Commissioning The following axis-specific parameters must be defined during commissioning for torque feedforward control: Equivalent time constant of the current control loop (MD32800) The equivalent time constant of the current control loop must be determined accurately (e.g. graphically from step response of the current control loop) and entered in the following machine data in order to correctly set the torque feedforward control: MD32800 $MA_EQUIV_CURRCTRL_TIME (equivalent time constant current control loop for...
  • Page 405: Dynamic Response Adaptation

    K3: Compensation 5.5 Dynamic feedforward control (following error compensation) The adjustment criterion for the torque feedforward control is: ● When the axis is traversing in the positive direction, the recorded following error has a positive value. ⇒ The value entered for the equivalent time constant of the current control loop or for the moment of inertia of the axis is too low.
  • Page 406: Forward Feed Control For Command- And Plc Axes

    K3: Compensation 5.5 Dynamic feedforward control (following error compensation) Activation (MD32900) The dynamic response adaptation is only active if the following machine data is set: MD32900 $MA_DYN_MATCH_ENABLE= 1 Reference Function Manual, Basic Functions; Velocities, Setpoint-Actual Value Systems, Closed-Loop Control (G2), Chapter: "Optimizing the closed-loop control" 5.5.5 Forward feed control for command- and PLC axes Function...
  • Page 407 K3: Compensation 5.5 Dynamic feedforward control (following error compensation) 6. The K factor and following error displayed in the service display "Axis/spindle" must not jump. 7. A higher K factor and a lower following error are only obtained for traversing motion following standstill.
  • Page 408: Secondary Conditions

    K3: Compensation 5.5 Dynamic feedforward control (following error compensation) 5.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 409: Friction Compensation (Quadrant Error Compensation)

    K3: Compensation 5.6 Friction compensation (quadrant error compensation) Friction compensation (quadrant error compensation) 5.6.1 General properties Function Friction occurs predominantly in the gearing and guideways. Static friction is especially noticeable in the machine axes. Because it takes a greater force to initiate a movement (breakaway) than to continue it, a greater following error occurs at the beginning of a movement.
  • Page 410: Conventional Friction Compensation

    K3: Compensation 5.6 Friction compensation (quadrant error compensation) To simplify commissioning, the compensation characteristic no longer has to be set manually by the commissioning engineer but is determined automatically during a training phase and then stored in the non-volatile user memory. The neural network can reproduce a compensation curve of much better quality and precision.
  • Page 411 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Figure 5-13 Typical curve for friction compensation with amplitude adaptation The adaptation characteristic is divided into four ranges (a different injection amplitude Δn is applied in each range): for a < a Δn = Δn * a / a for a...
  • Page 412: Commissioning Of Conventional Friction Compensation

    K3: Compensation 5.6 Friction compensation (quadrant error compensation) Adaptation acceleration value 2 for friction compensation MD32560 $FRICT_COMP_ACCEL2[n] (adaptation acceleration value 2) Adaptation acceleration value 3 for friction compensation MD32570 $FRICT_COMP_ACCEL3[n] (adaptation acceleration value 3) Note about characteristic shape In exceptional cases, the calculation characteristic may deviate from the typical shape shown in the diagram above.
  • Page 413 K3: Compensation 5.6 Friction compensation (quadrant error compensation) A typical characteristic of quadrant transitions without friction compensation is shown in the diagram below. Figure 5-14 Uncompensated radius deviation at quadrant transitions 2. Enabling friction compensation After this, the friction compensation must be activated for the axis/spindle in question. Activate friction compensation with machine data →...
  • Page 414 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Starting value A relatively low injection amplitude plus a time constant of a few position controller cycles should be entered as the start value when measuring commences. Example: MD32520 $MA_FRICT_COMP_CONST_MAX[n] = 10 (mm/min) MD32540 $FRICT_COMP_TIME[n] = 0.008 (8 ms) The effect of changing the parameters must be checked using the measured and plotted circles.
  • Page 415 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Amplitude too low When the injection amplitude setting is too low, radius deviations from the programmed radius are compensated inadequately at quadrant transitions during circularity testing. Figure 5-16 Amplitude too low Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 416 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Amplitude too high When the injection amplitude setting is too high, radius deviations at quadrant transitions are manifestly overcompensated at quadrant transitions. Figure 5-17 Amplitude too high Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 417 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Time constant too low When the compensation time constant settings are too low, radius deviations are compensated briefly at quadrant transitions during circularity testing, but are followed immediately again by greater radius deviations from the programmed radius. Figure 5-18 Compensation time constant too small Extended Functions...
  • Page 418 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Time constant too high When the compensation time constant settings are too high, radius deviations are compensated at quadrant transitions during circularity testing (on condition that the optimum injection amplitude has already been calculated), but the deviation in the direction of the arc center increases significantly after quadrant transitions.
  • Page 419 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Commissioning stage 2: Friction compensation with adaptation Application Whenever friction compensation depends on the acceleration and the required results cannot be obtained with constant injection amplitude, adaptation must be used. In order to obtain optimum compensation over the whole of the working range of the friction feedforward control where high demands are made on accuracy, the acceleration dependency of the compensation value must be calculated.
  • Page 420 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Example of characteristic settings 1. Calculate the existing acceleration The axial acceleration rate is calculated at the zero speed crossing of a circular movement with formula a = v With a radius of r = 10 mm and a circular velocity of v = 1 m/min (=16.7 mm/s), the acceleration rate is thus a = 27.8 mm/s 2.
  • Page 421: Quadrant Error Compensation Using Neural Networks - Only 840D Sl

    K3: Compensation 5.6 Friction compensation (quadrant error compensation) 5.6.3 Quadrant error compensation using neural networks - only 840D sl 5.6.3.1 Fundamentals Principle of QEC The purpose of quadrant error compensation (QEC) is to reduce contour errors occurring during reversal as the result of drift, backlash or torsion. Compensation is effected through prompt injection of an additional speed setpoint.
  • Page 422 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Requirements for neural QEC An essential requirement for implementing QEC with neural network is that the errors occurring on the workpiece at quadrant transitions are detected by the measuring system. This is only possible either with a direct measuring system, with an indirect measuring system with clear reactions of the load on the motor (i.e.
  • Page 423: Parameterization Of Neural Qec

    K3: Compensation 5.6 Friction compensation (quadrant error compensation) Recommended commissioning procedure As mentioned above, the neural network integrated in the control automatically adapts the optimum compensation data during the learning phase. The axis involved must perform reversals with acceleration values constant section by section.
  • Page 424 K3: Compensation 5.6 Friction compensation (quadrant error compensation) QEC system variables The data for parameterizing the neural network are defined as system variables that can be written and read by an NC program. The following system variables are used for parameterization of the neural network: ●...
  • Page 425 K3: Compensation 5.6 Friction compensation (quadrant error compensation) ● $AA_QEC_ACCEL_1/_2/_3 "Acceleration limit values for the characteristic areas 1/2/3" The acceleration characteristic is divided into three areas. In each area there is a different quantization of the acceleration steps. In the low acceleration range, an especially high resolution is required for the characteristic in order to reproduce the widely varying compensation values there.
  • Page 426 K3: Compensation 5.6 Friction compensation (quadrant error compensation) ● $AA_QEC_TIME_2 "Compensation time constant for adaptation of compensation value decay time" At a value of zero of less than or equal to $AA_QEC_TIME_1, no adaptation is performed. The decay time is usually constant over the entire working range. In rare cases however, it can be advantageous to raise the decay time in the very small acceleration range, or to lower it at high accelerations.
  • Page 427 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Quantization of characteristic The quantization, and thus the resolution, of the characteristic is defined via the two quantities fine quantization ($AA_QEC_FINE_STEPS) and coarse quantization ($AA_QEC_COARSE_STEPS). The finer the resolution, the higher the memory requirement and the longer the duration of time required for the learning phase.
  • Page 428 K3: Compensation 5.6 Friction compensation (quadrant error compensation) The effect of fine quantization on a section of characteristic within a coarse quantization process is shown in the diagram below (see also Section A in diagram above). Figure 5-22 Effect of fine quantization with "Detailed learning" inactive Case 3: Coarse quantization >...
  • Page 429: Learning The Neural Network

    K3: Compensation 5.6 Friction compensation (quadrant error compensation) Figure 5-23 Effect of fine quantization with "Detailed learning" = active 5.6.3.3 Learning the neural network Learning process sequence A certain type of response is impressed upon the neural network during the learning phase. The relation between the input and output signals is learnt.
  • Page 430 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Reference NC programs In order to ease the task of the engineer in commissioning the QEC with neural networks, NC programs containing specimen routines for learning movements and assignments of QEC system variables (recommended values) are available. These are the following reference NC programs: ●...
  • Page 431 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Learning motion The axis traversing motions that must be executed to learn a specific response are generated by an NC program. Each learning motion of the sample learning cycle comprises a group of NC blocks with parabolic movements (ensuring that the axis traverses at the most constant possible setpoint speed after the zero crossing;...
  • Page 432 K3: Compensation 5.6 Friction compensation (quadrant error compensation) After the learning motions of the required axes have been completed, the learning process is deactivated for all axes. This is done with the high-level language command QECLRNOF Deactivate learning (simultaneously for all axes) After power-on reset, end of program (M02/M30) or operator panel front reset, learning is also deactivated.
  • Page 433 K3: Compensation 5.6 Friction compensation (quadrant error compensation) ● Number of learning passes Default value = 15; range > 0 The effect of this parameter depends on whether "Detailed learning active" is set or not. a) Detailed learning not active (= FALSE): The number of test motions (back and forth) is defined for each acceleration stage.
  • Page 434: Commissioning Of Neural Qec

    K3: Compensation 5.6 Friction compensation (quadrant error compensation) 5.6.3.4 Commissioning of neural QEC General information Commissioning the QEC function with neural networks is described in brief below. As we have already mentioned, the compensation characteristics during the learning phase are determined automatically.
  • Page 435 K3: Compensation 5.6 Friction compensation (quadrant error compensation) 4. Activate the learning phase by starting this NC program. The compensation characteristic is learned simultaneously for all parameterized axes. The learning duration depends on the specified learning parameters. If default values are used, it can take several minutes. The status of the axes concerned can be observed in the service display "axis"...
  • Page 436 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Sequence of operations for "Relearning" The sequence of operations involved in the Relearning process is described below. 1. If characteristic values have not yet been stored in the user memory (RAM) (e.g. commissioning of a series machine), the pre-optimized data block must be loaded (see Section "Fundamentals").
  • Page 437: Further Optimization And Intervention Options

    K3: Compensation 5.6 Friction compensation (quadrant error compensation) 5.6.3.5 Further optimization and intervention options Optimization options In cases where the results of the circularity test do not meet the required accuracy standards, the system can be further improved by selective changes to QEC system variables.
  • Page 438 K3: Compensation 5.6 Friction compensation (quadrant error compensation) ● Since a characteristic is learned and stored for every direction of acceleration, double the memory space is required in the non-volatile user memory. The machine data below must be adjusted accordingly. MD38010 $MA_MM_QEC_MAX_POINTS (number of values for quadrant-error compensation with neural network) ●...
  • Page 439 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Figure 5-26 Interval width in acceleration ranges Adaptation of the decay time In special cases, it is possible to adapt the decay time of the compensation setpoint pulse in addition to the compensation amplitude. If, for example, the circularity test reveals that in the low acceleration range (a ) the quadrant transitions yield good compensation results but that radius deviations occur again...
  • Page 440 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Figure 5-27 Adaptation of the decay time Alteration of error measuring time During the learning phase for the neural network, the error measuring time determines the time window within which contour errors are monitored after a zero-speed passage. Experience has shown that the error measuring time to be used for average acceleration rates (approx.
  • Page 441 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Figure 5-28 Dependency of error measuring time on acceleration rate In special cases, it might be necessary to reparameterize the error measuring times: ● Setting of very extreme values for the QEC compensation time constant. Experience indicates that it is not useful to set an error measuring time of less than 10ms or more than 200ms.
  • Page 442 K3: Compensation 5.6 Friction compensation (quadrant error compensation) MD32580 $MA_FRICT_COMP_INC_FACTOR (weighting factor friction compensation value with short traversing movements) This weighting factor specified in the above machine data automatically takes effect when friction compensation is activated (conventional QEC or QEC with neural networks) acting on all positioning movements that are made within an interpolation cycle of the control.
  • Page 443: Quick Commissioning

    K3: Compensation 5.6 Friction compensation (quadrant error compensation) 5.6.3.6 Quick commissioning Preparation for "Learning" ● Calculate the optimum friction compensation time constant (MD32540 $MA_FRICT_COMP_TIME (backlash)) with the conventional friction compensation. ● Enter the following machine data without power ON: Machine data Standard Change to Meaning...
  • Page 444 K3: Compensation 5.6 Friction compensation (quadrant error compensation) ● Read in the machine data because of the memory change (MD38010). – HMI Embedded: Back up "Services" "Data OUT" "Commissioning data, NCK data" and, if applicable, "LEC, measuring system error, sag and angularity error compensation tables" via PCIN.
  • Page 445 K3: Compensation 5.6 Friction compensation (quadrant error compensation) Executing "Learning" process Start the following programs ● Select and start QECDAT. System variables are assigned. ● Select QECSTART and override 100% and start. The learn program takes about 15 minutes to execute with a traversing motion of about 30 cm. If the message "REORG not possible"...
  • Page 446: Circularity Test

    K3: Compensation 5.7 Circularity test Circularity test Function One of the purposes of the circularity test is to check the contour accuracy obtained by the friction compensation function (conventional or neural QEC). It works by measuring the actual positions during a circular movement and displaying the deviations from the programmed radius as a diagram (especially at the quadrant transitions).
  • Page 447 K3: Compensation 5.7 Circularity test Figure 5-29 Circularity test measurement menu Display mode The following parameter assignments for programming the mode of representation of measurement results can also be made: ● Display based on mean radius ● Display based on programmed radius ●...
  • Page 448 K3: Compensation 5.7 Circularity test To allow direct access to the required controller parameters, the softkeys Axis-specific MD, FDD-MD and MSD-MD are displayed. The vertical softkeys Axis+ and Axis- can be used to select the desired axis. The "Service axis" display is displayed when you press the Service Axis softkey. The following service data are displayed here cyclically for commissioning of the friction torque compensation: ●...
  • Page 449 K3: Compensation 5.7 Circularity test Printer settings The basic display for selecting a printer can be called by means of softkeys HMI \ Printer selection. The toggle key is used to define whether the displayed graphic is to be output directly on the printer or transferred to a bit map file after softkey Print graphic is selected.
  • Page 450 K3: Compensation 5.7 Circularity test Figure 5-32 Assignment of file name for output in a bitmap file. Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 451: Measures For Hanging (Suspended Axes)

    K3: Compensation 5.8 Measures for hanging (suspended axes) Measures for hanging (suspended axes) 5.8.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 5-33 Drop of a hanging axis without counterweight "Electronic counterweight"...
  • Page 452: Reboot Delay

    K3: Compensation 5.8 Measures for hanging (suspended axes) Figure 5-34 Lowering of a vertical axis with electronic weight compensation Commissioning Note The "electronic counterweight" is commissioned through the drive! Reference For additional information, see the following: SINAMICS S120 Function Manual Drive Functions 5.8.2 Reboot delay Secondary effects of a reboot via HMI...
  • Page 453 K3: Compensation 5.8 Measures for hanging (suspended axes) Reboot delay The reboot delay results in the NCK and PLC being shut down with a delay and communicates the pending shutdown in order to prevent hanging (suspended) axes from dropping. Note The reboot delay only works with a controlled POWER ON via the HMI.
  • Page 454 K3: Compensation 5.8 Measures for hanging (suspended axes) As alarm 2900 deactivates the axis position control, this alarm must be configured to initiate that the mechanical brakes are closed by the PLC. Rebooting the PLC forces the PLC outputs to change to defined zero. The brakes must be connected up in such a way that they remain closed at zero, i.e.
  • Page 455: Data Lists

    K3: Compensation 5.9 Data lists Data lists 5.9.1 Machine data 5.9.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 456: Setting Data

    K3: Compensation 5.9 Data lists Number Identifier: $MA_ Description 32620 FFW_MODE Feedforward control mode 32630 FFW_ACTIVATION_MODE Activate feedforward control from program 32650 AX_INERTIA Inertia for torque feedforward control 32700 ENC_COMP_ENABLE Interpolatory compensation 32710 CEC_ENABLE Enabling of sag compensation 32711 CEC_SCALING_SYSTEM_METRIC System of units for sag compensation 32720 CEC_MAX_SUM...
  • Page 457: Axis/Spindle-Specific Setting Data

    43920 TEMP_COMP_REF_POSITION Reference position for position-dependent temperature compensation 5.9.3 Signals 5.9.3.1 Signals from NC Signal name SINUMERIK 840D sl SINUMERIK 828D NC Ready DB10.DBX108.7 DB2700.DBX2.7 5.9.3.2 Signals from mode group Signal name SINUMERIK 840D sl SINUMERIK 828D Mode group ready DB11.DBX6.3...
  • Page 458 K3: Compensation 5.9 Data lists Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 459: 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 460 K5: Mode groups, channels, axis interchange 6.1 Brief description 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" it is possible to enable an axis/spindle and to allocate it to another channel, that means to replace the axis/spindle.
  • Page 461: Mode Groups - Only 840D Sl

    K5: Mode groups, channels, axis interchange 6.2 Mode groups - only 840D sl Mode groups - only 840D sl Mode groups A mode group combines NC channels with axes and spindles to form a machining unit. A mode group contains the channels that are required to run simultaneously in the same mode from the point of view of the machining sequence.
  • Page 462: Channels - Only 840D Sl

    K5: Mode groups, channels, axis interchange 6.3 Channels - only 840D sl Channels - only 840D sl Note The terms Channel, Channel Configuration, Channel States, Effects of Commands/Signals, etc. is described for the first channel in: Reference: Function Manual Basic Functions; Mode Group, Channel, Program Operation (K1) For all other channels, this information applies, too.
  • Page 463 K5: Mode groups, channels, axis interchange 6.3 Channels - only 840D sl Table 6- 1 Program coordination statements Statement Description Selection of a program for processing in a certain channel: Acknowledgment mode: n (without) or s (synchronous) Name of the program with specification of the path Number of channel: Values 1 to 4 possible CLEAR (identifier) Deletion of a program by indicating the program identifier...
  • Page 464 K5: Mode groups, channels, axis interchange 6.3 Channels - only 840D sl Behavior up to SW version 3 When a WAITM() call is reached, the axes in the current channel are decelerated and the system waits until the tag number specified in the call is received from the other channels to be synchronized.
  • Page 465: Conditional Wait In Continuous Path Mode Waitmc

    K5: Mode groups, channels, axis interchange 6.3 Channels - only 840D sl Channel 2: %200 ; Processing in channel 2 N70 WAITM(1,1,2) ; Wait for WAIT-tag 1 in the channel 1 and in the channel 2 ; additional processing in Channel 2 N270 WAITM(2,1,2) ;...
  • Page 466 K5: Mode groups, channels, axis interchange 6.3 Channels - only 840D sl Response A) Starting with the motion block before the WAITMC() call, the wait marks of the other channels to be synchronized are checked. If these have all been supplied, then the channels continue to operate without deceleration in continuous-path mode.
  • Page 467 K5: Mode groups, channels, axis interchange 6.3 Channels - only 840D sl Example of conditional wait in continuous-path mode Conditional wait involving three channels (schematic) The example is schematic and shows only those commands that are relevant to the synchronization process. Channel 1: %100 N10 INIT(2, "_N_200_MPF","n")
  • Page 468 K5: Mode groups, channels, axis interchange 6.3 Channels - only 840D sl Channel 2: %200 N200 ; Processing in Channel 2 N210 SETM(7) ; Channel 2 sets wait marker 7 ; Additional processing in Channel 2 N250 SETM(8) ; Channel 2 sets wait marker 8 N260 M30 ;...
  • Page 469 K5: Mode groups, channels, axis interchange 6.3 Channels - only 840D sl Wait mark 1 is set in Channels 2 and 3 Channel 2 proceeds with additional processing and program processing in Channel 3 is stopped because of read-in disabled. This behavior can be transferred to all available channels.
  • Page 470: Axis/Spindle Replacement

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement Axis/spindle replacement 6.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 471 K5: Mode groups, channels, axis interchange 6.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 parts program: ●...
  • Page 472: Example Of An Axis Replacement

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement Display The current type of axis and the current channel for this axis will be displayed in an axial PLC interface byte. See Section "Axis replacement by PLC". Note If an axis is not valid in the channel selected, this is displayed by inversion of the axis name on the operator panel front of HMI.
  • Page 473: Axis Replacement Options

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement 6.4.3 Axis replacement options One or more axes/spindles can be activated for replacement between channels by the parts program or by motion-synchronous actions. An axis/spindle replacement can also be requested and released from the PLC via the VDI interface. The axis/spindle must have been released in the current channel and will be taken over by the other channel with the GET command and released with the RELEASE command.
  • Page 474 K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement Axis replacement extensions ● Setting axis replacement behavior as variable via machine data MD10722 $MN_AXCHANGE_MASK. ● Axis replacement with an axis container rotation with implicit GET/GETD ● Axis replacement without pre-processing stop of axes not involved in the contour. ●...
  • Page 475: Replacement Behavior Nc Program

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement 6.4.4 Replacement behavior NC program Possible transitions The following diagram shows which axis replacement possibilities are available. Figure 6-2 Transitions of possible axis states during axis replacement Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 476: Axis Transfer To Neutral State (Release)

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement 6.4.5 Axis transfer to neutral state (release) RELEASE Notation in parts program: RELEASE (axis name, axis name, SPI (Spindle no.), ..) Note The axis name corresponds to the axis allocations in the system and is either •...
  • Page 477: Transferring Axis Or Spindle In The Part Program

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement 6.4.6 Transferring axis or spindle in the part program Options The release time and the behavior of an axis or spindle replacement is influenced in the part program as follows: – Programming with the GET command in the same channel. –...
  • Page 478: Automatic Axis Replacement

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement Note If the GET or GETD command has been programmed, take-over is delayed and the channel is reset; the channel will no longer try to take over the axis. An axis assumed with GET remains allocated to this channel even after a key RESET or program RESET.
  • Page 479 K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement Example 1 N1 M3 S1000 N2 RELEASE (SPI(1)) ; => Transition to neutral condition N3 S3000 ; New speed for released spindle ; MD AUTO_GET_TYPE = ; 0 =>Alarm "Wrong axis type" is generated ;...
  • Page 480: Axis Replacement Via Plc

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement 6.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 481 K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement Figure 6-3 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 482 K5: Mode groups, channels, axis interchange 6.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 6-4 Changing an NC axis to a PLC axis Figure 6-5...
  • Page 483: Set Axis Replacement Behavior Variable

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement 6.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 6- 2 Time of release of axes or spindles during replacement...
  • Page 484: Axis Replacement Via Axis Container Rotation

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement 6.4.10 Axis replacement via axis container rotation Release axis container rotation When an axis container rotation is released, all axis container axes that can be assigned to the channel are assigned to the channel by means of implicit GET or GETD commands. The axes can only be released again after the axis container rotation.
  • Page 485: Axis Replacement With And Without Preprocessing Stop

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement 6.4.11 Axis replacement with and without preprocessing stop Axis replacement extension without preprocessing stop Instead of a GET block with a preprocessing stop, this GET request only generates an intermediate block. In the main run, when this block is executed, the system checks whether the states of the axes in the block match the current axis states.
  • Page 486: Exclusively Plc-Controlled Axis And Permanently-Assigned Plc Axis

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement If the spindle (axis B) is traversed immediately after block N023 as a PLC axis to 180° and back to 1°, and then again to the neutral axis, block N040 does not trigger a preprocessing stop nor a reorganization.
  • Page 487 K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement Permanently assigned PLC axis The permanently assigned PLC axis is activated via: MD30460 $MA_BASE_FUNCTION_MASK, bit 5 = 1 During acceleration the axis becomes a neutral axis. A travel request via the NC/PLC interface converts a neutral axis without a previous axis interchange automatically to a concurrent positioning axis (PLC axis).
  • Page 488: Geometry Axis In Rotated Frame And Axis Replacement

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement 6.4.13 Geometry axis in rotated frame and axis replacement Replacement expansion via Frame with Rotation In JOG mode, a geometry axis with rotated frame can be traversed as PLC axis or as a command axis via static synchronized actions.
  • Page 489: Axis Replacement From Synchronized Actions

    K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement Only when in MD32074 $MA_FRAME_OR_CORRPOS_NOTALLOWED bit 10=1 and no block currently interpolates with this programming, can a replacement for these axes be done in JOG mode. 6.4.14 Axis replacement from synchronized actions Function An axis can be requested with GET(axis) and be released for axis replacement with RELEASE(axis) with a synchronous action.
  • Page 490 K5: Mode groups, channels, axis interchange 6.4 Axis/spindle replacement State transitions GET, RELEASE from synchronous actions and when GET is completed Figure 6-6 Transitions from synchronized actions For more information, please refer to: References: /FBSY/ Function Manual, Synchronized Actions; "Actions in Synchronized Actions" /PGA/ Programming Manual, Job Planning;...
  • Page 491: Marginal Conditions

    K5: Mode groups, channels, axis interchange 6.5 Marginal conditions Marginal conditions Mode group Up to 10 mode groups are available for SINUMERIK 840D sl. Only 1 mode group is available for SINUMERIK 828D. Channels Up to 10 channels are available for SINUMERIK 840D sl.
  • Page 492 K5: Mode groups, channels, axis interchange 6.5 Marginal conditions Change from a channel axis The change of a channel axis to a neutral axis or PLC axes cannot be performed during an active path operation. With RELEASE this is caused by the fact that RELEASE must be located in a separate NC block.
  • Page 493: Data Lists

    K5: Mode groups, channels, axis interchange 6.6 Data lists Data lists 6.6.1 Machine data 6.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 6.6.1.2 Channel-specific machine data Basic machine data of channel...
  • Page 494 K5: Mode groups, channels, axis interchange 6.6 Data lists Number Identifier: $MC_ Description 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 Basic setting of tool cutting edge without programming 20400 LOOKAH_USE_VELO_NEXT_BLOCK Look Ahead to programmed following block velocity...
  • Page 495: Axis/Spindle-Specific Machine Data

    K5: Mode groups, channels, axis interchange 6.6 Data lists Number Identifier: $MC_ Description 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 22500 GCODE_OUTPUT_TO_PLC G functions to PLC 22550 TOOL_CHANGE_MODE New tool offset for M function...
  • Page 496: Setting Data

    K5: Mode groups, channels, axis interchange 6.6 Data lists 6.6.2 Setting data 6.6.2.1 Channel-specific setting data Number Identifier: $SC_ Description 42000 THREAD_START_ANGLE Start angle for thread 42100 DRY_RUN_FEED Dry run feedrate 6.6.3 Signals 6.6.3.1 Signals to/from mode group The mode group signals from the PLC to the NCK and from the NCK to the PLC are included in data block 11.
  • Page 497: M1: Kinematic Transformation

    M1: Kinematic transformation Brief description 7.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 498: Tracyl (Option)

    M1: Kinematic transformation 7.1 Brief description 7.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 499 M1: Kinematic transformation 7.1 Brief description ● The control transforms the programmed traversing movements of the cylinder coordinate system into the traversing movements of the real machine axes (standard applications X- C-Z kinematics TRAFO_TYPE_n = 512): – Rotary axis (1) –...
  • Page 500: Traang (Option)

    M1: Kinematic transformation 7.1 Brief description 7.1.3 TRAANG (option) Note The "Inclined axis" option under license is required for the function "Inclined axis (TRAANG)". The function "Inclined axis (TRAANG)" is intended for grinding applications. It allows the following: ● Machining with inclined infeed axis. ●...
  • Page 501: Activating Transformation Machine Data Via Parts Program/Softkey

    M1: Kinematic transformation 7.1 Brief description 7.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 502: Transmit (Option)

    M1: Kinematic transformation 7.2 TRANSMIT (option) TRANSMIT (option) Note The TRANSMIT transformation described below requires that unique names are assigned to machine axes, channel and geometry axes when the transformation is active. MD10000 $MN_AXCONF_MACHAX_NAME_TAB, MD20080 $MC_AXCONF_CHANAX_NAME_TAB, MD20060 $MC_AXCONF_GEOAX_NAME_TAB. Besides this, no unequivocal assignments exist. Task specification Complete machining, see diagram: Figure 7-1...
  • Page 503: Preconditions For Transmit

    M1: Kinematic transformation 7.2 TRANSMIT (option) 7.2.1 Preconditions for TRANSMIT Axis configuration Before movements can be programmed in the Cartesian coordinate system (according to Fig. X, Y, Z), the control system must be notified of the relationship between this coordinate system and the real machine axes (CM, XM, ZM, ASM): ●...
  • Page 504 M1: Kinematic transformation 7.2 TRANSMIT (option) In this case, t specifies the number of the declared TRANSMIT transformation (maximum of 2). Figure 7-2 Axis configuration for the example in the figure "Face-end machining of turned part" (TRANSMIT) The configurations highlighted in the figure above apply when TRANSMIT is active. Assignment of names to geometry axes According to the axis configuration overview shown above, the geometry axes involved in the TRANSMIT operation must be defined with:...
  • Page 505 M1: Kinematic transformation 7.2 TRANSMIT (option) Assignment of geometry axes to channel axes A distinction has to be made, whetherTRANSMIT is active or not: ● TRANSMIT not active One y-axis is not available. MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB[0]=1 MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB_TAB[1]=0 MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB_TAB[2]=2 ● TRANSMIT active The Y-axis can be addressed by the parts program.
  • Page 506: Settings Specific To Transmit

    M1: Kinematic transformation 7.2 TRANSMIT (option) Assignment of names to machine axes With the cd of the machine axes as a reference, a machine axis name is transferred to the control system. 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" 7.2.2 Settings specific to TRANSMIT Type of transformation...
  • Page 507 M1: Kinematic transformation 7.2 TRANSMIT (option) TRAFO_AXES_IN_n Three channel axis numbers must be specified for the transformation data block n: MD24110 $MC_TRAFO_AXES_IN_1[0]=channel axis number of the axis perpendicular to the rotary axis. MD24110 $MC_TRAFO_AXES_IN_1[1]=channel axis number of the rotary axis. MD24110 $MC_TRAFO_AXES_IN_1[2]=channel axis number of the axis parallel to the rotary axis.
  • Page 508 M1: Kinematic transformation 7.2 TRANSMIT (option) Direction of rotation The direction of rotation of the rotary axis is specified by machine data as described in the following paragraph. TRANSMIT_ROT_SIGN_IS_PLUS_t If the rotary axis rotates in an anti-clockwise direction on the X-Y plane when viewed along the Z axis, then the machine axis must be set to 1, but otherwise to 0.
  • Page 509 M1: Kinematic transformation 7.2 TRANSMIT (option) Figure 7-3 Position of tool zero in relation to origin of the Cartesian coordinate system MD24920 $MC_TRANSMIT_BASE_TOOL_t[0]=tx MD24920 $MC_TRANSMIT_BASE_TOOL_t [1]=ty MD24920 $MC_TRANSMIT_BASE_TOOL_t [2]=tz In this case, "t" in front of the index specification [ ] is substituted by the number of the TRANSMIT transformations declared in the transformation data blocks (t may not be greater than 2).
  • Page 510: Activation Of Transmit

    M1: Kinematic transformation 7.2 TRANSMIT (option) 7.2.3 Activation of TRANSMIT TRANSMIT After the settings described above have been made, the TRANSMIT function can be activated: TRANSMIT or TRANSMIT (t) The first declared TRANSMIT function is activated with TRANSMIT. TRANSMIT(t) activates the t-th declared TRANSMIT function –...
  • Page 511 M1: Kinematic transformation 7.2 TRANSMIT (option) ● An active working area limitation is deselected by the control for the axes affected by the transformation (corresponds to programmed WALIMOF). ● Continuous path control and rounding are interrupted. ● DRF offsets in transformed axes must have been deleted by the operator. Please note on deselection ●...
  • Page 512 M1: Kinematic transformation 7.2 TRANSMIT (option) Figure 7-4 Rotary axis offset with TRANSMIT This offset can also be included in the transformation as an offset in the rotary axis. To ensure that the total axial frame of the transmit rotary axis, i.e. the translation, fine offset, mirroring and scaling, is included in the transformation, the following settings must be made: MD24905 $MC_TRANSMIT_ROT_AX_FRAME_1 = 1 MD24955 $MC_TRANSMIT_ROT_AX_FRAME_2 = 1...
  • Page 513 M1: Kinematic transformation 7.2 TRANSMIT (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 TRANSMIT is implemented by default during preprocessing.
  • Page 514: Machining Options For Transmit

    M1: Kinematic transformation 7.2 TRANSMIT (option) In AUTOMATIC mode The velocity-optimized velocity planning function remains active for as long as the axes relevant to the transformation are traversed in mutual synchronism as path axes. If an axis involved in the transformation is traversed as a positioning axis, the online velocity check remains active until the transformation is deactivated or until all axes involved in the transformation are operating as path axes again.
  • Page 515 M1: Kinematic transformation 7.2 TRANSMIT (option) New features Definition: A pole is said to exist if the line described by the tool center point intersects the turning center of the rotary axis. The following cases are covered: ● Under what conditions and by what methods the pole can be traversed ●...
  • Page 516 M1: Kinematic transformation 7.2 TRANSMIT (option) Rotation in pole Figure 7-6 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 517 M1: Kinematic transformation 7.2 TRANSMIT (option) Special features relating to pole traversal The method of pole traversal along the linear axis may be applied in the AUTOMATIC and JOG modes. System response: Table 7- 1 Traversal of pole along the linear axis Operating mode State Response...
  • Page 518 M1: Kinematic transformation 7.2 TRANSMIT (option) Traversal close to pole If a tool center point traverses past the pole, the control system automatically reduces the feedrate and path acceleration rate such that the settings of the machine axes (MD 32000 $MA_MAX_AX_VELO[AX*] and MD32300 $MA_ MAX_AX_ACCEL[AX*]) are not exceeded.
  • Page 519 M1: Kinematic transformation 7.2 TRANSMIT (option) Corner without pole traversal Figure 7-8 Machining on one pole side Requirements: AUTOMATIC mode, MD24911 $MC_TRANSMIT_POLE_SIDE_FIX_1 = 1 or 2 MD24951 $MC_TRANSMIT_POLE_SIDE_FIX_2 = 1 or 2 The control system inserts a traversing block at the step change point. This block generates the necessary rotation so that machining of the contour can continue on the same side of the pole.
  • Page 520: Working Area Limitations

    M1: Kinematic transformation 7.2 TRANSMIT (option) MD24911 $MC_TRANSMIT_POLE_SIDE_FIX_1 = 1 MD24951 $MC_TRANSMIT_POLE_SIDE_FIX_2 = 1 machining is done before the rotational center point (linear axis in positive traversing range), MD24911 $MC_TRANSMIT_POLE_SIDE_FIX_1 = 2 MD24951 $MC_TRANSMIT_POLE_SIDE_FIX_2 = 2 behind the rotational center point (linear axis in negative traversing range). Transformation selection outside pole The control system moves the axes involved in the transformation without evaluating machine data MD24911 $MC_TRANSMIT_POLE_SIDE_FIX_t.
  • Page 521: Overlaid Motions With Transmit

    M1: Kinematic transformation 7.2 TRANSMIT (option) Traverse into working area limitation Any motion that leads into the working area limitation is rejected with alarm 21619. Any corresponding parts program block is not processed. The control system stops processing at the end of the preceding block. If the motion cannot be foreseen promptly enough (JOG modes, positioning axes), then the control stops at the edge of the working area limitation.
  • Page 522: Constraints

    M1: Kinematic transformation 7.2 TRANSMIT (option) 7.2.10 Constraints Look Ahead All functions requiring Look Ahead (traversal through pole, Look Ahead) work satisfactorily only if the relevant axis motions can be calculated exactly in advance. With TRANSMIT, this applies to the rotary axis and the linear axis perpendicular to it. If one of these axes is the positioning axis, then the Look Ahead function is deactivated by alarm 10912 and the conventional online velocity check activated instead.
  • Page 523 M1: Kinematic transformation 7.2 TRANSMIT (option) TRANSMIT with supplementary linear axis With active TRANSMIT, the channel identifier of posBCS[ax[3]] must have another name in the parts program, like the geometry axes. If posBCS[ax[3]] is written only outside the TRANSMIT transformation, this restriction does not apply if the axis has been assigned to a geometry axis.
  • Page 524: Tracyl (Option)

    M1: Kinematic transformation 7.3 TRACYL (option) TRACYL (option) Note The TRACYL transformation described below requires that unique names are assigned to machine axes, channels and geometry axes when the transformation is active. See MD10000 $MN_AXCONF_MACHAX_NAME_TAB, MD20080 $MC_AXCONF_CHANAX_NAME_TAB, MD20060 $MC_AXCONF_GEOAX_NAME_TAB. Besides this, no unequivocal assignments exist. Task specification Groove machining, see diagram.
  • Page 525 M1: Kinematic transformation 7.3 TRACYL (option) Axis Configuration (1) The generated cylinder surface curve transformation allows a traversing path to be specified with respect to the generated surface of a cylinder coordinate system. The machine kinematics must correspond to the cylinder coordinate system. It must include one or two linear axes and a rotary axis.
  • Page 526: Preconditions For Tracyl

    M1: Kinematic transformation 7.3 TRACYL (option) Functionality During transformation (both axis configurations), the full functionality of the control is available, both for processing from the NC program and in JOG mode Groove traversing-section In the case of axis configuration 1, longitudinal grooves along the rotary axis are subject to parallel limits only if the groove width corresponds exactly to the tool radius.
  • Page 527 M1: Kinematic transformation 7.3 TRACYL (option) Number of TRACYL structures Three of the 10 permitted data structures for transformations may be assigned to the TRACYL function. They are characterized by the fact that the value assigned with MD24100 $MC_TRAFO_TYPE_n is 512 or 513 or 514. The following machine data must be set for a maximum of 3 of these TRACYL transformations: MD24800 $MC_TRACYL_ROT_AX_OFFSET_t...
  • Page 528 M1: Kinematic transformation 7.3 TRACYL (option) Axis configuration The following overview shows the relationship between the axes of the machine and the relevant axis data. Figure 7-13 Axis configuration for the example in Figure "Machining grooves on a cylinder surface with X-Y-Z-C kinematics"...
  • Page 529 M1: Kinematic transformation 7.3 TRACYL (option) Assignment of geometry axes to channel axes A distinction has to be made, whetherTRACYL is active or not: ● TRACYL not active A Y axis is operated normally. MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB[0]=1 MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB[1] = 2 MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB[2] = 3 ●...
  • Page 530: Settings Specific To Tracyl

    M1: Kinematic transformation 7.3 TRACYL (option) MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[2]=0 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[3]=0 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[4]=2 Assignment of names to machine axes With the cd of the machine axes as a reference, a machine axis name is transferred to the control system: MD10000 $MN_AXCONF_MACHAX_NAME_TAB[0]="CM" MD10000 $MN_AXCONF_MACHAX_NAME_TAB[1]="XM"...
  • Page 531 M1: Kinematic transformation 7.3 TRACYL (option) Grooves with groove side offset The required inclusion of the tool offset has already been taken into account for the TRACYL transformation with groove side offset. Axis image The following paragraph describes how the transformation axis image is specified. TRAFO_AXES_IN_n Three (or 4) 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...
  • Page 532 M1: Kinematic transformation 7.3 TRACYL (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 7-14 Center of rotation of axis in the peripheral cylinder surface TRACYL_ROT_AX_OFFSET_t The rotational position of the peripheral surface in relation to the defined zero position of the rotary axis is specified with:...
  • Page 533 M1: Kinematic transformation 7.3 TRACYL (option) Replaceable geometry axes The PLC is informed when a geometry axis has been replaced using GEOAX( ) through the optional output of an M code that can be set in machine data. ● MD22534 $MC_TRAFO_CHANGE_M_CODE Number of the M code that is output at the VDI interface in the case of transformation changeover.
  • Page 534: Activation Of Tracyl

    M1: Kinematic transformation 7.3 TRACYL (option) Example: MD24820 $MC_TRACYL_BASE_TOOL_t[0]=tx MD24820 $MC_TRACYL_BASE_TOOL_t[1]=ty MD24820 $MC_TRACYL_BASE_TOOL_t[2]=tz In this case, "t" is substituted by the number of the TRACYL transformations declared in the transformation data blocks (t may not be greater than 2). Figure 7-16 Cylinder coordinate system 7.3.3 Activation of TRACYL...
  • Page 535: Deactivation Of The Tracyl Function

    M1: Kinematic transformation 7.3 TRACYL (option) Transformation type 514 with groove side offset An additional call parameter is used for transformation type 514; this is the third parameter with which TRACYL transformation with groove side offset can be selected: TRACYL(reference diameter, Tracyl data block, groove side offset). ●...
  • Page 536 M1: Kinematic transformation 7.3 TRACYL (option) ● The control system deselects an active working area limit for axes affected by the transformation. (Corresponds to programmed WALIMOF). ● Continuous path control and rounding are interrupted. ● DRF offsets must have been deleted by the operator. ●...
  • Page 537 M1: Kinematic transformation 7.3 TRACYL (option) Extensions An offset of the rotary axis CM can be entered, for example, by compensating the inclined position of a workpiece in a frame within the frame chain. The x and y values are then as illustrated in the following diagram.
  • Page 538: Jog

    M1: Kinematic transformation 7.3 TRACYL (option) Exceptions Axes affected by the transformation cannot be used ● as a preset axis (alarm) ● to approach the fixed point (alarm) ● for referencing (alarm) Interrupt parts program The following points must be noted with respect to interrupting parts program processing in connection with TRACYL: AUTOMATIC after JOG If parts program processing is interrupted when the transformation is active followed by...
  • Page 539: Traang (Option)

    M1: Kinematic transformation 7.4 TRAANG (option) TRAANG (option) Note The TRAANG transformation described below requires that unique names are assigned to machine axes, channels and geometry axes when the transformation is active. See MD10000 $MN_AXCONF_MACHAX_NAME_TAB, MD20080 $MC_AXCONF_CHANAX_NAME_TAB, MD20060 $MC_AXCONF_GEOAX_NAME_TAB. Besides this, no unequivocal assignments exist. Task specification Grinding operations Figure 7-18...
  • Page 540: Preconditions For Traang (Inclined Axis)

    M1: Kinematic transformation 7.4 TRAANG (option) The following range of machining operations is available: ● Longitudinal grinding ● Face grinding ● Grinding of a specific contour ● Oblique plunge-cut grinding Figure 7-19 Possible grinding operations 7.4.1 Preconditions for TRAANG (inclined axis) Axis configuration To be able to program in the Cartesian coordinate system (see figure "Machine with inclined infeed axis": X, Y, Z), it is necessary to inform the control of the correlation between this...
  • Page 541 M1: Kinematic transformation 7.4 TRAANG (option) With the exception of "Inclined axis active", the procedure is the same as for the normal axis configuration. References: /FB1/ Function Manual Basic Functions; Coordinate Systems, Axis Types, Axis Configurations, Workpiece-related Actual-Value System, External Zero Offset (K2). Number of transformations Up to 10 transformation data blocks can be defined for each channel in the system.
  • Page 542 M1: Kinematic transformation 7.4 TRAANG (option) Axis configuration The axes of the grinding machine illustrated in the figure, must be entered as follows in the machine data: Axis configuration for the example in figure "Machine with inclined infeed axis" The configurations highlighted in the figure above apply when TRAANG is active. Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 543: Settings Specific To Traang

    M1: Kinematic transformation 7.4 TRAANG (option) 7.4.2 Settings specific to TRAANG Type of transformation TRAFO_TYPE_n The user must specify the transformation type for the transformation data blocks (maximum n = 10) in the following machine data: MD24100 $MC_TRAFO_TYPE_n The value for an inclined axis is 1024: MD24100 $MC_TRAFO_TYPE_1=1024 Axis image TRAFO_AXES_IN_n...
  • Page 544 M1: Kinematic transformation 7.4 TRAANG (option) MD24996 $MC_TRACON_CHAIN_2[0] = 2 input variables in TRACON MD24996 $MC_TRACON_CHAIN_2[1] = 3 input variables in TRACON MD24996 $MC_TRACON_CHAIN_2[2] = 0 input variables in TRACON MD24996 $MC_TRACON_CHAIN_2[3] = 0 input variables in TRACON Angle of inclined axis TRAANG_ANGLE_m The following machine data is used to inform the control system of the angle which exists between a machine axis and the inclined axis in degrees:...
  • Page 545 M1: Kinematic transformation 7.4 TRAANG (option) Optimization of velocity control The following machine data are used to optimize the velocity control in jog mode and in positioning and oscillation modes: TRAANG_PARALLEL_VELO_RES_m Machine data MD24720 $MC_TRAANG_PARALLEL_VELO_RES_m is used to set the velocity reserve which is held on the parallel axis for compensatory motion (see the following machine data).
  • Page 546: Activation Of Traang

    M1: Kinematic transformation 7.4 TRAANG (option) 7.4.3 Activation of TRAANG TRAANG(a) After the settings described above have been made, the TRAANG function can be activated: TRAANG(a) TRAANG(a,n) With TRAANG(a) the first declared transformation inclined axis is activated. The angle of the inclined axis can be specified with α. ●...
  • Page 547: Special System Reactions With Traang

    M1: Kinematic transformation 7.4 TRAANG (option) 7.4.5 Special system reactions with TRAANG The transformation can be selected and deselected via parts program or MDA. Selection and deselection ● An intermediate motion block is not inserted (phases/radii). ● A spline block sequence must be terminated. ●...
  • Page 548: Inclined Axis Programming (G05, G07)

    M1: Kinematic transformation 7.4 TRAANG (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 TRAANG is implemented as standard during preprocessing.
  • Page 549 M1: Kinematic transformation 7.4 TRAANG (option) Programming Figure 7-21 Machine with inclined infeed axis Example: N... Program axis for inclined axis N50 G07 X70 Z40 F4000 Approach starting position N60 G05 X70 F100 Oblique plunge-cutting N... Constraints ● It is only meaningful to select the function "Cartesian PTP travel" in JOG mode (motion according to G05) if transformation is active (TRAANG).
  • Page 550: Chained Transformations

    M1: Kinematic transformation 7.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 ● TRAANG (oblique axis) as described in References: /FB3/ Function Manual Special Functions;...
  • Page 551 M1: Kinematic transformation 7.5 Chained transformations ● Identification of spindle, rotation, modulo for axes ● Allocation of machine axis names. ● Transformation-specific settings (for individual transformations and for chained transformations) – Transformation type – axes going into transformation – Assignment of geometry axes to channel axes during active transformation –...
  • Page 552: Activating Chained Transformations

    M1: Kinematic transformation 7.5 Chained transformations 7.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 553: Persistent Transformation

    M1: Kinematic transformation 7.5 Chained transformations 7.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 TRANSMIT that must be selected in relation to the persistent transformation must be parameterized in a chain with the persistent transformation by means of TRACON.
  • Page 554 M1: Kinematic transformation 7.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: TRACON on HMI Accordingly the HMI operator interface does not display TRACON, but the first chain transformation of TRACON e.g.
  • Page 555 M1: Kinematic transformation 7.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 556 M1: Kinematic transformation 7.5 Chained transformations 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' MD20112 $MC_START_MODE_MASK = 'H80'...
  • Page 557 M1: Kinematic transformation 7.5 Chained transformations ; 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 558: Axis Positions In The Transformation Chain

    M1: Kinematic transformation 7.5 Chained transformations 7.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 Description REAL $AA_ITR[ax,n] Current setpoint value at output of the nth transformation REAL $AA_IBC[ax]...
  • Page 559 M1: Kinematic transformation 7.5 Chained transformations $AA_ITR[ <axis>, <transformer layer> ] The $AA_ITR[ax,n] variable determines the setpoint position of an axis at the output of the nth chained transformation. Figure 7-22 Transformer layer Transformer layer The 2nd index of the variable corresponds to the transformer layer in which the positions are tapped: ●...
  • Page 560 M1: Kinematic transformation 7.5 Chained transformations $AA_IBC[ <axis>] 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 561: Cartesian Ptp Travel

    M1: Kinematic transformation 7.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 562 M1: Kinematic transformation 7.6 Cartesian PTP travel Reset MD20152 $MC_GCODE_RESET_MODE[48] (group 49) defines which setting is active after RESET/end of parts 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 563 M1: Kinematic transformation 7.6 Cartesian PTP travel ● PTP does not permit cutting cycles like CONTPRON, CONTDCON Stock removal cycles require a contour to construct the cut segmentation. This information is not available with PTP. Alarm 10931 "Error in cut compensation" is generated in response.
  • Page 564: Programming Of Position

    M1: Kinematic transformation 7.6 Cartesian PTP travel Alarm 10744: With PTPG0, CP travel is used for smooth approach and retraction (SAR), in order to ensure correct processing of soft approach and retraction. Alarm 10746: Still possible in case of conflict. Alarm 17610: Transformation axes must not be configured simultaneously as positioning axes traversed by means of POS.
  • Page 565: Overlap Areas Of Axis Angles

    M1: Kinematic transformation 7.6 Cartesian PTP travel Note It is only meaningful to program the STAT address for "Cartesian PTP travel", since changes in position are not normally possible while an axis is traversing with active transformation. The starting point position is applied as the destination point for traversal with the CP command.
  • Page 566: Examples Of Ambiguities Of Position

    M1: Kinematic transformation 7.6 Cartesian PTP travel 7.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 7-24 Ambiguity in overhead area Figure 7-25 Ambiguity of top or bottom elbow Figure 7-26 Ambiguity of axis B1 Extended Functions...
  • Page 567: Example Of Ambiguity In Rotary Axis Position

    M1: Kinematic transformation 7.6 Cartesian PTP travel 7.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 7-27 Ambiguity in rotary axis position 7.6.5...
  • Page 568: Cartesian Manual Travel (Optional)

    M1: Kinematic transformation 7.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 569 M1: Kinematic transformation 7.7 Cartesian manual travel (optional) Selecting reference systems For JOG motion, one of three reference systems can be specified separately both for Translation (coarse traverse) with geometry axes, as well as for Orientation with orientation axes via the SD42650 $SC_CART_JOG_MODE.
  • Page 570 M1: Kinematic transformation 7.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 571 M1: Kinematic transformation 7.7 Cartesian manual travel (optional) Translation and orientation in the TCS simultaneously If translation and orientation motions 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 572 M1: Kinematic transformation 7.7 Cartesian manual travel (optional) Orientation in BCS The rotations are made around the defined directions of the basic coordinate system. Figure 7-31 Cartesian manual travel in the basic coordinate system orientation angle A Figure 7-32 Cartesian manual travel in the basic coordinate system orientation angle B Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 573 M1: Kinematic transformation 7.7 Cartesian manual travel (optional) Figure 7-33 Cartesian manual travel in the basic coordinate system orientation angle C 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 7-34 Cartesian manual travel in the tool coordinate system, orientation angle A Extended Functions...
  • Page 574 M1: Kinematic transformation 7.7 Cartesian manual travel (optional) Figure 7-35 Cartesian manual travel in the tool coordinate system, orientation angle B Figure 7-36 Cartesian manual travel in the tool coordinate system, orientation angle C Secondary conditions If only NST DB31, ... DBX33.6 ("Transformation active") is on 1, is it possible to execute the Cartesian manual travel function.
  • Page 575 M1: Kinematic transformation 7.7 Cartesian manual travel (optional) Table 7- 2 Conditions for Cartesian manual travel Transformation in G codes PTP/CP IS "Activate PTP/CP IS "Transformation program active travel" active" (TRAORI..) FALSE Not functional Not functional DB31, ... DBX33.6 = 0 TRUE DB31, ...
  • Page 576 M1: Kinematic transformation 7.7 Cartesian manual travel (optional) Combining reference systems The table below shows all the combination options for reference systems. Table 7- 4 Combination options for reference systems SD42650 $SC_CART_JOG_MODE Reference system for Bit 10 Bit 9 Bit 8 Bit 2 Bit 1 Bit 0...
  • Page 577: Activating Transformation Machine Data Via Parts Program/Softkey

    M1: Kinematic transformation 7.8 Activating transformation machine data via parts program/softkey Activating transformation machine data via parts program/softkey 7.8.1 Functionality Transformation MD can now be activated by means of a program command softkey, i.e. these can, for example, be written from the parts program, thus altering the transformation configuration completely.
  • Page 578: Constraints

    M1: Kinematic transformation 7.8 Activating transformation machine data via parts program/softkey 7.8.2 Constraints Change machine data The machine data which affect an active transformation may not be altered; any attempt to do so will generate an alarm. These are generally all machine data assigned to a transformation via the associated transformation data group.
  • Page 579: Control Response To Power On, Mode Change, Reset, Block Search, Repos

    M1: Kinematic transformation 7.8 Activating transformation machine data via parts program/softkey Changing the assignment The assignment of a transformation data set to a transformation is determined by the sequence of entries in MD24100 $MC_TRAFO_TYPE_X. The first entry in the table is assigned to the first transformation data set, and accordingly the second entry to the second data set.
  • Page 580: List Of Machine Data Affected

    M1: Kinematic transformation 7.8 Activating transformation machine data via parts program/softkey To avoid this problem when re-configuring transformations via an NC program, we therefore recommend that NC programs are structured as follows: N10 TRAFOOF() ; Select a possibly still active transformation N20$MC_TRAFO5_BASE_TOOL_1[0]=0 ;...
  • Page 581 M1: Kinematic transformation 7.8 Activating transformation machine data via parts program/softkey ● MD24540 $MC_TRAFO5_POLE_LIMIT_1 and MD24640 $MC_TRAFO5_POLE_LIMIT_2 ● MD24570 $MC_TRAFO5_AXIS1_1 and MD24670 $MC_TRAFO5_AXIS1_2 ● MD24572 $MC_RAFO5_AXIS2_1 and MD24672 $MC_TRAFO5_AXIS2_2 ● MD24574 $MC_TRAFO5_BASE_ORIENT_1 and MD24674 $MC_TRAFO5_BASE_ORIENT_2 ● MD24562 $MC_TRAFO5_TOOL_ROT_AX_OFFSET_1 and MD24662 $MC_TRAFO5_TOOL_ROT_AX_OFFSET_2 ●...
  • Page 582 M1: Kinematic transformation 7.8 Activating transformation machine data via parts program/softkey Inclined axis transformations Machine data which are relevant for inclined axis transformations: ● MD24710 $MC_TRAANG_BASE_TOOL_1 and MD24760 $MC_TRAANG_BASE_TOOL_2 ● MD24700 $MC_TRAANG_ANGLE_1 and MD24750 $MC_TRAANG_ANGLE_2 ● MD24720 $MC_TRAANG_PARALLEL_VELO_RES_1 and MD24770 $MC_TRAANG_PARALLEL_VELO_RES_2 ●...
  • Page 583: Constraints

    M1: Kinematic transformation 7.9 Constraints Constraints 7.9.1 Chained transformations Two transformations can be chained. However, not just any transformation can be chained to another one. In this case, the following restrictions apply: ● The first transformation of the chain has to be one of the following transformations: –...
  • Page 584 M1: Kinematic transformation 7.10 Examples MD20070 $MC_AXCONF_MACHAX_USED[1]=3 : ZC as machine axis 3 MD20070 $MC_AXCONF_MACHAX_USED[2]=1 : CC as machine axis 1 MD20070 $MC_AXCONF_MACHAX_USED[3] = 4 : ASC as machine axis 4 MD20070 $MC_AXCONF_MACHAX_USED[3] = 0 : Empty MD20070 $MA_SPIND_ASSIGN_TO_MACHAX[AX1]= 1 : C is spindle 1 MD20070 $MA_SPIND_ASSIGN_TO_MACHAX[AX2]= 0 : X is no spindle...
  • Page 585: Tracyl

    M1: Kinematic transformation 7.10 Examples 7.10.2 TRACYL The following figure shows an example relating to the configuration of axes and shows the sequence of main steps required to configure the axes up to activation by TRACYL. ; General axis configuration for rotation MD20060 $MC_AXCONF_GEOAX_NAME_TAB[0]="X"...
  • Page 586 M1: Kinematic transformation 7.10 Examples MD24120 ; 1st channel axis becomes GEOAX X $MC_TRAFO_GEOAX_ASSIGN_TAB_1 [0] MD24120 ; 2nd channel axis becomes GEOAX Y $MC_TRAFO_GEOAX_ASSIGN_TAB_1 [1] MD24120 ; 3rd channel axis becomes GEOAX Z $MC_TRAFO_GEOAX_ASSIGN_TAB_1[2]= MD24800 ; rotation position X-Y plane against zero $MC_TRACYL_ROT_AX_OFFSET_1 = 0 position of the rotary axis MD24810...
  • Page 587 M1: Kinematic transformation 7.10 Examples Tool radius The tool radius is automatically taken into account with respect to the groove side wall (see 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 7-37 Groove with wall compensation, cylinder coordinates (simplified sketch) ;...
  • Page 588 M1: Kinematic transformation 7.10 Examples N50 OFFN=12 ; Determine groove wall distance, need not be in ; its own line ; Approach of groove wall N60 G1 Z100 G42 ; TRC selection to approach groove wall Machining groove sector path I N70 G1 Z50 ;...
  • Page 589 M1: Kinematic transformation 7.10 Examples MD24110 $MC_TRAFO_AXES_IN_1[1] = 4 ; Channel axis in cylinder surface ; perpendicular to rotary axis MD24110 $MC_TRAFO_AXES_IN_1[2] = 3 ; channel axis parallel to rotary axis MD24110 $MC_TRAFO_AXES_IN_1[3] = 2 ; Channel axis special axis to index [0] MD24120 $MC_TRAFO_GEOAX_ASSIGN_TAB_1 [0] = 1 ;...
  • Page 590: Traang

    M1: Kinematic transformation 7.10 Examples 7.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 591: Chained Transformations

    M1: Kinematic transformation 7.10 Examples MD24120 $MC_TRAFO_GEOAX_ASSIGN_TAB_1 [2] ; Z 3rd channel axis 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 592 M1: Kinematic transformation 7.10 Examples MD20080 $MC_AXCONF_CHANAX_NAME_TAB[3]="A" 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 593 M1: Kinematic transformation 7.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 594 M1: Kinematic transformation 7.10 Examples Parts program (extracts) Example of an NC program which uses the set transformations: ; 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 595: Activating Transformation Md Via A Parts Program

    M1: Kinematic transformation 7.10 Examples n340 x0 y20 z10 n350 x-20 y0 z0 n360 x0 y-20 z0 n370 x20 y0 z0 n380 TRAFOOF ; Deactivate 2nd chained transformation n1000 M30 7.10.5 Activating transformation MD via a parts program It would be permissible in the following example to reconfigure (write) a machine data affecting the second transformation (e.g.
  • Page 596: Axis Positions In The Transformation Chain

    M1: Kinematic transformation 7.10 Examples 7.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 597 M1: Kinematic transformation 7.10 Examples 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 598 M1: Kinematic transformation 7.10 Examples 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 599: Data Lists

    M1: Kinematic transformation 7.11 Data lists 7.11 Data lists 7.11 7.11.1 Machine data 7.11.1.1 TRANSMIT Channel-specific 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...
  • Page 600: Tracyl

    M1: Kinematic transformation 7.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 601 M1: Kinematic transformation 7.11 Data lists Number Identifier: $MC_ Description 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 24446 TRAFO_INCLUDES_TOOL_6 Tool handling with active transformation 6.
  • Page 602: Traang

    M1: Kinematic transformation 7.11 Data lists 7.11.1.3 TRAANG Channel-specific 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 603: Chained Transformations

    MAX_TILT_ANGLE Maximum permissible side angle for orientation programming 21100 ORIENTATION_IS_EULER Angle definition for orientation programming 7.11.2 Signals 7.11.2.1 Signals from channel Signal name SINUMERIK 840D sl SINUMERIK 828D Transformation active DB21, ..DBX33.6 DB3300.DBX1.6 Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 604 M1: Kinematic transformation 7.11 Data lists Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 605: M5: Measuring

    M5: Measuring Brief description Channel-specific measuring In the case of channel-specific measuring, a trigger event is programmed for a part program block. This triggers the measuring operation and selects a measuring mode for performing the measurements. The instructions apply to all axes programmed in this particular block. Preset actual value memory and scratching The preset actual value memory is initiated by means of an HMI operator action.
  • Page 606: Hardware Requirements

    M5: Measuring 8.2 Hardware requirements Hardware requirements 8.2.1 Probes that can be used General information In order to measure tool and workpiece dimensions, a touch-trigger probe is required that supplies a constant signal (rather than a pulse) when deflected. The probe must operate virtually bounce-free. Most sensors can be adjusted mechanically to ensure that they operate in this manner.
  • Page 607 M5: Measuring 8.2 Hardware requirements Bidirectional probe This probe type is handled in the same way as a mono probe in milling and machining centers. Bi-directional probes can be used to take workpiece measurements on turning machines. Monodirectional probe This probe type can be used, with only a few restrictions, to take workpiece measurements on milling and machining centers.
  • Page 608: Measuring Probe Connection

    M5: Measuring 8.2 Hardware requirements 8.2.2 Measuring probe connection Connection to SINUMERIK 840D The probe is connected to the SINUMERIK 840D system via the I/O device interface X121 located on the front plate of the NCU module. Figure 8-2 Interfaces, control and display elements on the NCU module Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 609 8.2 Hardware requirements Connection to SINUMERIK 840D sl The probe is connected to the SINUMERIK 840D sl system via the peripheral device interface X121 located on the upper front plate of the NCU module. Various factory-specific message frame types are programmable for the digital inputs/outputs of this interface.
  • Page 610 M5: Measuring 8.2 Hardware requirements Figure 8-3 SINUMERIK 840Di interfaces (PCU 50, MCI board and MCI board extension) Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 611 M5: Measuring 8.2 Hardware requirements I/O device interface X121 The interface connection for a probe is made via the ● I/O device interface 37-pin D-sub plug connector (X121), a maximum of 2 probes can be connected; The 24 V load power supply is also connected by means of this connector. Table 8- 3 Extract from PIN assignment table for X121 front connectors Name...
  • Page 612 M5: Measuring 8.2 Hardware requirements PROFIBUS-DP drives It is possible to operate a distributed probe directly on the PROFIBUS-DP drive for the SINUMERK 840D with an NCU 573.2/3/4. This method is more accurate than NC interpolation of cyclic position values from a centralized probe. The type of measuring function for PROFIBUS-DP drives, e.g., with SIMODRIVE 611 universal, is specified by the following machine data: MD13210 $MN_MEAS_TYPE...
  • Page 613: Channel-Specific Measuring

    M5: Measuring 8.3 Channel-specific measuring Channel-specific measuring 8.3.1 Measuring mode Measuring commands MEAS and MEAW The measuring operation is activated from the part program. A trigger event and a measuring mode are programmed. A distinction is made between two measuring modes: ●...
  • Page 614: Measurement Results

    M5: Measuring 8.3 Channel-specific measuring 8.3.2 Measurement results Read measurement results in PP 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 615: Setting Zeros, Workpiece Measuring And Tool Measuring

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Setting zeros, workpiece measuring and tool measuring 8.4.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 616: Workpiece Measuring

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.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 617 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Table 8- 5 Validity bits for the input values of the variables $AC_MEAS_VALID Input value Description $AA_MEAS_POINT1[axis] 1st measuring point for all channel axes $AA_MEAS_POINT2[axis] 2nd measuring point for all channel axes $AA_MEAS_POINT3[axis] 3rd measuring point for all channel axes $AA_MEAS_POINT4[axis]...
  • Page 618 M5: Measuring 8.4 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 Description REAL $AA_MEAS_POINT1[axis] 1st measuring point for all channel axes REAL $AA_MEAS_POINT2[axis] 2nd measuring point for all channel axes REAL...
  • Page 619 M5: Measuring 8.4 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 8- 6 Input values for the user setpoint values Type System variable Description REAL $AA_MEAS_SETPOINT[ax]...
  • Page 620 M5: Measuring 8.4 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 621 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Value Description 2501 $P_WPFR System frame in data management 2502 $P_TRAFR System frame in data management 2504 $P_CYCFR System frame in data management 2505 $P_RELFR (PCS) System frame in data management 2506 $P_RELFR (ACS) System frame in data management...
  • Page 622 M5: Measuring 8.4 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 623: Measurement Selection

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring The variable $AC_MEAS_TOOL_SCREEN can assume the following values: Value Description 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 624: Output Values

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Value Description 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 Edge_2P...
  • Page 625: Calculation Method

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Type System variable Description 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) 8.4.2.4 Calculation method Activating the calculation The calculation is activated by an HMI operator action with PI service _N_SETUDT. This Pl service can accept one of the following parameter types: Type Description...
  • Page 626 M5: Measuring 8.4 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 627 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring The following return values are output via the pre-defined MEASURE() function: Table 8- 8 Predefined error messages Return values Description 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 628: Units Of Measurement And Measurement Variables For The Calculation

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.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 629: Diagnostics

    M5: Measuring 8.4 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 630: Types Of Workpiece Measurement

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.3 Types of workpiece measurement 8.4.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 8-4 x edge The values of the following variables are evaluated for measurement type 1:...
  • Page 631 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Example x edge measurement 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 632 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 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 8-5 y edge The values of the following variables are evaluated for measurement type 2:...
  • Page 633 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 2: Output variable Description $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 8-6 z edge The values of the following variables are evaluated for measurement type 3:...
  • Page 634: Measurement Of An Angle (Measurement Type 4, 5, 6, 7)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.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 measurement points suffice in the case of known angles of intersection...
  • Page 635 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Input variable Description $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 0: Coarse offset, 1: Fine offset * $AC_MEAS_FRAME_SELECT...
  • Page 636 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring $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 ; Set all input values to invalid g1 x-1 y-3 ;...
  • Page 637: Measurement Of A Hole (Measurement Type 8)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring $P_SETFR = $P_SETFRAME ; Describe system frame in data management g1 x0 y0 ; Approach the corner g1 x10 ; Approach the rectangle 8.4.3.3 Measurement of a hole (measurement type 8) Measuring points for determining a hole ($AC_MEAS_TYPE = 8) Three measuring points are needed to determine the center point and diameter.
  • Page 638 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Input variable Description $AC_MEAS_FINE_TRANS 0: Coarse offset, 1: Fine offset * $AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise specified * $AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified (T0) * $AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified (D0) * $AC_MEAS_TYPE...
  • Page 639 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring g1 x0 y3 ; Approach 2nd measuring point $AA_MEAS_POINT2[x] = $AA_IW[x] $AA_MEAS_POINT2[y] = $AA_IW[y] $AA_MEAS_POINT2[z] = $AA_IW[z] g1 x3 y0 ; Approach 3rd measuring point $AA_MEAS_POINT3[x] = $AA_IW[x] $AA_MEAS_POINT3[y] = $AA_IW[y] $AA_MEAS_POINT3[z] = $AA_IW[z] $AA_MEAS_SETPOINT[x] = 0 ;...
  • Page 640: Measurement Of A Shaft (Measurement Type 9)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.3.4 Measurement of a shaft (measurement type 9) Measuring points for determining a shaft ($AC_MEAS_TYPE = 9) Three measuring points are needed to determine the center point and diameter. The three points must all be different.
  • Page 641: Measurement Of A Groove (Measurement Type 12)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 9: Output variable Meaning $AC_MEAS_FRAME Result frame with translation $AC_MEAS_DIAMETER Diameter of hole $AC_MEAS_RESULTS[0] Abscissa of the calculated center point $AC_MEAS_RESULTS[1] Ordinate of the calculated center point $AC_MEAS_RESULTS[2] Applicate of the calculated center point...
  • Page 642 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Input variable Description $AC_MEAS_INPUT[0] Approach direction for 2nd measuring point for a recess measurement. Must have the same coordinate as the approach direction of the 1st point. * 0: +x, 1: -x, 2: +y, 3: -y, 4: +z, 5: -z $AC_MEAS_TYPE * optional The following output variables are written for measurement type 12:...
  • Page 643 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring g1 x4 ; Approach 2nd measuring point $AA_MEAS_POINT2[x] = $AA_IW[x] $AA_MEAS_POINT2[y] = $AA_IW[y] $AA_MEAS_POINT2[z] = $AA_IW[z] $AA_MEAS_SETPOINT[x] = 0 ; Set setpoint position of the groove center $AA_MEAS_SETPOINT[y] = 0 $AA_MEAS_SETPOINT[z] = 0 $AC_MEAS_DIR_APPROACH = 0 ;...
  • Page 644: Measurement Of A Web (Measurement Type 13)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.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 645: Measurement Of Geo Axes And Special Axes (Measurement Type 14, 15)

    M5: Measuring 8.4 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 8.4.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 646 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring DEF INT RETVAL T1 D1 ; Activate probe ; Activate all frames and G54 TRANS x=10 ; Offset between WCS and ENS G0 x0 f10000 ; WCS(x) = 0; ENS(x) = 10 $AC_MEAS_VALID = 0 ;...
  • Page 647: Measurement Of An Oblique Edge (Measurement Type 16)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring The values of the following variables are evaluated for measurement type 15: Input variable Description $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 648 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Input variable Description $AA_MEAS_POINT2[axis] Measuring point 2 $AA_MEAS_SETANGLE Setpoint angle * $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 Calculated as additive frame unless otherwise specified * $AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified (T0) * $AC_MEAS_D_NUMBER...
  • Page 649: Measurement Of An Oblique Angle In A Plane (Measurement Type 17)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 16: Output variable Description $AC_MEAS_FRAME Result frame with rotation $AC_MEAS_WP_ANGLE Calculated workpiece position angle 8.4.3.9 Measurement of an oblique angle in a plane (measurement type 17) Measurement of an angle in a plane ($AC_MEAS_TYPE = 17) The oblique plane is determined using three measuring points P1, P2 and P3.
  • Page 650 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring The following plane settings are defined for measurement type 17: Axis identifier Abscissa x axis z axis y axis Ordinate y axis x axis z axis Applicate (infeed axis) z axis y axis x axis The values of the following variables are evaluated for measurement type 17:...
  • Page 651 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring ; Activate all frames and G54 $AC_MEAS_VALID = 0 ; Set all input values to invalid $AC_MEAS_TYPE = 17 ; Set measurement type for oblique plane $AC_MEAS_ACT_PLANE = 0 ; Measuring plane is G17 _XX=$P_AXN1 ;...
  • Page 652: Redefine Measurement Around A Wcs Reference Frame (Measurement Type 18)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring setal(61000 + $AC_MEAS_RESULTS[0]) endif if $AC_MEAS_RESULTS[1] <> 4 setal(61000 + $AC_MEAS_RESULTS[1]) endif $P_UIFR[2] = $AC_MEAS_FRAME ; Write measurement frame in data management (G55) G55 G0 AX[_xx]=10 AX[_yy]=10 ; Activate frame and traverse 8.4.3.10 Redefine measurement around a WCS reference frame (measurement type 18) Redefine WCS coordinate system ($AC_MEAS_TYPE = 18)
  • Page 653 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Transformation of measuring frame The results of the calculation, i.e. the solid angles and translation, are entered in measuring frame $AC_MEAS_FRAME. The measuring frame is transformed according to the selected frame in the frame chain.
  • Page 654 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 18: Output variable Description $AC_MEAS_FRAME Result frame with rotations and transformation $AC_MEAS_RESULTS[0] Calculated angle around the abscissa $AC_MEAS_RESULTS[1] Calculated angle around the ordinate $AC_MEAS_RESULTS[2] Calculated angle around the applicate Example...
  • Page 655: Measurement Of A 1-, 2- And 3-Dimensional Setpoint Selection (Measurement Type 19, 20, 21)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring $AA_MEAS_POINT3[_yy] = $AA_MW[_yy] ; Assign measurement value to ordinate $AA_MEAS_POINT3[_zz] = $AA_MW[_zz] ; Assign measurement value to applicate $AA_MEAS_SETPOINT[_xx] = 10 ; Define setpoints for P1 $AA_MEAS_SETPOINT[_yy] = 10 $AA_MEAS_SETPOINT[_zz] = 10 $AC_MEAS_FRAME_SELECT = 102 ;...
  • Page 656 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Input variable Description $AA_MEAS_POINT1[axis] Measuring point 1 for the applicate $AA_MEAS_SETPOINT[axis] Setpoint position of abscissa or ordinate or applicate $AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise specified * $AC_MEAS_FRAME_SELECT Calculated as additive frame unless otherwise specified * $AC_MEAS_FINE_TRANS Unless otherwise specified, frame is written to coarse translation $AC_MEAS_TYPE...
  • Page 657 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 2-dimensional setpoint value ($AC_MEAS_TYPE = 20) Setpoints for two dimensions can be defined using this measuring method. Any combination of 2 out of 3 axes is permissible. If three setpoints are specified, only the values for the abscissa and the ordinate are accepted.
  • Page 658 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring $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] ; Assign measurement value to applicate $AA_MEAS_SETPOINT[_xx] = 10 ;...
  • Page 659: Measurement Of An Oblique Angle (Measurement Type 24)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Example 3-dimensional setpoint selection DEF INT RETVAL DEF REAL _CORMW_XX, _CORMW_YY, _CORMW_ZZ DEF AXIS _XX, _YY, _ZZ T1 D1 ; Activate probe ; Activate all frames and G54 $AC_MEAS_VALID = 0 ;...
  • Page 660 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring The new coordinate system is generated by specifying a desired frame chain. Figure 8-18 Coordinate transformation of a position The values of the following variables are evaluated for measurement type 24: Input variable Description $AC_MEAS_VALID...
  • Page 661 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Example WCS coordinate transformation of a measured position 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 662 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring $AA_MEAS_POINT1[_zz] = $AA_IW[_zz] ; Assign measurement value to applicate $AA_MEAS_POINT1[A] = $AA_IW[A] $AA_MEAS_POINT1[B] = $AA_IW[B] $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) ;...
  • Page 663: Measurement Of A Rectangle (Measurement Type 25)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.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 664: Measurement For Saving Data Management Frames (Measurement Type 26)

    M5: Measuring 8.4 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 665: Measurement For Restoring Backed-Up Data Management Frames (Measurement Type 27)

    M5: Measuring 8.4 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 666: Measurement For Defining An Additive Rotation For Taper Turning (Measurement Type 28)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.3.16 Measurement for defining an additive rotation for taper turning (measurement type 28) Taper turning Additive rotation of plane ($AC_MEAS_TYPE = 28) This measurement type 28 is used via the ManualTurn Advanced user interface for the taper turning application.
  • Page 667: Tool Measuring

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 28: Output variable Description $AC_MEAS_FRAME Result with rotation 8.4.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 668: Types Of Workpiece Measurement

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.5 Types of workpiece measurement 8.4.5.1 Measurement of tool lengths (measurement type 10) Tool length measurement on a reference part that has already been measured ($AC_MEAS_TYPE = 10) The tool length can be measured on a reference part that has already been measured. Depending on the position of the tool, it is possible to select plane G17 for tool position in the z direction, G18 for tool position in the y direction and G19 for tool position in the x direction.
  • Page 669 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 10: Output variable Description $AC_MEAS_TOOL_LENGTH Tool length $AC_MEAS_RESULTS[0] Tool length in x $AC_MEAS_RESULTS[1] Tool length in y $AC_MEAS_RESULTS[2] Tool length in z $AC_MEAS_RESULTS[3] Tool length L1 $AC_MEAS_RESULTS[4]...
  • Page 670: Measurement Of Tool Diameter (Measurement Type 11)

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.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 671: Measurement Of Tool Lengths With Zoom-In Function (Measurement Type 22)

    M5: Measuring 8.4 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 8.4.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 672: Measuring A Tool Length With Stored Or Current Position (Measurement Type 23)

    M5: Measuring 8.4 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 673: Measurement Of A Tool Length Of Two Tools With Orientation

    M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Input variable Description $AC_MEAS_SET_COORD Coordinate system of setpoint * $AC_MEAS_ACT_PLANE Calculated as active plane unless otherwise specified * $AC_MEAS_T_NUMBER Calculated as active T unless otherwise specified (T0) * $AC_MEAS_D_NUMBER Calculated as active D unless otherwise specified (D0) * $AC_MEAS_TOOL_MASK Tool position, radius * $AC_MEAS_DIR_APPROACH...
  • Page 674 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Two turning tools each with their own reference point with a tool orientation in the approach direction In the case of the tool position of two turning tools each with their own reference point, not only are the input variables of measurement type 23 evaluated but also the values of the following input variables: Approach direction and tool orientation +x...
  • Page 675 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Two turning tools with one reference point with a tool position opposite to the orientation In the case of the tool position of two turning tools with one reference point, not only are the input variables of measurement type 23 evaluated but also the values of the following input variables: Approach direction and tool orientation +x...
  • Page 676 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring In the case of the tool position of two turning tools with one reference point, not only are the input variables of measurement type 23 evaluated but also the values of the following input variables: Approach direction and tool orientation +x Approach direction and tool orientation -x...
  • Page 677 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Two milling tools each with their own reference point with a tool orientation in -y direction In the case of the tool position of two milling tools each with their own reference point, not only are the input variables of measurement type 23 evaluated but also the values of the following input variables: Approach direction +x, tool orientation -y...
  • Page 678 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Two milling tools with one reference point with a tool orientation in -y In the case of the tool position of two milling tools with one reference point, not only are the input variables of measurement type 23 evaluated but also the values of the following input variables: Approach direction +x, tool orientation -y...
  • Page 679 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring In the case of the tool position of two milling tools with one reference point, not only are the input variables of measurement type 23 evaluated but also the values of the following input variables: Approach direction +x, tool orientation -y Approach direction -x, tool orientation -y...
  • Page 680 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Two milling tools each with their own reference point with a tool orientation in the approach direction In the case of the tool position of two milling tools each with their own reference point, not only are the input variables of measurement type 23 evaluated but also the values of the following input variables: Approach direction and tool orientation +x...
  • Page 681 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Two milling tools with one reference point with a tool position opposite to the orientation In the case of the tool position of two milling tools with one reference point, not only are the input variables of measurement type 23 evaluated but also the values of the following input variables: Approach direction and tool orientation +x...
  • Page 682 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring In the case of the tool position of two milling tools with one reference point, not only are the input variables of measurement type 23 evaluated but also the values of the following input variables: Approach direction and tool orientation +x Approach direction and tool orientation -x...
  • Page 683 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Randomly oriented tools Figure 8-25 Two turning tools each with their own reference point Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 684 M5: Measuring 8.4 Setting zeros, workpiece measuring and tool measuring Figure 8-26 Two milling tools each with its own reference point Figure 8-27 Two milling tools rotated at 90 degrees each with their own reference point Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 685: Measurement Accuracy And Functional Testing

    M5: Measuring 8.5 Measurement accuracy and functional testing Measurement accuracy and functional testing 8.5.1 Measurement accuracy Accuracy The propagation time of the measuring signal is determined by the hardware used. The delay times when using SIMODRIVE 611D are in the 3.625 μ ... 9.625 μ range plus the reaction time of the probe.
  • Page 686: Examples - Only 840D Sl

    M5: Measuring 8.6 Examples - only 840D sl Examples - only 840D sl 8.6.1 Measuring mode 1 Measurement with one encoder ● One-time measurement ● One probe ● Trigger signals are the rising and falling edges ● Actual value from the current encoder MEASA[X] = (1, 1, -1) G01 X100 F100 STOPRE IF $AC_MEA[1]==FALSE gotof ENDE...
  • Page 687: Measuring Mode 2

    M5: Measuring 8.6 Examples - only 840D sl 8.6.2 Measuring mode 2 ● Two probes ● Trigger signals are the rising and falling edges ● Actual value from the current encoder MEASA[X] = (2, 1, -1, 2, -2) G01 X100 F100 STOPRE IF $AC_MEA[1]==FALSE gotof MESSTASTER2 R10=$AA_MM1[X]...
  • Page 688: Continuous Measurements With Deletion Of Distance-To-Go

    M5: Measuring 8.6 Examples - only 840D sl 8.6.3.2 Continuous measurements with deletion of distance-to-go ● Delete distance-to-go after last measurement ● The measurement is done in measuring mode 1: ● Measurement with 100 values ● One probe ● Trigger signal is the falling edge ●...
  • Page 689: Functional Test And Repeat Accuracy

    M5: Measuring 8.6 Examples - only 840D sl 8.6.4 Functional test and repeat accuracy Function test %_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 690 M5: Measuring 8.6 Examples - only 840D sl 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 ← ; at 1st measurement input when ;...
  • Page 691: Data Lists

    M5: Measuring 8.7 Data lists Data lists 8.7.1 Machine data 8.7.1.1 General machine data Number Identifier: $MN_ Description 13200 MEAS_PROBE_LOW_ACTIVE Switching characteristics of probe 13201 MEAS_PROBE_SOURCE Measurement pulse simulation via digital output 13210 MEAS_TYPE Type of measurement for PROFIBUS DP drives 8.7.1.2 Channel-specific machine data Number...
  • Page 692 M5: Measuring 8.7 Data lists Type System variable name Description $AA_MEAS_P2_VALID[ax] Pick up 2nd measuring point in the WCS $AA_MEAS_P3_VALID[ax] Pick up 3rd measuring point in the WCS $AA_MEAS_P4_VALID[ax] Pick up 4th measuring point in the WCS $AA_MEAS_SP_VALID[ax] Set setpoint position of axis as valid REAL $AC_MEAS_WP_SETANGLE Setpoint workpiece position angle...
  • Page 693: 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 694: Cam Signals And Cam Positions

    N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Cam signals and cam positions 9.2.1 Generation of cam signals for separate output General information Both cam signals can be output to the PLC and to the NCK I/Os. Separate output of the plus and minus cam signals makes it easy to detect whether the axis is within or outside the plus or minus cam range.
  • Page 695 N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Linear axes The switching edges of the cam signals are generated as a function of the axis traversing direction: ● The minus cam signal switches from 1 to 0 when the axis traverses the minus cam in the positive axis direction.
  • Page 696 N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Figure 9-2 Software cams for linear axis (plus cam < minus cam) Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 697 N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Modulo rotary axes The switching edges of the cam signals are generated as a function of the rotary axis traversing direction: ● The plus cam signal switches from 0 to 1 when the axis traverses the minus cam in a positive axis direction and from 1 back to 0 when it traverses the plus cam.
  • Page 698: Generation Of Cam Signals With Gated Output

    N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Figure 9-4 Software cams for modulo rotary axis (plus cam - minus cam > 180 degrees) 9.2.2 Generation of cam signals with gated output General information The plus and minus cam output signals are gated in the case of: ●...
  • Page 699 N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Linear axes Figure 9-5 Position switching signals for linear axis (minus cam < plus cam) Figure 9-6 Position switching signals for linear axis (plus cam < minus cam) Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 700 N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Modulo rotary axis The default signal response for modulo rotary axes is dependent on the cam width: Figure 9-7 Software cams for modulo rotary axis (plus cam - minus cam < 180 degrees) Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 701 N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Figure 9-8 Software cams for modulo rotary axis (plus cam - minus cam > 180°) Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 702: Cam Positions

    N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Suppression of signal inversion Machine data setting: MD10485 SW_CAM_MODE Bit 1=1 can be used to select the suppression of signal inversion for: plus cam - minus cam > 180°. Figure 9-9 Software cams for modulo rotary axis (plus cam - minus cam >...
  • Page 703 N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Note Owing to the grouping of cam pairs (eight in each group), it is possible to assign different access authorization levels (e.g. for machine-related and workpiece-related cam positions). The positions are entered in the machine coordinate system.
  • Page 704: Lead/Delay Times (Dynamic Cam)

    N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Axis/cam assignment A cam pair is assigned to a machine axis using general machine data: MD10450 SW_CAM_ASSIGN_TAB[n] (assign software cams to machine axes). Note Changes to an axis assignment take effect after the next NCK power-up.
  • Page 705 N3: Software cams, position switching cycles - only 840D sl 9.2 Cam signals and cam positions Input in setting data The second lead or delay time is entered in the following general setting data: SD41520 SW_CAM_MINUS_TIME_TAB_1[n] Lead or delay time on minus cams 1 - 8 SD41521 SW_CAM_PLUS_TIME_TAB_1[n] Lead or delay time on plus cams 1 - 8 SD41522 SW_CAM_MINUS_TIME_TAB_2[n]...
  • Page 706: Output Of Cam Signals

    N3: Software cams, position switching cycles - only 840D sl 9.3 Output of cam signals Output of cam signals 9.3.1 Activating The status of the cam (cam signals) can be output to the PLC as well as to the NCK I/Os. Activation of cam signal output The output of cam signals for an axis is activated via axis-specific NC/PLC interface signal:...
  • Page 707: Output Of Cam Signals To Nck I/Os In Position Control Cycle

    N3: Software cams, position switching cycles - only 840D sl 9.3 Output of cam signals Plus cam signals The status of the plus cam signals is entered in the general NC/PLC interface signals: DB10 DBX114.0 to 117.7 (plus cam signals 1 to 32). If no measuring system is selected or NC/PLC interface signal: DB31, ...
  • Page 708: Timer-Controlled Cam Signal Output

    N3: Software cams, position switching cycles - only 840D sl 9.3 Output of cam signals Note It is possible to define one HW byte for the output of eight minus cam signals and one HW byte for the output of eight plus cam signals in each machine data. In addition, the output of the cam signals can be inverted with the two machine data.
  • Page 709 N3: Software cams, position switching cycles - only 840D sl 9.3 Output of cam signals Signal generation The following machine data must be used beforehand to specify how the signals are to be gated: MD10485 SW_CAM_MODE Bit 1 Signal generation Not set Inversion of signal response of plus cam when: plus cam - minus cam ≥...
  • Page 710: Independent, Timer-Controlled Output Of Cam Signals

    N3: Software cams, position switching cycles - only 840D sl 9.3 Output of cam signals Further settings If the response described here is to be applied, bit 0=0 must be set in the following machine data: MD10485 SW_CAM_MODE 9.3.5 Independent, timer-controlled output of cam signals Independent, timer-controlled cam output Each switching edge is output separately per interrupt due to the timer-controlled, independent (of interpolation cycle) cam output.
  • Page 711 N3: Software cams, position switching cycles - only 840D sl 9.3 Output of cam signals Settings The assignment of cam pairs to onboard outputs is controlled by machine data: MD10480 SW_CAM_TIMER_FASTOUT_MASK (screen form for output of cam signals via timer interrupts to NCU). In addition, the general machine data below must be set to explicitly select the mode of operation: MD10485 SW_CAM_MODE Bit0=1...
  • Page 712: Position-Time Cams

    N3: Software cams, position switching cycles - only 840D sl 9.4 Position-time cams Position-time cams Position-time cams The term "position-time cam" refers to a pair of software cams that can supply a pulse of a certain duration at a defined axis position. Solution The position is defined by a pair of software cams.
  • Page 713 N3: Software cams, position switching cycles - only 840D sl 9.4 Position-time cams Settings The following settings must be made to program a position-time cam: ● Position The position must be defined by a cam pair with which the minus cam position is equal to the plus cam position.
  • Page 714: Supplementary Conditions

    N3: Software cams, position switching cycles - only 840D sl 9.5 Supplementary conditions Supplementary conditions Availability of function "Software cams, position switching signals" The function is an option and is available for: ● SINUMERIK 840D with NCU 572/573, SW 2 and higher Extensions ●...
  • Page 715: Data Lists

    N3: Software cams, position switching cycles - only 840D sl 9.6 Data lists Data lists 9.6.1 Machine data 9.6.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 10450 SW_CAM_ASSIGN_TAB[n] Assignment of software cams to machine axes...
  • Page 716: Signals

    41527 SW_CAM_PLUS_TIME_TAB_4[n] Lead or delay time on plus cams 25 -32 9.6.3 Signals 9.6.3.1 Signals to axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D Cam activation DB31, ..DBX2.0 9.6.3.2 Signals from axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D Cams active DB31, ...
  • Page 717: N4: Punching And Nibbling - Only 840D Sl

    N4: Punching and nibbling - only 840D sl 10.1 Brief description 10.1 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. 10.2 Stroke control 10.2...
  • Page 718: High-Speed Signals

    N4: Punching and nibbling - only 840D sl 10.2 Stroke control 10.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 719: Criteria For Stroke Initiation

    N4: Punching and nibbling - only 840D sl 10.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 720 N4: Punching and nibbling - only 840D sl 10.2 Stroke control The following diagram shows the various criteria that can be applied to stroke initiation. Figure 10-2 Signal chart: Criteria for stroke initiation The time interval between t and t is determined by the reaction of the punching unit to setting of output A .
  • Page 721 N4: Punching and nibbling - only 840D sl 10.2 Stroke control Note The initial setting of the G group with G601, G602 and G603 (G group 12) is defined via machine data: MD20150 $MC_GCODE_RESET_VALUES[11] The default setting is G601. G603 Depending on velocity and machine dynamics, approximately 3 - 5 interpolation cycles are processed at the end of interpolation before the axes reach zero speed.
  • Page 722: Axis Start After Punching

    N4: Punching and nibbling - only 840D sl 10.2 Stroke control 10.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 10-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 723: Plc Signals Specific To Punching And Nibbling

    N4: Punching and nibbling - only 840D sl 10.2 Stroke control 10.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 724: Signal Monitoring

    N4: Punching and nibbling - only 840D sl 10.2 Stroke control 10.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 725: Activation And Deactivation

    N4: Punching and nibbling - only 840D sl 10.3 Activation and deactivation 10.3 Activation and deactivation 10.3 10.3.1 Language commands Punching and nibbling functions are activated and deactivated via configurable language commands. These replace the special M functions that were used in earlier systems. References: /PGA/ Programming Manual Job Planning Groups...
  • Page 726 N4: Punching and nibbling - only 840D sl 10.3 Activation and deactivation Note Only one function at a time can be active within a G code group (similar, for example, to the various interpolation modes G0, G1, G2, G3, etc. which are also mutually exclusive). SPOF Punching and nibbling OFF The SPOF function terminates all punching and nibbling functions.
  • Page 727 N4: Punching and nibbling - only 840D sl 10.3 Activation and deactivation N80 X100 SON activate nibbling, initiate a stroke before the motion (X=50) and on completion of the programmed movement (X=100) SONS Nibbling ON (in position control cycle) SONS behaves in the same way as SON. The function is activated in the position control cycle, thus allowing time-optimized stroke initiation and an increase in the punching rate per minute.
  • Page 728 N4: Punching and nibbling - only 840D sl 10.3 Activation and deactivation If the defined value cannot be divided as an integer into the interpolation clock cycle, then it is rounded to the next divisible integer value. The function has a modal action. PDELAYOF Punching with delay OFF PDELAYOF deactivates punching with delay function, i.e.
  • Page 729: Functional Expansions

    N4: Punching and nibbling - only 840D sl 10.3 Activation and deactivation Programming example: N170 SPIF1 X100 PON At the end of the block, a stroke is initiated at the first high-speed output. The "Stroke active" signal is monitored at the first input. N180 X800 SPIF2 The second stroke is initiated at the second high- speed output.
  • Page 730 N4: Punching and nibbling - only 840D sl 10.3 Activation and deactivation Screen form for high-speed input and output bits: First interface output bit MD26004 $MC_NIBBLE_PUNCH_OUTMASK[0] → Bit 1 SPIF1 Second interface output bit MD26004 $MC_NIBBLE_PUNCH_OUTMASK[1] → Bit 2 SPIF2 First interface input bit MD26006 $MC_NIBBLE_PUNCH_INMASK[0] →...
  • Page 731 N4: Punching and nibbling - only 840D sl 10.3 Activation and deactivation Example: There must be a minimum delay of at least 1.3 seconds between two stroke initiations irrespective of physical distance: ⇒ SD42404 $SC_MINTIME_BETWEEN_STROKES = 1.3 [s] If a punching dwell time (PDELAYON) is also programmed, then the two times are applied additively.
  • Page 732 N4: Punching and nibbling - only 840D sl 10.3 Activation and deactivation The characteristic defines the following acceleration rates: Distance Acceleration between holes < 2 mm The axis accelerates at a rate corresponding to 50 % of maximum acceleration. 2 - 10 mm Acceleration is increased to 100 %, proportional to the spacing.
  • Page 733: Compatibility With Earlier Systems

    N4: Punching and nibbling - only 840D sl 10.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 734 N4: Punching and nibbling - only 840D sl 10.3 Activation and deactivation DEFINE M20 AS SPOF PDELAYOF Punching/nibbling OFF and punching with delay OFF DEFINE M22 AS SON Nibbling ON DEFINE M22 AS SON M=22 Nibbling ON with auxiliary function output DEFINE M25 AS PON Punching ON DEFINE M25 AS PON M=25...
  • Page 735: Automatic Path Segmentation

    N4: Punching and nibbling - only 840D sl 10.4 Automatic path segmentation 10.4 Automatic path segmentation 10.4 10.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 SPP ●...
  • Page 736: Operating Characteristics With Path Axes

    N4: Punching and nibbling - only 840D sl 10.4 Automatic path segmentation ● The path segment unit is either mm/stroke or inch/stroke (depending on axis settings). ● If the programmed SPP value is greater than the traversing distance, then the axis is positioned on the programmed end position without path segmentation.
  • Page 737 N4: Punching and nibbling - only 840D sl 10.4 Automatic path segmentation Example of SPP N1 G01 X0 Y0 SPOF ; Position without punch initiation N2 X75 SPP=25 SON Nibble with feed value 25 mm; initiate punch before the first movement and after each path segment. N3 Y10 Position with reduced SPP value, because travel distance <...
  • Page 738 N4: Punching and nibbling - only 840D sl 10.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 10-4...
  • Page 739 N4: Punching and nibbling - only 840D sl 10.4 Automatic path segmentation N3 Y10 SPOF ; Position without punch initiation N4 X0 SPN=2 PON activate punching. The total path is divided into 2 segments. Since punching is active, the first stroke is initiated at the end of the first segment.
  • Page 740 N4: Punching and nibbling - only 840D sl 10.4 Automatic path segmentation Example Figure 10-5 Workpiece Extract from program N100 G90 X130 Y75 F60 SPOF Position at starting point vertical nibbling path sections N110 G91 Y125 SPP=4 SON End point coordinates (incremental); path segment: 4 mm, activate nibbling N120 G90 Y250 SPOF Absolute dimensioning, position at...
  • Page 741: Response In Connection With Single Axes

    N4: Punching and nibbling - only 840D sl 10.4 Automatic path segmentation 10.4.3 Response in connection with single axes MD26016 The path of single axes programmed in addition to path axes is distributed evenly among the generated intermediate blocks as standard. In the following example, the additional rotary axis C is defined as a synchronous axis.
  • Page 742 N4: Punching and nibbling - only 840D sl 10.4 Automatic path segmentation In block N20, the C axis is rotated through 15° in each of the three intermediate blocks. The axis response is the same in block N30, in the case of circular interpolation (three sub- blocks, each with 15°...
  • Page 743 N4: Punching and nibbling - only 840D sl 10.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 744 N4: Punching and nibbling - only 840D sl 10.4 Automatic path segmentation The axis response illustrated in the diagram above can be particularly useful when applied to the axis of a rotatable tool in cases where it is used to place the tool in a defined direction (e.g.
  • Page 745 N4: Punching and nibbling - only 840D sl 10.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 N30 in the above example nor is a stroke initiated at the block end. ●...
  • Page 746: Rotatable Tool

    N4: Punching and nibbling - only 840D sl 10.5 Rotatable tool 10.5 Rotatable tool 10.5 10.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 747: Coupled Motion Of Punch And Die

    N4: Punching and nibbling - only 840D sl 10.5 Rotatable tool 10.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 748: Tangential Control

    N4: Punching and nibbling - only 840D sl 10.5 Rotatable tool 10.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 749 N4: Punching and nibbling - only 840D sl 10.5 Rotatable tool Example: Linear interpolation The punching/nibbling machine has a rotatable punch and die with separate drives. Programming example: N2 TANG (C, X, Y, 1, "B") ; Define master and slave axes, C is slave axis for X and Y in the base coordinate system N5 G0 X10 Y5 ;...
  • Page 750 N4: Punching and nibbling - only 840D sl 10.5 Rotatable tool Figure 10-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: N2 TANG (C, X, Y, 1, "B") ;...
  • Page 751 N4: Punching and nibbling - only 840D sl 10.5 Rotatable tool N17 TANGON (C, 90) ; Activate tangential control with offset 90° N20 G03 X35,86 Y24,14 CR=20 SPP=16 SON ; Circular interpolation, path segmentation, 4 strokes are executed with 90° offset angle and tangential alignment along circular path N25 G0 X74,14 Y35,86 C0 PON...
  • Page 752 N4: Punching and nibbling - only 840D sl 10.5 Rotatable tool Figure 10-8 Illustration of programming example in XY plane Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 753: Protection Zones

    N4: Punching and nibbling - only 840D sl 10.6 Protection zones 10.6 Protection zones 10.6 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 754: Examples

    N4: Punching and nibbling - only 840D sl 10.8 Examples 10.8 Examples 10.8 10.8.1 Examples of defined start of nibbling operation Example 1 Example of defined start of nibbling operation N10 G0 X20 Y120 SPP= 20 Position 1 is approached N20 X120 SON Defined start of nibbling, first stroke at "1", last stroke at "2"...
  • Page 755 N4: Punching and nibbling - only 840D sl 10.8 Examples Example 2 This example utilizes the "Tangential control" function. Z has been selected as the name of the tangential axis. N5 TANG (Z, X, Y, 1, "B") Define tangential axis N8 TANGON (Z, 0) Select tangential control N10 G0 X20 Y120...
  • Page 756 N4: Punching and nibbling - only 840D sl 10.8 Examples Examples 3 and 4 for defined start of nibbling Example 3: Programming of SPP N5 G0 X10 Y10 Position N10 X90 SPP=20 SON Defined start of nibbling, 5 punch initiations N20 X10 Y30 SPP=0 One punch is initiated at end of path N30 X90 SPP=20...
  • Page 757 N4: Punching and nibbling - only 840D sl 10.8 Examples Figure 10-9 Examples 3 and 4 for defined start of nibbling Examples 5 and 6 without defined start of nibbling Example 5: Programming of SPP N5 G0 X10 Y30 Position N10 X90 SPP=20 PON No defined start of nibbling, 4 punches initiated N15 Y10...
  • Page 758 N4: Punching and nibbling - only 840D sl 10.8 Examples Figure 10-10 Examples 5 and 6 without defined start of nibbling Example 7: Application example of SPP programming Figure 10-11 Workpiece Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 759 N4: Punching and nibbling - only 840D sl 10.8 Examples Extract from program: N100 G90 X75 Y75 F60 PON Position at starting point 1 of vertical line of holes, punch one hole N110 G91 Y125 SPP=25 PON End point coordinates (incremental), path segment: 25 mm, activate punching N120 G90 X150 SPOF Absolute dimensioning, position at starting...
  • Page 760: Data Lists

    N4: Punching and nibbling - only 840D sl 10.9 Data lists 10.9 Data lists 10.9 10.9.1 Machine data 10.9.1.1 General machine data Number Identifier: $MN_ Description 11450 SEARCH_RUN_MODE Block search parameter settings 10.9.1.2 Channel-specific machine data Number Identifier: $MC_ Description 20150 GCODE_RESET_VALUES[n] Reset G groups...
  • Page 761: Signals

    N4: Punching and nibbling - only 840D sl 10.9 Data lists 10.9.3 Signals 10.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 762 N4: Punching and nibbling - only 840D sl 10.9 Data lists Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 763: P2: Positioning Axes

    P2: Positioning axes 11.1 Brief description 11.1 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 764 P2: Positioning axes 11.1 Brief description 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 765 P2: Positioning axes 11.1 Brief description Motions and interpolations Each channel has one path interpolator and at least one axis interpolator with the following interpolation functions: ● With a path interpolator: Linear interpolation (G1), circular interpolation (G2/G3), spline interpolation, etc. ●...
  • Page 766: Own Channel, Positioning Axis Or Concurrent Positioning Axis

    P2: Positioning axes 11.2 Own channel, positioning axis or concurrent positioning axis 11.2 Own channel, positioning axis or concurrent positioning axis 11.2 When axes are provided for auxiliary movements on a machine tool, the required properties will decide whether the axis is to be: ●...
  • Page 767: Positioning Axis (Posaxis)

    P2: Positioning axes 11.2 Own channel, positioning axis or concurrent positioning axis 11.2.2 Positioning axis (posAxis) Positioning axes are programmed together with path axes, i.e. with the axes that are responsible for workpiece machining. Instructions for both positioning axes and path axes can be included in the same NC block. Although they are programmed in the same NC block, the path and positioning axes are not interpolated together and do not reach their end point simultaneously (no direct time relationship, see also Section "Motion behavior and interpolation functions").
  • Page 768 P2: Positioning axes 11.2 Own channel, positioning axis or concurrent positioning axis Traverse path axes in G0 as positioning axis Each path axis can be traversed as positioning axis in rapid traverse movement (G0). Thus all axes travel to their endpoint independently. In this way, two sequentially programmed X and Z axes are treated like positioning axes in conjunction with G0.
  • Page 769: Concurrent Positioning Axis

    P2: Positioning axes 11.2 Own channel, positioning axis or concurrent positioning axis ● The last block with a programmed end-of-motion criterion that was processed in the search run serves as a container for setting all axes. ● Group 1 (modal movement commands) of the G functions G0, G1, G2, ...) does not apply to positioning axes.
  • Page 770 11.2 Own channel, positioning axis or concurrent positioning axis Activation from PLC For SINUMERIK 840D sl, the concurrent positioning axis is activated via FC 18 from the PLC. ● Feedrate For feedrate = 0, the feedrate is determined from the following machine data: MD32060 $MA_POS_AX_VELO (initial setting for positioning axis velocity) ●...
  • Page 771: Motion Behavior And Interpolation Functions

    P2: Positioning axes 11.3 Motion behavior and interpolation functions 11.3 Motion behavior and interpolation functions 11.3 11.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 (G1), circular interpolation (G2/G3), spline interpolation etc.
  • Page 772 P2: Positioning axes 11.3 Motion behavior and interpolation functions Linear interpolation is always performed in the following cases: ● For a G-code combination with G0 that does not allow positioning axis motion, e.g.: G40, G41, G42, G96, G961 and MD20750 $MC_ALLOW_G0_IN_G96 == FALSE ●...
  • Page 773: Autonomous Single-Axis Operations

    P2: Positioning axes 11.3 Motion behavior and interpolation functions Value Description In the rapid traversing mode (G0) the non-linear interpolation is active. Path axes are traversed as positioning axes. In the rapid traversing mode (G0) the linear interpolation is active. The path axes are interpolated together.
  • Page 774 P2: Positioning axes 11.3 Motion behavior and interpolation functions Sequence coordinator The sequence of autonomous single-axis functions with the respective transfers is represented in a so-called "Use Case" overview: NCK controls: PLC wants to accept control of the axis/spindle Use Case 1: Cancel operation of axis/spindle Use Case 2: Stop axis/spindle Use Case 3: Resume axis/spindle motion Use Case 4: Reset axis/spindle...
  • Page 775 P2: Positioning axes 11.3 Motion behavior and interpolation functions Alternatives The channel status is "interrupted" because a channel stop signal is active. The axis is handled analogously to the sequence description. The following two alternatives are possible depending on the status of the axis to be controlled: ●...
  • Page 776 P2: Positioning axes 11.3 Motion behavior and interpolation functions 4. NCK executes an axial RESET in accordance with use case 4 "Reset axis/spindle" by reading and activating the required reset machine data for RESET for a single axis. 5. NCK confirms the takeover and transfers the axis status to the PLC via the axial VDI interface with the NC/PLC-interface signals: DB31, ...
  • Page 777 P2: Positioning axes 11.3 Motion behavior and interpolation functions ● Resume axis/spindle: DB31, ... DBX28.2 (AXRESUME) ● Reset axis/spindle: DB31, ... DBX28.1 (AXRESET) Note The axis/spindle must be operating under PLC control. This supplementary condition basically applies to all applications: Use cases 1 to 4. The exchange of signals at the VDI interface during autonomous single operations is described by means of machine axis 1 in a comparison of PLC actions as the NCK reaction in Section "Control by the PLC".
  • Page 778 P2: Positioning axes 11.3 Motion behavior and interpolation functions Description of operational sequence: ● PLC requests the NCK to stop the relevant axis with NST: DB31, ... DBX28.6 ("AxStop, stop") == 1. ● NCK brakes the axis along a ramp. ●...
  • Page 779 P2: Positioning axes 11.3 Motion behavior and interpolation functions Marginal conditions The PLC must already have accepted control of the axis/spindle. Else, the following NC/PLC-interface signal is ignored: NST DB31, ... DBX28.6 (AxStop, stop) Use Case 3 Resume axis/spindle motion The axis/spindle motions controlled by the main run and interrupted according to use case 2 "Stop axis"...
  • Page 780 P2: Positioning axes 11.3 Motion behavior and interpolation functions Use Case 4 Reset axis/spindle An axis/spindle is reset to its initial state. Description of operational sequence: ● PLC requests the NCK to reset motion on the relevant axis with NST: DB31, ...
  • Page 781: Autonomous Single-Axis Functions With Nc-Controlled Esr

    P2: Positioning axes 11.3 Motion behavior and interpolation functions 11.3.4 Autonomous single-axis functions with NC-controlled ESR Extended stop numerically controlled The numerically controlled extended stop and retract function is also available for single axes and is configurable with axial machine data: Delay time for ESR single axis with MD37510 $MA_AX_ESR_DELAY_TIME1 ESR time for interpolatory braking of the single axis with...
  • Page 782 P2: Positioning axes 11.3 Motion behavior and interpolation functions Examples Extended stopping of a single axis: MD37500 $MA_ESR_REACTION[AX1]=22 MD37510 $MA_AX_ESR_DELAY_TIME1[AX1]=0.3 MD37511 $MA_AX_ESR_DELAY_TIME2[AX1]=0.06 $AA_ESR_ENABLE[AX1] = 1 $AA_ESR_TRIGGER[AX1]=1 ; axis begins stop process here Extended retraction of a single axis: MD37500 $MA_ESR_REACTION[AX1]=21 $AA_ESR_ENABLE[AX1] = 1 POLFA(AX1, 1, 20.0);...
  • Page 783: Velocity

    P2: Positioning axes 11.4 Velocity 11.4 Velocity 11.4 The axis-specific velocity limits and acceleration limits are valid for positioning axes. Feed override The path and positioning axes have separate feedrate overrides. Each positioning axis can be adjusted by its own axis-specific feed override. Rapid traverse override Rapid traverse override applies only to path axes.
  • Page 784: Programming

    P2: Positioning axes 11.5 Programming 11.5 Programming 11.5 11.5.1 General Note For the programming of position axes, please observe the following documentation: References: Programming Manual Fundamentals; Chapter: "feed rate control" and "spindle motion" Note The maximum number of positioning axes that can be programmed in a block is limited to the maximum number of available channel axes.
  • Page 785 P2: Positioning axes 11.5 Programming Programming in synchronized action Axes can be positioned completely asynchronously to the part program from synchronized actions. Example: Program code Comment ID=1 WHENEVER $R==1 DO POS[Q4]=10 FA[Q3]=990 ; The axial feedrate is specified permanently. References: Programming Manual, Job Planning;...
  • Page 786 P2: Positioning axes 11.5 Programming Reprogram type 2 positioning axes With type 2 positioning axes (motion across block limits), you need to be able to detect in the part program whether the positioning axis has reached its end position. Only then is it possible to reprogram this positioning axis (otherwise an alarm is issued).
  • Page 787: Revolutional Feed Rate In External Programming

    P2: Positioning axes 11.5 Programming 11.5.2 Revolutional feed rate in external programming The two following setting data can be used to specify that the revolutional feed rate of a positioning axis should be derived from another rotary axis/spindle: SD43300 $SA_ASSIGN_FEED_PER_REV_SOURCE(revolutional feed rate for position axes/spindles) SD42600 JOG_FEED_PER_REV_SOURCE (control of revolutional feed rate in JOG) The following settings are possible:...
  • Page 788: Block Change

    P2: Positioning axes 11.6 Block change 11.6 Block change 11.6 Positioning axes can be programmed in the NC block individually or in combination with path axes. Path axes and positioning axes are always interpolated separately (path interpolator and axis interpolators) and this causes them to reach their programmed end positions at different times.
  • Page 789 P2: Positioning axes 11.6 Block change Properties of type 1 positioning axis With SW 5 and lower, type 1 positioning axes have the following behavior: ● The block change occurs (NC block finished) when all the path and positioning axes have reached the respective end-of-motion criterion.
  • Page 790 P2: Positioning axes 11.6 Block change Positioning axis type 2 Block change at programmed end point of all path axes Figure 11-2 Block change with positioning axis type 2, example of sequence Properties of type 2 positioning axis With SW 5 and lower, type 2 positioning axes have the following behavior: ●...
  • Page 791: Settable Block Change Time

    P2: Positioning axes 11.6 Block change ● Programming with POSA[Name] = end point FA[Name] = feed or abbreviated with POSA[Name] = end point in which case the feed is determined by the setting in MD32060 $MA_POS_AX_VELO. ● The programmed instruction is effective on a non-modal basis. The geometry and synchronous axes are separated with the instructions from the path axis grouping and traversed at an axis-specific velocity.
  • Page 792 P2: Positioning axes 11.6 Block change Properties of type 3 positioning axis With type 3 positioning axes the end-of-motion criterion can be programmed with FINEA, COARSEA or IPOENDA. The block change condition can be set within the braking ramp of the single-axis interpolation.
  • Page 793 P2: Positioning axes 11.6 Block change Reciprocating axes Reciprocating axes always brake at their reversal position and then move in the opposite direction. Therefore, reciprocating axes do not require an expansion. Note The behavior of PLC axes at block changes is described in Section "Control by the PLC". For further information about block changes with programmed end-of-motion criteria FINEA, COARESA and IPOENDA, please refer to: References:...
  • Page 794 P2: Positioning axes 11.6 Block change Advantages of the percent setting Setting SD43600 in percent offers the following advantages: ● The block change condition is not dependent on a position and is therefore dependent on the override set. ● Maximum override will result in the greatest smoothing deviation. ●...
  • Page 795 P2: Positioning axes 11.6 Block change Activation and deactivation End-of-motion criterion IPOBRKA and precise time of activation. For part program execution: ● The braking ramp end-of-motion criterion can be activated via the NC command IPOBRKA. ● The precise time of activation is defined in setting data SD43600 $SA_IPOBRAKE_BLOCK_EXCHANGE ●...
  • Page 796 P2: Positioning axes 11.6 Block change N50 POS[X]=0 ; the X axis brakes and traverses back ; to position 0, the block change ; takes place at position 0 exact stop fine N60 X10 F100 N70 M30 At direction reversal (N50), the axis first brakes to reach the target position, before it can be traversed in the opposite direction.
  • Page 797 P2: Positioning axes 11.6 Block change N50 POS[X]=0 ; the X axis brakes and traverses back ; to position 0 ; the block change occurs at ; position 0 exact stop fine N60 X10 F100 N70 M30 At direction reversal (N50), the axis first brakes to reach the target position, before it can be traversed in the opposite direction.
  • Page 798: End Of Motion Criterion With Block Search

    P2: Positioning axes 11.6 Block change 11.6.2 End of motion criterion with block search Last block serves as container The last end-of-motion criterion programmed for an axis is collected and output in an action block. The last block with a programmed motion end condition that was processed in the search run serves as a container for setting all axes.
  • Page 799: Control By The Plc

    PLC axes are traversed from the PLC and can move asynchronously to all other axes. The travel motions are executed separate from the path and synchronized actions. Reference: Function Manual Basic Functions; "Basic PLC Program for SINUMERIK 840D sl" (P3) or "PLC for SINUMERIK 828D" (P4) Concurrent positioning axes Using function block FC18, for SINUMERIK 840D sl concurrent positioning axes can be started from the PLC.
  • Page 800 P2: Positioning axes 11.7 Control by the PLC ● Bit 6 = 1 The channel-specific NC/PLC interface signal: DB21, ... DBX6.0 ("feed disable") is not active for the axis if this is a PLC-controlled axis. ● Bit 7= 1 The channel-specific NC/PLC interface signal: DB21, ...
  • Page 801: Starting Concurrent Positioning Axes From The Plc

    P2: Positioning axes 11.7 Control by the PLC 11.7.1 Starting concurrent positioning axes from the PLC Activation from PLC When concurrent positioning axes are activated from the PLC, FC18 is called and supplied with the following parameter data: ● Axis name or axis number ●...
  • Page 802 P2: Positioning axes 11.7 Control by the PLC Examples of NCK reactions PLC actions are shown as NCK reactions in the table below. PLC actions NCK reaction Start machine axis 1, residing in 1st channel, as PLC axis via FC 18 Trigger IS DB21, ...
  • Page 803: Control Response Of Plc-Controlled Axes

    P2: Positioning axes 11.7 Control by the PLC 11.7.3 Control response of PLC-controlled axes Response to channel reset, NEWCONFIG, block search and MD30460 Control response to PLC-controlled axis Mode change and NC program control work independently of axis. Channel RESET No axial machine data are effective and a traversing movement is not aborted.
  • Page 804: Response With Special Functions

    P2: Positioning axes 11.8 Response with special functions 11.8 Response with special functions 11.8 11.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 805: Examples

    P2: Positioning axes 11.9 Examples 11.9 Examples 11.9 11.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 806: Traversing Path Axes Without Interpolation With G0

    P2: Positioning axes 11.9 Examples 11.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): ; activation of nonlinear ; interpolation ; MD20730 $MC_GO_LINEAR_MODE == FALSE ;...
  • Page 807: Data Lists

    IPOBRAKE_BLOCK_EXCHANGE Braking ramp block change condition 43610 ADISPOSA_VALUE Braking ramp tolerance window 11.10.3 Signals 11.10.3.1 Signals to channel Signal name SINUMERIK 840D sl SINUMERIK 828D Feed disable DB21, ..DBX6.0 DB3200.DBX6.0 NC Start DB21, ..DBX7.1 DB3200.DBX7.1 Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 808: 11.10.3.2 Signals From Channel

    P2: Positioning axes 11.10 Data lists Signal name SINUMERIK 840D sl SINUMERIK 828D NC stop axes plus spindle DB21, ..DBX7.4 DB3200.DBX7.4 Reset DB21, ..DBX7.7 11.10.3.2 Signals from channel Signal name SINUMERIK 840D sl SINUMERIK 828D All axes stationary DB21, ...
  • Page 809: P5: Oscillation - Only 840D Sl

    P5: Oscillation - only 840D sl 12.1 Brief description 12.1 Definition When the "Oscillation" function is selected, an oscillation axis oscillates backwards and forwards at the programmed feedrate or a derived feedrate (revolutional feedrate) between two reversal points. Several oscillation axes can be active at the same time. Oscillation variants Oscillation functions can be classified according to the axis response at reversal points and with respect to infeed:...
  • Page 810 P5: Oscillation - only 840D sl 12.1 Brief description Control methods Oscillation movements can be controlled by various methods: ● The oscillation movement and/or infeed can be interrupted by delete distance-to-go. ● The reversal points can be altered via NC program, PLC, HMI, handwheel or directional keys.
  • Page 811: Asynchronous Oscillation

    P5: Oscillation - only 840D sl 12.2 Asynchronous oscillation 12.2 Asynchronous oscillation 12.2 Characteristics The characteristics of asynchronous oscillation are as follows: ● The oscillation axis oscillates backwards and forwards between reversal points at the specified feedrate until the oscillation movement is deactivated or until there is an appropriate response to a supplementary condition.
  • Page 812: Influences On Asynchronous Oscillation

    P5: Oscillation - only 840D sl 12.2 Asynchronous oscillation 12.2.1 Influences on asynchronous oscillation Setting data The setting data required for oscillation can be set with special language commands in the NCK parts program, via the HMI and/or the PLC. Feedrate The feed velocity for the oscillation axis is selected or programmed as follows: ●...
  • Page 813 P5: Oscillation - only 840D sl 12.2 Asynchronous oscillation The following applies to alteration of a reversal point position: When an oscillation movement is already in progress, the altered position of a reversal point does not become effective until this point is approached again. If the axis is already approaching the position, the correction will take effect in the next oscillation stroke.
  • Page 814 P5: Oscillation - only 840D sl 12.2 Asynchronous oscillation On switchover from asynchronous oscillation to spark-out and during spark-out, the response at the reversal point regarding exact stop corresponds to the response determined by the stop time programmed for the appropriate reversal point. A sparking-out stroke is the movement towards the other reversal point and back.
  • Page 815 P5: Oscillation - only 840D sl 12.2 Asynchronous oscillation NC language The NC programming language allows asynchronous oscillation to be controlled from the parts program. The following functions allow asynchronous oscillation to be activated and controlled as a function of NC program execution. Note If the setting data are directly written in the parts program, then the data change takes effect prematurely with respect to processing of the parts program (at the preprocessing time).
  • Page 816 P5: Oscillation - only 840D sl 12.2 Asynchronous oscillation 4) Stopping times at reversal points: ● OST1[oscillation axis] = stop time at reversal point 1 in [s] ● OST2[oscillation axis] = stop time at reversal point 2 in [s] A stop time is entered into the appropriate setting data in synchronism with the block in the main run and thus remains effective until the setting data is next changed.
  • Page 817 P5: Oscillation - only 840D sl 12.2 Asynchronous oscillation Note The option values 0-3 encode the behavior at reversal points at Power OFF. You can choose one of the alternatives 0-3. The other settings can be combined with the selected alternative according to individual requirements.
  • Page 818: Asynchronous Oscillation Under Plc Control

    P5: Oscillation - only 840D sl 12.2 Asynchronous oscillation If a non-modal oscillation process does not require an infeed motion if the start position coincides with reversal position 1, this option can be configured with another synchronized action, see examples in the chapter "Non-modal oscillation (starting position = reversal point 1)". Programming example The "Examples"...
  • Page 819: Special Reactions During Asynchronous Oscillation

    P5: Oscillation - only 840D sl 12.2 Asynchronous oscillation 12.2.3 Special reactions during asynchronous oscillation With PLC control The PLC program can take over the control of an oscillation axis via VDI signals. These VDI signals also include program end, operating mode changeover and single block. The following VDI interface signals are ignored in SW 6.2 and earlier: Feed/spindle stop and NC-STOP;...
  • Page 820 P5: Oscillation - only 840D sl 12.2 Asynchronous oscillation Reset The oscillation movement is interrupted and deselected with a braking ramp. The options selected subsequently are not processed (sparking-out strokes, end point approach). Working area limitation, limit switches If it is detected during preprocessing that the oscillation movement would violate an active limitation, then an alarm is output and the oscillation movement not started.
  • Page 821 P5: Oscillation - only 840D sl 12.2 Asynchronous oscillation Single-block processing If the axis is not controlled by the PLC, then it responds to a single block in the same way as a positioning axis (POSA), i.e. it continues the movement. Override The override is specified by the: VDI interface...
  • Page 822: Oscillation Controlled By Synchronized Actions

    P5: Oscillation - only 840D sl 12.3 Oscillation controlled by synchronized actions 12.3 Oscillation controlled by synchronized actions 12.3 General procedure An asynchronous oscillation movement is coupled via synchronized actions with an infeed motion and controlled accordingly. References: /FBSY/ Function Manual, Synchronized Actions The following description concentrates solely on the motion-synchronous actions associated with the oscillation function.
  • Page 823 P5: Oscillation - only 840D sl 12.3 Oscillation controlled by synchronized actions Programming The parameters governing oscillation (see Chapter "Assigning Oscillation and Infeed Axis OSCILL") must be defined before the movement block containing the assignment between the infeed and oscillation axes (see ), the infeed definition (POSP) and the motion- synchronous actions: The oscillation axis is enabled via a WAITP [oscillation axis] (see MD30552 $MA_AUTO_GET_TYPE), allowing the oscillation parameters to be transferred, i.e.
  • Page 824 P5: Oscillation - only 840D sl 12.3 Oscillation controlled by synchronized actions Example 1 Oscillation, reversal position firmly set via setting data: $SA_OSCILL_REVERSE_POS1[Z]=-10 $SA_OSCILL_REVERSE_POS2[Z]=10 G0 X0 Z0 WAITP(Z) ID=1 WHENEVER $AA_IM[Z] < $SA_OSCILL_REVERSE_POS1[Z] DO $AA_OVR[X]=0 ID=2 WHENEVER $AA_IM[Z] > $SA_OSCILL_REVERSE_POS2[Z] DO $AA_OVR[X]=0 ;...
  • Page 825: Infeed At Reversal Point 1 Or 2

    P5: Oscillation - only 840D sl 12.3 Oscillation controlled by synchronized actions 12.3.1 Infeed at reversal point 1 or 2 Function As long as the oscillation axis has not reached the reversal point, the infeed axis does not move. Application Direct infeed in reversal point Programming For reversal point 1:...
  • Page 826: Infeed In Reversal Point Range

    P5: Oscillation - only 840D sl 12.3 Oscillation controlled by synchronized actions 12.3.2 Infeed in reversal point range Function Reversal point range 1: No infeed takes place provided the oscillation axis has not reached the reversal point range (position at reversal point 1 plus contents of variables ii1). This applies on the condition that reversal point 1 is set to a lower value than reversal point 2.
  • Page 827: Infeed At Both Reversal Points

    P5: Oscillation - only 840D sl 12.3 Oscillation controlled by synchronized actions Programming Reversal point range 2: WHENEVER $AA_IM[Z] < $SA_OSCILL_REVERSE_POS2[Z] - ii2 DO $AA_OVR[X] = 0 Explanation: $AA_IM[Z]: Current position of oscillating axis Z $SA_OSCILL_REVERSE_POS2[Z]: Position of reversal point 2 of the oscillation axis $AA_OVR[X]: Axial override of the infeed axis ii2: Magnitude of reversal range 2 (user variable) Infeed...
  • Page 828: Stop Oscillation Movement At The Reversal Point

    P5: Oscillation - only 840D sl 12.3 Oscillation controlled by synchronized actions 12.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 829: Oscillation Movement Restarting

    P5: Oscillation - only 840D sl 12.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 12.3.5...
  • Page 830: Do Not Start Partial Infeed Too Early

    P5: Oscillation - only 840D sl 12.3 Oscillation controlled by synchronized actions 12.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 831: Assignment Of Oscillation And Infeed Axes Oscill

    P5: Oscillation - only 840D sl 12.3 Oscillation controlled by synchronized actions 12.3.7 Assignment of oscillation and infeed axes OSCILL Function One or several infeed axes are assigned to the oscillation axis with command OSCILL. Oscillation motion starts. The PLC is informed of which axes have been assigned via the VDI interface. If the PLC is controlling the oscillation axis, it must now also monitor the infeed axes and use the signals for the infeed axes to generate the reactions on the oscillation axis via 2 stop bits of the interface.
  • Page 832: External Oscillation Reversal

    P5: Oscillation - only 840D sl 12.3 Oscillation controlled by synchronized actions Programming POSP[infeed axis] = (end position, part section, mode) End position: End position for the infeed axis after all partial infeeds have been traversed. Part section: Part infeed at reversal point/reversal point range Mode 0: For the last two part steps, the remaining path up to the target point is divided into two equally large residual steps (default setting).
  • Page 833 P5: Oscillation - only 840D sl 12.3 Oscillation controlled by synchronized actions System variables The braking position can be scanned via system variable $AA_OSCILL_BREAK_POS1, when approach to reversal position 1 is aborted or via $AA_OSCILL_BREAK_POS2 when approach to reversal position 2 is aborted. If the relevant reversal point is approached again, the position of the reversal point can be scanned in $AA_OSCILL_BREAK_POS1 or $AA_OSCILL_BREAK_POS2.
  • Page 834: Marginal Conditions

    P5: Oscillation - only 840D sl 12.4 Marginal conditions 12.4 Marginal conditions 12.4 Availability of the "Oscillation" function Oscillation is an option, available under order number 6FC5 251-0AB04-0AA0. Asynchronous oscillation and oscillation across blocks is available for NCU570, 571, 572, 573. Oscillation with motion-synchronous actions is available for NCU 572, 573.
  • Page 835: Example 1 Of Oscillation With Synchronized Actions

    P5: Oscillation - only 840D sl 12.5 Examples Figure 12-2 Sequences of oscillation movements and infeed, example 1 12.5.2 Example 1 of oscillation with synchronized actions Exercise Direct infeed must take place at reversal point 1; the oscillation axis must wait until the part infeed has been executed before it can continue traversal.
  • Page 836 P5: Oscillation - only 840D sl 12.5 Examples OSE[Z]=0 ; End position = 0; WAITP(Z) ; enable oscillation for Z axis ; motion-synchronous actions ; always, when the current position of the oscillating axis in the MCS ; not equal to reversal position 1 ;...
  • Page 837 P5: Oscillation - only 840D sl 12.5 Examples ; equal to ; then set the axial override of the infeed axis to 0%; this prevents premature infeed (oscillation axis has not left reversal range 2 yet) ; and set the axial override of the oscillation axis to 100% ('Start' oscillation) WHENEVER $AC_MARKER[1]==1 DO $AA_OVR[X]=0 $AA_OVR[Z]=100 ;...
  • Page 838: Example 2 Of Oscillation With Synchronized Actions

    P5: Oscillation - only 840D sl 12.5 Examples 12.5.3 Example 2 of oscillation with synchronized actions Exercise No infeed must take place at reversal point 1. At reversal point 2, the infeed must take place at distance ii2 from reversal point 2; the oscillation axis must wait at this reversal point until part infeed has been executed.
  • Page 839 P5: Oscillation - only 840D sl 12.5 Examples WHENEVER $AA_DTEPW[X] == 0 DO $AC_MARKER[0]=1 ; always, when the flag with index 0 is ; equal to ; then set the axial override of infeed axis X to 0% in order to inhibit premature infeed (oscillating axis has not yet left reversal area 2 but infeed axis is ready for a new infeed)
  • Page 840: Examples For Starting Position

    P5: Oscillation - only 840D sl 12.5 Examples 12.5.4 Examples for starting position 12.5.4.1 Define starting position via language command WAITP(Z) ; enable oscillation for Z axis OSP1[Z]=10 OSP2[Z]=60 ; explain reversal points 1 and 2 OST1[Z]=-2 OST2[Z]=0 ; Reversal point 1: Without exact stop ;...
  • Page 841: Non-Modal Oscillation (Starting Position = Reversal Point 1)

    P5: Oscillation - only 840D sl 12.5 Examples STOPRE X30 F100 $SA_OSCILL_IS_ACTIVE[ Z ] = 0 ; stop WAITP(Z) Description When the Z axis starts oscillation, it first approaches the starting position (position = -50 in the example) and then begins the oscillation motion between the reversal points -10 and 30. When the X axis has reached its end position 30, the oscillation finishes at the next approached reversal point.
  • Page 842 P5: Oscillation - only 840D sl 12.5 Examples ; always, when the current position of the oscillation axis is smaller than the beginning of reversal range 2, ; then set the axial override of the infeed axis to 0 and set the marker with index 0 to 0 WHENEVER $AA_IW[Z]<$SA_OSCILL_REVERSE_POS2[Z]-6 DO $AA_OVR[X]=0 $AC_MARKER[0]=0 ;...
  • Page 843: Example Of External Oscillation Reversal

    P5: Oscillation - only 840D sl 12.5 Examples ; must add up to the end position. N780 WAITP(Z) ; release the Z axis N790 X0 Z0 N799 M30 ; End of program Description The starting position matches reversal point 1. The synchronous actions WHEN ... (see above) prevent an infeed when the starting position is reached.
  • Page 844: Data Lists

    Position that is approached after oscillation before reversal point 1, if activated in SD43770: 12.6.3 Signals 12.6.3.1 Signals to axis/spindle Signal name SINUMERIK 840D sl SINUMERIK 828D External oscillation reversal DB31, ..DBX28.0 Set reversal point DB31, ..DBX28.3 Alter reversal point DB31, ...
  • Page 845: Signals From Axis/Spindle

    P5: Oscillation - only 840D sl 12.6 Data lists Signal name SINUMERIK 840D sl SINUMERIK 828D Stop at next reversal point DB31, ..DBX28.5 Stop along braking ramp DB31, ..DBX28.6 PLC-controlled axis DB31, ..DBX28.7 12.6.3.2 Signals from axis/spindle...
  • Page 846 P5: Oscillation - only 840D sl 12.6 Data lists $AC_TIME Time from the start of the block (real) in seconds (including the times for the internally generated intermediate blocks) $AC_TIMES Time from the start of the block (real) in seconds (without times for the internally generated intermediate blocks) $AC_TIMEC...
  • Page 847 P5: Oscillation - only 840D sl 12.6 Data lists $AC_PATHN (Path parameter normalized) (real) Normalized path parameter: 0 for beginning of block to 1 for end of block $AA_LOAD[<axial expression>] Drive utilization (for 611D only) $AA_POWER[<axial expression>] Drive effective power in W (for 611D only) $AA_TORQUE[<axial expression>] Drive torque setpoint in Nm (for 611D only) $AA_CURR[<axial expression>]...
  • Page 848 P5: Oscillation - only 840D sl 12.6 Data lists Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 849: R2: Rotary Axes

    R2: Rotary axes 13.1 Brief description 13.1 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. A typical example of an application using rotary axes is the 5-axis milling machine. Only with the aid of rotary axes can the tip of the tool be positioned on any point on the workpiece on this type of machine.
  • Page 850 R2: Rotary axes 13.1 Brief description Types of rotary axis Depending on the application, the operating range of a rotary axis can be unlimited (endlessly rotating in both directions [MD30310 $MA_ROT_IS_MODULE = 1]), limited by a software limit switch (e.g., operating range between 0° and 60°) or limited to an appropriate number of rotations (e.g., 1000°).
  • Page 851 R2: Rotary axes 13.1 Brief description ● The positive rotary-axis direction of rotation corresponds to a clockwise rotation when looking in the positive axis direction of the corresponding middle axis (see fig.). Figure 13-1 Axis identifiers and directions of movement for rotary axes Extended addressing (e.g., C2=) or freely configured axis addresses can be used for additional rotary axes.
  • Page 852 R2: Rotary axes 13.1 Brief description Operating range The operating range can be defined by means of axis-specific machine and setting data (software limit switches and working-area limitations). As soon as modulo conversion is activated for the rotary axis (MD30310 $MA ROT_IS_MODULO = 1), the operating range is set to unlimited and the software limit switches and working-area limitations become inactive.
  • Page 853 R2: Rotary axes 13.1 Brief description The tangential velocity of the rotary axis refers to diameter D (unit diameter D =360/π). unit unit In the case of unit diameter D=D , the programmed angular velocity in degrees/min and the unit tangential velocity in mm/min (or inch/min) are numerically identical.
  • Page 854: Modulo 360 Degrees

    R2: Rotary axes 13.2 Modulo 360 degrees 13.2 Modulo 360 degrees 13.2 Term "modulo 360°" Rotary axes are frequently programmed in the 360° representation mode. The axis must be defined as a rotary axis in order to use the modulo feature. With respect to a rotary axis, the term "modulo"...
  • Page 855 R2: Rotary axes 13.2 Modulo 360 degrees Axis is modulo MD30310 $MA_ROT_IS_MODULO = 1: Activation of this machine data allows the special rotary-axis response to be utilized. The rotary-axis positioning response is thus defined during programming (G90, AC, ACP, ACN or DC).
  • Page 856 R2: Rotary axes 13.2 Modulo 360 degrees Figure 13-4 Starting position of -180° changes the modulo range to -180° to + 180° Application By adjusting the following two machine data MD30503 $MA_INDEX_AX_OFFSET MD30340 $MA_MODULO_RANGE_START, indexing positions of modulo indexing axes can be implemented in the same way as for the modulo range.
  • Page 857: Programming Rotary Axes

    R2: Rotary axes 13.3 Programming rotary axes 13.3 Programming rotary axes 13.3 13.3.1 General information Note For general information on programming, please refer to: References: /PG/ Programming Manual Fundamentals MD30310 Axis-specific machine data MD30310 ROT_IS_MODULO (modulo conversion for rotary axis) is used to define whether the rotary axis behaves as a linear axis during programming and positioning or whether rotary-axis special features are taken into account.
  • Page 858 R2: Rotary axes 13.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 the range is shifted using the following machine data: MD30340 $MA_ MODULO_RANGE_START MD30330 MA_MODULO_RANGE...
  • Page 859 R2: Rotary axes 13.3 Programming rotary axes Figure 13-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 860 R2: Rotary axes 13.3 Programming rotary axes Example: C starting position is 0° (see figure below). POS[C] = DC(100) ① C axis traverses to position 100° along the shortest path POS[C] = DC(300) ② C axis traverses to position 300° along the shortest path POS[C] = DC(240) ③...
  • Page 861 R2: Rotary axes 13.3 Programming rotary axes Modulo rotary axis with/without working-area limitation The PLC can set interface signal DB31, ... DBX12.4 for dynamic activation/deactivation of the working-area limitation/software limit switches associated with a modulo rotary axis (similar to rotary axes). The NC feeds back the current status of the traversing-range limitation via interface signal DB31, ...
  • Page 862 R2: Rotary axes 13.3 Programming rotary axes Extract from part program: M123 Insert the pallet with quadruple clamping into the machine Deactivate the software limit switches on the B axis from the PLC DB35, DBX12.4=0 STOPRE Trigger a preprocessing stop S1000 M3 G4 F2 G1 X0 Y300 Z500 B0 F5000...
  • Page 863: Rotary Axis Without Modulo Conversion

    R2: Rotary axes 13.3 Programming rotary axes Example: Programming Effect POS[C] = IC(720) C axis traverses to 720° incrementally in the positive direction (two revolutions) POS[C] = IC(-180) C axis traverses to 180° incrementally in the negative direction Endless traversing range As soon as the modulo function is active, no limit is placed on the traversing range (software limit switches are not active).
  • Page 864 R2: Rotary axes 13.3 Programming rotary axes Example: Programming Effect POS[C] = AC (-100) Rotary axis C traverses to position -100°; traversing direction depends on the starting position POS[C] = AC (1500) Rotary axis C traverses to position 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 DC (Direct Control).
  • Page 865: Other Programming Features Relating To Rotary Axes

    R2: Rotary axes 13.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 866: Activating Rotary Axes

    R2: Rotary axes 13.4 Activating rotary axes 13.4 Activating rotary axes 13.4 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 867 R2: Rotary axes 13.4 Activating 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 868: Special Features Of Rotary Axes

    R2: Rotary axes 13.5 Special features of rotary axes 13.5 Special features of rotary axes 13.5 Software limit switch The software limit switches and working-area limitations are active and are required for swivel axes with a limited operating range. However, in the case of continuously-turning rotary axes (MD30310 $MA_ROT_IS_MODULO=1), the software limit switches and working- area limitations can be deactivated for individual axes.
  • Page 869: Examples

    R2: Rotary axes 13.6 Examples 13.6 Examples 13.6 Fork head, inclined-axis head Rotary axes are frequently used on 5-axis milling machines to swivel the tool axis or rotate the workpiece. These machines can position the tip of a tool on any point on the workpiece and take up any position on the tool axis.
  • Page 870: Data Lists

    R2: Rotary axes 13.7 Data lists 13.7 Data lists 13.7 13.7.1 Machine data 13.7.1.1 General machine data Number Identifier: $MN_ Description 10210 INT_INCR_PER_DEG Computational resolution for angular positions 13.7.1.2 Axis/spindle-specific machine data Number Identifier: $MA_ Description 30300 IS_ROT_AX Axis is rotary axis 30310 ROT_IS_MODULO Modulo conversion for rotary axis...
  • Page 871: Signals

    R2: Rotary axes 13.7 Data lists 13.7.3 Signals 13.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 13.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 872 R2: Rotary axes 13.7 Data lists Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 873: S3: Synchronous Spindle

    S3: Synchronous spindle 14.1 Brief description 14.1 14.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: , when k = „1, „2, „3, ...
  • Page 874 S3: Synchronous spindle 14.1 Brief description Selecting/de-selecting Part program commands are used to select/deselect the synchronous operation of a pair of synchronous spindles. Figure 14-1 Synchronous operation: On-the-fly workpiece transfer from spindle 1 to spindle 2 Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 875: Requirements

    S3: Synchronous spindle 14.1 Brief description Figure 14-2 Synchronous operation: Polygonal turning 14.1.2 Requirements The "Synchronous spindle/polygonal turning" option or the corresponding optional generic coupling version is needed to use the function. Information on the different versions of the generic coupling can be found in: Reference: Function Manual Special Functions;...
  • Page 876 S3: Synchronous spindle 14.1 Brief description Synchronous mode Synchronous mode (also referred to as “Synchronous spindle operation”) is another spindle operating mode. Before synchronous mode is activated, the following (slave) spindle must have been switched to position control. Synchronous operation is activated for the following spindle when the coupling is activated.
  • Page 877 S3: Synchronous spindle 14.1 Brief description Coupling options Synchronous spindle couplings can be defined as both ● permanently configured via channel-specific machine data (hereinafter referred to as "permanent coupling configuration") as well as ● freely defined using language instructions (COUP...) in the parts program (hereafter referred to as "user defined coupling") The following variants are possible: 1.
  • Page 878 S3: Synchronous spindle 14.1 Brief description Definition of synchronous spindles Before synchronous operation is activated, the spindles to be coupled (FS, LS) must be defined. This can be done in two ways depending on the application in question: 1. Permanently configured coupling: Machine axes that are to function as the following spindle (FS) and leading spindle (LS) are defined in channel-specific MD 21300 $MC_COUPLE_AXIS_1[n].
  • Page 879 S3: Synchronous spindle 14.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 ratio or the speed defined angular offset when the coupling is active: –...
  • Page 880 S3: Synchronous spindle 14.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 Speed ratio, Type of coupling and Block change response can be altered by the NC parts program: 0: Coupling parameters can be altered by the NC parts program via instruction COUPDEF 1: Coupling parameters cannot be altered by the NC parts program.
  • Page 881: Prerequisites For Synchronous Mode

    S3: Synchronous spindle 14.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 882: Selecting The Parts Program's Synchronous Mode

    S3: Synchronous spindle 14.1 Brief description ● The following applies to setpoint couplings (DV): To ensure more accurate synchronization characteristics, the LS should be in position control mode (language instruction SPCON) before the coupling is activated. ● Before selecting the synchronous mode, the gear stage necessary for FS and LS must be selected.
  • Page 883 S3: Synchronous spindle 14.1 Brief description COUPON activation variants Two different methods can be selected to activate synchronous mode: 1. Fastest possible activation of coupling with any angular reference between leading and following spindles. COUPON(FS, LS) 2. Activation of coupling with a defined angular offset POS between leading and following spindle.
  • Page 884 S3: Synchronous spindle 14.1 Brief description The "0° position" of a position-controlled spindle is calculated as follows: ● from the zero mark or Bero signal of the measurement system and ● from the reference values saved using axis-specific machine data: MD34100 $MA_REFP_SET_POS, reference point value, of no significance with interval-coded systems.
  • Page 885: Deselecting The Parts Program's Synchronous Mode

    S3: Synchronous spindle 14.1 Brief description 14.1.6 Deselecting the parts program's synchronous mode Deactivate coupling COUPOF, COUPOFS Synchronous mode between the specified spindles is canceled by the parts program instruction COUPOF. Three variants are possible. If synchronous mode is canceled between the specified spindles using COUPOF, then it is irrelevant whether this coupling is permanently configured or user defined.
  • Page 886: Controlling Synchronous Spindle Coupling Via Plc

    S3: Synchronous spindle 14.1 Brief description , POS Deactivation positions POS and POS match the actual positions of FS and LS respectively referred to the defined reference point value. Range of POS , POS : 0 ... 359,999°. References: /FB1/ Function Manual, Basic Functions; Reference Point Approach (R1) COUPOF during the motion If synchronous mode is deselected while the spindles are in motion with COUPOF, the following spindle continues to rotate at the current speed (n...
  • Page 887 S3: Synchronous spindle 14.1 Brief description "Disable synchronization" The synchronization motion for the following spindle is suppressed using the axial signal IS "Disable synchronization" (DB31, ... DBX31.5). When the main run advances to a block containing parts program statement COUPON (FS, LS, offset), the following interface signal is evaluated for the following spindle: IS "Disable synchronization"...
  • Page 888 S3: Synchronous spindle 14.1 Brief description ; IS "Synchronism coarse" ; (DB31, ... DBX98.1) and ; IS "Synchronism fine" ; (DB31, ... DBX98.0) ; are set and the block change ; is enabled. N54 M0 N57 COUPOF(S2,S1) N99 M30 Reset and recovery Resetting the IS "Disable synchronization"...
  • Page 889: Monitoring Of Synchronous Operation

    S3: Synchronous spindle 14.1 Brief description Note Other configuration options for axis functions using MD30455 $MA_MISC_FUNCTION_MASK: References: /FB1/ Function Manual, Basic Functions; Round Axes (R2), Section "Programming Round Axes 14.1.8 Monitoring of synchronous operation Fine/coarse synchronism In addition to conventional spindle monitoring operations, synchronous operation between the FS and LS is also monitored in synchronous mode.
  • Page 890 S3: Synchronous spindle 14.1 Brief description ● AV, DV: Position variance between FS and LS ● VV: Difference in speed between FS and LS Figure 14-3 Synchronism monitoring with COUPON and synchronism test mark WAITC with synchronization on a turning leading spindle Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 891 S3: Synchronous spindle 14.1 Brief description 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-specific MD37200: AV, DV: COUPLE_POS_TOL_COARSE MD37220: VV: COUPLE_VELO_TOL_COARSE ●...
  • Page 892: Programming Of Synchronous Spindle Couplings

    S3: Synchronous spindle 14.2 Programming of synchronous spindle couplings 14.2 Programming of synchronous spindle couplings 14.2 Table 14- 1 Overview Programmed coupling Configured coupling(s) Note Defining a coupling: Modification of configured data: Setting the coupling COUPDEF(FS, ...) COUPDEF(FS, ...) parameters Activation of a coupling: COUPON(FS, LS, POS Switching on and switching Activate and transfer a movement for coupling difference in speed:...
  • Page 893 S3: Synchronous spindle 14.2 Programming of synchronous spindle couplings Define new couplings Language instruction "COUPDEF" can be used to create new synchronous spindle couplings (user-defined) and to modify the parameters for existing couplings. When the coupling parameters are fully specified, the following applies: COUPDEF (FS, LS, Ü...
  • Page 894 S3: Synchronous spindle 14.2 Programming of synchronous spindle couplings If no coupling type is specified, then the currently selected type continues to apply. Note The coupling type may only be changed when synchronous operation is deactivated! Examples COUPDEF (SPI(2), SPI(1), 1.0, 1.0, "FINE", "DV") COUPDEF (S2, S1, 1.0, 4.0) COUPDEF (S2, SPI(1), 1.0) Default settings...
  • Page 895: Programming Instructions For Activating And Deactivating The Coupling

    S3: Synchronous spindle 14.2 Programming of synchronous spindle couplings Programmable block change It is possible to mark a point in the NC program using the "WAITC" language instruction. The system waits at this point for fulfillment of the synchronism conditions for the specified FS and delays changes to new blocks until the specified state of synchronism is reached (see Fig.).
  • Page 896 S3: Synchronous spindle 14.2 Programming of synchronous spindle couplings 2. COUPON(FS, LS, POS Activation of synchronous operation with a defined angular offset POS between the leading and following spindles. This offset is referred to the zero degrees position of the leading spindle in a positive direction of rotation.
  • Page 897: Axial System Variables For Synchronous Spindle

    S3: Synchronous spindle 14.2 Programming of synchronous spindle couplings 1. COUPOFS(FS, LS) Deactivating a coupling with stop of following spindle. Block change performed as quickly as possible with immediate block change) 2. COUPOFS(FS, LS, POS After the programmed deactivation position that refers to the machine coordinate system has been crossed, the block change is not enabled until the deactivation positions POSFS have been crossed.
  • Page 898: Automatic Selection And Deselection Of Position Control

    S3: Synchronous spindle 14.2 Programming of synchronous spindle couplings Reading the programmed angular offset The position offset last programmed between the FS and LS can be read in the NC part program by means of the following axial system variables: $P_COUP_OFFS[<axial expression>] Note After cancellation of the servo enable signal when synchronous operation and follow-up...
  • Page 899 S3: Synchronous spindle 14.2 Programming of synchronous spindle couplings Automatic deselection with COUPOF and COUPOFS Depending on the coupling type, the effect of COUPOF and COUPOFS on the position control is as follows: Coupling type Following spindle FS Position control OFF Position control OFF No action Leading spindle LS...
  • Page 900: Configuration Of A Synchronous Spindle Pair Via Machine Data

    S3: Synchronous spindle 14.3 Configuration of a synchronous spindle pair via machine data 14.3 Configuration of a synchronous spindle pair via machine data 14.3 Coupling parameters One synchronous spindle coupling per NC channel can be configured permanently via channel-specific machine data. It is then necessary to define the machine axes (spindles) which are to be coupled and what characteristics this coupling should have.
  • Page 901: Configuration Of The Behavior With Nc Start

    S3: Synchronous spindle 14.3 Configuration of a synchronous spindle pair via machine data ● Aborting the coupling with NC start: channel-specific MD21330 $MC_COUPLE_RESET_MODE_1 ● Write-protection for coupling parameters: (channel-specific MD21340 $MC_COUPLE_IS_WRITE_PROT_1) It can be defined in this machine data whether or not the configured coupling parameters Speed ratio, Type of coupling and Block change response may be influenced by the NC parts program.
  • Page 902: Configuration Of The Behavior With Reset

    S3: Synchronous spindle 14.3 Configuration of a synchronous spindle pair via machine data 14.3.2 Configuration of the behavior with Reset The following behavior can be set with the channel-specific machine data upon reset and end of NC machining program: Table 14- 3 Synchronous coupling behavior with end of NC machining program and after reset Configured coupling Programmed coupling *...
  • Page 903: Special Features Of Synchronous Mode

    S3: Synchronous spindle 14.4 Special features of synchronous mode 14.4 Special features of synchronous mode 14.4 14.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.
  • Page 904 S3: Synchronous spindle 14.4 Special features of synchronous mode 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 and optional number of following spindles in optional channels of an NCU: ●...
  • Page 905: Restore Synchronism Of Following Spindle

    S3: Synchronous spindle 14.4 Special features of synchronous mode 14.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 906 S3: Synchronous spindle 14.4 Special features of synchronous mode 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 907: Influence On Synchronous Operation Via Plc Interface

    S3: Synchronous spindle 14.4 Special features of synchronous mode Supplementary condition NST DB31, ... DBX31.4 (resynchronization) only has any effect if there is a defined offset position between the following spindle and leading spindle. This is the case following COUPON with offset positions such as COUPON(...,77) or SPOS, SPOSA, M19 for the following spindle with a closed coupling..
  • Page 908 S3: Synchronous spindle 14.4 Special features of synchronous mode Servo enable (DB31, ... DBX2.1) Cancellation of "Servo enable" for LS (either via PLC interface or internally in the control in the event of faults): If the servo enable signal of the LS is set to "0" during synchronous operation and a setpoint coupling is active, a switchover to actual-value coupling is executed in the control.
  • Page 909 S3: Synchronous spindle 14.4 Special features of synchronous mode Delete distance to go/Spindle Reset (DB31, ... DBX2.2) When Spindle reset is set for the LS in synchronous operation, the LS is decelerated to standstill at the selected acceleration rate. The FS and LS continue to operate in synchronous mode.
  • Page 910: Differential Speed Between Leading And Following Spindles

    S3: Synchronous spindle 14.4 Special features of synchronous mode Traverse keys for JOG (DB31, ... DBX4.6 and 4.7) The "plus and minus traversing keys" for JOG are not disabled in the control for the FS in synchronous operation, i.e. the FS executes a superimposed motion if one of these keys is pressed.
  • Page 911 S3: Synchronous spindle 14.4 Special features of synchronous mode Figure 14-4 Schematic representation of process resulting in differential speed Example N01 M3 S500 ; S1 rotates positively at 500 rpm ; the master spindle is spindle 1 N02 M2=3 S2=300 ;...
  • Page 912 S3: Synchronous spindle 14.4 Special features of synchronous mode Application Manufacturing operations with positioned leading spindle and rotating tools require exact synchronism with the counter spindle which then functions like a following spindle. A turret rotating about the following spindle allows parts to be machined with different tool types. The following diagram shows an application in which the tool is positioned parallel to the main spindle.
  • Page 913 S3: Synchronous spindle 14.4 Special features of synchronous mode Activate coupling with COUPONC When the coupling is activated, the following spindle is accelerated, as before, to the leading spindle speed through application of the coupling factor. If the following spindle is already rotating (M3, M4) when the coupling is activated, it continues with this motion after coupling.
  • Page 914 S3: Synchronous spindle 14.4 Special features of synchronous mode Even if a differential speed has been programmed, the following spindle remains under position control if this is required by the coupling. Note The axial VDI interface signal NCK → PLC IS "Superimposed motion" is set (DB31, ... DBX98.4) when setpoints in addition to the coupling setpoints are created by differential speed programming.
  • Page 915: Behavior Of Synchronism Signals During Synchronism Correction

    S3: Synchronous spindle 14.4 Special features of synchronous mode Coupling deselection If the coupling is deactivated, the following spindle continues to rotate at the speed corresponding to the sum of both speed components. The motion transition upon coupling deselection is at continuous speed. With COUPOF, the spindle behaves as if it had been programmed with the speed and direction transferred from the other spindle.
  • Page 916: Special Points Regarding Start-Up Of A Synchronous Spindle Coupling

    S3: Synchronous spindle 14.4 Special features of synchronous mode 14.4.7 Special points regarding start-up of a synchronous spindle coupling Spindle start-up The leading and following spindles must be started up initially like a normal spindle. The corresponding method is described in References: /IADC/ Commissioning Manual SINUMERIK 840D /FB1/ Function Manual Basic Functions, Spindles (S1)
  • Page 917 S3: Synchronous spindle 14.4 Special features of synchronous mode ● K factor (MD32200 $MA_POSCTRL_GAIN) ● Feedforward control parameters MD32620 $MA_FFW_MODE MD32610 $MA_VELO_FFW_WEIGHT MD32650 $MA_AX_INERTIA MD32800 $MA_EQUIV_CURRCTRL_TIME MD32810 $MA_EQUIV_SPEEDCTRL_TIME References: /FB2/ Function Manual Extended Functions; Compensations (K3) Behavior during loss of synchronism: ●...
  • Page 918 S3: Synchronous spindle 14.4 Special features of synchronous mode Following spindle: MD32810 $MA_EQUIV_SPEEDCTRL_TIME [n] = 3 ms Time constant of dynamic response adaptation for the following spindle: MD32910 $MA_DYN_MATCH_TIME [n] = 5 ms - 3 ms = 2 ms The dynamic response adaptation must be activated axially via MD32900 $MA_DYN_MATCH_ENABLE.
  • Page 919 S3: Synchronous spindle 14.4 Special features of synchronous mode Separate dynamic response for spindle and axis operations In spindle and axis operations, dynamic programming FA, OVRA, ACC and VELOLIMA can be set separately from one another with the following MD: MD30455 $MA_MISK_FUNCTION_MASK Bit 6=0 Assignment is undertaken by the programmed axis or spindle identifier.
  • Page 920 S3: Synchronous spindle 14.4 Special features of synchronous mode 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 921: Examples

    S3: Synchronous spindle 14.5 Examples 14.5 Examples 14.5 Programming example ; Leading spindle = master spindle = ; Following spindle = spindle 2 N05 M3 S3000 M2=4 S2=500 ; Master spindle rotates at 3000 rpm ; FS: 500/min. N10 COUPDEF (S2, S1, 1, 1, "No", ;...
  • Page 922: Data Lists

    S3: Synchronous spindle 14.6 Data lists 14.6 Data lists 14.6 14.6.1 Machine data 14.6.1.1 NC-specific machine data Number Identifier: $MN_ Description 10000 AXCONF_MACHAX_NAME_TAB Machine axis name 14.6.1.2 Channel-specific machine data Number Identifier: $MC_ Description 20070 AXCONF_MACHAX_USED Machine axis number valid in channel 21300 COUPLE_AXIS_1 Definition of synchronous spindle pair...
  • Page 923: Setting Data

    Description 42300 COUPLE_RATIO_1 Transmission parameters for synchronous spindle operation 14.6.3 Signals 14.6.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 14.6.3.2 Signals from channel...
  • Page 924: Signals From Axis/Spindle

    S3: Synchronous spindle 14.6 Data lists Signal name SINUMERIK 840D sl SINUMERIK 828D Position measuring system 1, position measuring DB31, ..DBX1.5/6 DB380x.DBX1.5/6 system 2 Controller enable DB31, ..DBX2.1 DB380x.DBX2.1 Distance-to-go/Spindle RESET DB31, ..DBX2.2 DB380x.DBX2.2 Spindle stop/feed stop DB31, ...
  • Page 925: S7: Memory Configuration

    S7: Memory configuration 15.1 Brief description 15.1 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 926 S7: Memory configuration 15.2 Memory organization Active file system The active file system contains system data used to parameterize the NCK: ● Machine data ● Setting data ● Option data ● Global user data (GUD) ● Tool-offset/magazine data ● Protection zones ●...
  • Page 927: Reconfiguration

    S7: Memory configuration 15.2 Memory organization 15.2.2 Reconfiguration Reconfiguration The following actions result in the reconfiguration of the static and/or dynamic NC memory: ● Changing the settings of memory-configuration machine data: MD... $..._MM_... ● Changing the number of channels Protecting against loss of data NOTICE A reconfiguration of the static NC memory results in a loss of data on the active and passive file system.
  • Page 928: Configuration Of The Static User Memory

    Configuration of the static user memory 15.3 15.3.1 Division of the static NC memory The figure below shows the division of the static NC memory for SINUMERIK 840D sl: Figure 15-1 Static NC memory for SINUMERIK 840D sl Static user memory The static NC memory is used jointly by the system and by the user.
  • Page 929 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 930: Startup

    S7: Memory configuration 15.3 Configuration of the static user memory 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. The memory still available is shown in machine data: MD18060 $MN_INFO_FREE_MEM_STATIC (free-static-memory display data)
  • Page 931 S7: Memory configuration 15.3 Configuration of the static user memory 5. Set the sizes of partitions U and M in machine data: MD18352 $MN_MM_U_FILE_MEM_SIZE (end-user memory for part programs/cycles/files) MD18353 $MN_MM_M_FILE_MEM_SIZE (memory size for cycles/files of the machine manufacturer) 6. Activate the number of required channels and axes. References: SINUMERIK 840D Commissioning Manual SINUMERIK 840Di Manual...
  • Page 932: Configuration Of The Dynamic User Memory

    S7: Memory configuration 15.4 Configuration of the dynamic user memory 15.4 Configuration of the dynamic user memory 15.4 15.4.1 Division of the dynamic NC memory The figure below shows the division of the dynamic NC memory: Figure 15-2 Dynamic NC memory Dynamic user memory The dynamic NC memory is used jointly by the system and by the user.
  • Page 933: Startup

    S7: Memory configuration 15.4 Configuration of 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 Changes are not usually required as an appropriate value is automatically set during the reconfiguration.
  • Page 934: Data Lists

    S7: Memory configuration 15.5 Data lists 15.5 Data lists 15.5 15.5.1 Machine data 15.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 935 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 936 S7: Memory configuration 15.5 Data lists Number Identifier: $MN_ Description 18350 MM_USER_FILE_MEM_MINIMUM Minimum part-program memory 18352 MM_U_FILE_MEM_SIZE End-user memory for part programs/cycles/files 18353 MM_M_FILE_MEM_SIZE Memory size for cycles/files of the machine manufacturer 18354 MM_S_FILE_MEM_SIZE Memory size for cycles/files of the NC manufacturer 18355 MM_T_FILE_MEM_SIZE Memory size for temporary files...
  • Page 937: Channel-Specific Machine Data

    S7: Memory configuration 15.5 Data lists Number Identifier: $MN_ Description 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 18664 MM_NUM_SYNACT_GUD_CHAR Configurable char-type GUD variable 18665 MM_NUM_SYNACT_GUD_STRING Configurable STRING-type GUD variable 18700 MM_SIZEOF_LINKVAR_DATA Size of the NCU link variable memory 18710 MM_NUM_AN_TIMER...
  • Page 938 S7: Memory configuration 15.5 Data lists Number Identifier: $MC_ Description 28081 MM_NUM_BASE_FRAMES Number of basic frames (SRAM) 28082 MM_SYSTEM_FRAME_MASK System frames (SRAM) 28083 MM_SYSTEM_DATAFRAME_MASK System frames (SRAM) 28085 MM_LINK_TOA_UNIT Allocation of a TO unit to a channel 28090 MM_NUM_CC_BLOCK_ELEMENTS Number of block elements for compile cycles 28100 MM_NUM_CC_BLOCK_USER_MEM Size of block memory for compile cycles...
  • Page 939: Axis/Spindle-Specific Machine Data

    S7: Memory configuration 15.5 Data lists Number Identifier: $MC_ Description 28560 MM_SEARCH_RUN_RESTORE_MODE Restore data after a simulation 28580 MM_ORIPATH_CONFIG Setting for ORIPATH tool orientation trajectory referred to path 15.5.1.3 Axis/spindle-specific machine data Number Identifier: $MA_ Description 38000 MM_ENC_COMP_MAX_POINTS Number of intermediate points with interpolatory compensation 38010 MM_QEC_MAX_POINTS...
  • Page 940 S7: Memory configuration 15.5 Data lists Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 941: T1: Indexing Axes

    T1: Indexing axes 16.1 Brief description 16.1 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 942: Traversing Of Indexing Axes

    T1: Indexing axes 16.2 Traversing of indexing axes 16.2 Traversing of indexing axes 16.2 16.2.1 General information Indexing axes can be traversed: ● Manually in the setting-up modes JOG and INC ● from one part program with special instructions for coded positions ●...
  • Page 943 T1: Indexing axes 16.2 Traversing of indexing axes Indexing axes are generally traversed in JOG mode (standard setting). Continuous mode plays a less important role. If the operator changes the direction of traversing before the indexing position has been reached, the indexing axis is positioned on the next indexing position in the direction of traversing.
  • Page 944: Traversing Of Indexing Axes In The Automatic Mode

    T1: Indexing axes 16.2 Traversing of indexing axes Rev. feedrate In 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 Description = 1 (active) The axis/spindle is always traversed with rrevolutional feed rate as a function of the master spindle: MD32050 $MA_JOG_REV_VELO (revolutional feed rate for JOG mode) MD32040 $MA_JOG_REV_VELO_RAPID (revolutional feed rate for JOG with...
  • Page 945: Traversing Of Indexing Axes By Plc

    T1: Indexing axes 16.2 Traversing of indexing axes On rotary axes, the indexing position can be approached directly across the shortest path (CDC) or with a defined direction of rotation (CACP, CACN). Reaching the indexing position If the "Exact stop fine" window is reached and the indexing axis is positioned on an indexing position, the following NC/PLC interface signal is enabled regardless of how the indexing position was reached.
  • Page 946: Parameterization Of Indexing Axes

    T1: Indexing axes 16.3 Parameterization of indexing axes 16.3 Parameterization of indexing axes 16.3 Definition of the indexing axis An axis (linear or rotary axis) can be defined as indexing axis with the axial machine data: MD30500 $MA_INDEX_AX_ASSIGN_POS_TAB Value Description The axis is not declared as an indexing axis.
  • Page 947 T1: Indexing axes 16.3 Parameterization of indexing axes Valid measuring system The indexing positions defined with MD10900 and MD10920 are related to the measuring system configured for position tables: MD10270 $MN_POS_TAB_SCALING_SYSTEM Value Measuring system Metric inch Note MD10270 has an effect on the following setting data: SD41500 $SN_SW_CAM_MINUS_POS_TAB_1 (switching point for falling cam edge 1-8) SD41507 $SN_SW_CAM_PLUS_POS_TAB_4 (switching point for rising cam edge 25-32) Entry for indexing positions...
  • Page 948: Programming Of Indexing Axes

    T1: Indexing axes 16.4 Programming of indexing axes 16.4 Programming of indexing axes 16.4 Coded position To allow indexing axes to be positioned from the NC part program, special instructions are provided with which the indexing numbers (e.g. location numbers) are programmed instead of axis positions in mm or degrees.
  • Page 949 T1: Indexing axes 16.4 Programming of indexing axes Programming Comment POS[B]=CIC(-4) ; Indexing axis B traverses four indexing positions incrementally from its current position. in a negative direction. Programming Comment POS[B]=CIC(35) ; Indexing axis B traverses 35 indexing positions incrementally from its present position in a positive direction.
  • Page 950 T1: Indexing axes 16.4 Programming of indexing axes Value Description The indexing position changes when the indexing position is reached ("exact stop fine" window) and remains unchanged until the next indexing position is reached. The indexing area thus begins at one indexing position and ends in front of the next indexing position.
  • Page 951 T1: Indexing axes 16.4 Programming of indexing axes Programmed indexing position Displayed indexing position ESFW "Exact stop fine" window Figure 16-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 952 T1: Indexing axes 16.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 Description The next indexing position is approached.
  • Page 953: Equidistant Index Intervals

    T1: Indexing axes 16.5 Equidistant index intervals 16.5 Equidistant index intervals 16.5 16.5.1 Function General information The following exist: ● Any number of equidistant index intervals ● Modified action of MD for indexing axes Equidistant index intervals can be used for: ●...
  • Page 954 T1: Indexing axes 16.5 Equidistant index intervals Linear axis Modulo rotary axis Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 955: Hirth Tooth System

    T1: Indexing axes 16.5 Equidistant index intervals Activating The functions with equi-distant 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 16.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 956: Response Of The Hirth Axes In Particular Situations

    T1: Indexing axes 16.5 Equidistant index intervals Activation ● The rotary axis can only approach indexing positions in all modes and operating states. ● In JOG mode, the axis can be traversed under JOG control or incrementally. Prerequisites: The axis is referenced. ●...
  • Page 957: Restrictions

    T1: Indexing axes 16.5 Equidistant index intervals MOV command MOV = 1 Works on indexing axes with and without Hirth tooth system. MOV = 0 Same function for both: approaches the next position. DELDTG command In the case of indexing axes without Hirth tooth system: Axis stops immediately.
  • Page 958: Modified Activation Of Machine Data

    T1: Indexing axes 16.5 Equidistant index intervals Couplings A Hirth tooth system axis can never be one of the following axis types: ● following axis with master value coupling ● coupled-motion axis ● gantry following axis References: /FB3/ Function Manual, Special Functions; Coupled axes and ESR (M3) 16.5.5 Modified activation of machine data RESET...
  • Page 959: Starting Up Indexing Axes

    T1: Indexing axes 16.6 Starting up indexing axes 16.6 Starting up indexing axes 16.6 Procedure The procedure for starting up indexing axes is identical to normal NC axes (linear and rotary axes). Rotary axis If the indexing axis is defined as a rotary axis (MD30300 $MA_IS_ROT_AX = "1") with modulo 360°...
  • Page 960 T1: Indexing axes 16.6 Starting up indexing axes Example of indexing axis as rotary axis Tool turret with 8 locations. The tool turret is defined as a continuously rotating rotary axis. The distances between the 8 turret locations are constant. The first turret location is located at position 0°: Figure 16-3 Example: Tool turret with 8 locations...
  • Page 961 T1: Indexing axes 16.6 Starting up indexing axes Example of indexing axis as linear axis Workholder with 10 locations. The distances between the 10 locations are different. The first location is at position -100 mm. Figure 16-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 1st indexing position at -100...
  • Page 962: Special Features Of Indexing Axes

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

    T1: Indexing axes 16.8 Examples 16.8 Examples 16.8 16.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 964 T1: Indexing axes 16.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 965: Data Lists

    T1: Indexing axes 16.9 Data lists 16.9 Data lists 16.9 16.9.1 Machine data 16.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 966: Signals

    T1: Indexing axes 16.9 Data lists 16.9.3 Signals 16.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 16.9.4 System variables 16.9.4.1 System variables...
  • Page 967: W3: Tool Change

    W3: Tool change 17.1 Brief description 17.1 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 968: Tool Magazines And Tool Change Equipments

    W3: Tool change 17.2 Tool magazines and tool change equipments 17.2 Tool magazines and tool change equipments 17.2 Tool magazines and tool changing equipment are selected according to the machine type: Machine type Tool magazine Tool change equipment Turning machines Turret No special tool change equipment.
  • Page 969: Starting The Tool Change

    W3: Tool change 17.5 Starting the tool change 17.5 Starting the tool change 17.5 Variants The tool change can be actuated by: ● T function ● M command (preferably M06). Parameter setting Which control versions should be effective is defined with the machine data: MD22550 $MC_TOOL_CHANGE_MODE Value Description...
  • Page 970: Tool Change Point

    W3: Tool change 17.6 Tool change point 17.6 Tool change point 17.6 Tool change point The selection of the tool change point has a significant effect on the cut-to-cut time (Page 968). The tool change point is chosen according to the machine tool concept and, in certain cases, according to the current machining task.
  • Page 971: Examples

    W3: Tool change 17.8 Examples 17.8 Examples 17.8 Milling machine The following example shows a typical cut-to-cut sequence of operations for a tool change with a tool changer and a fixed absolute tool change point on a milling machine. Machining program: N970 G0 X= Y= Z= LF ;...
  • Page 972 W3: Tool change 17.8 Examples Axes stationary. Spindle rotates. Start of tool change cycle in N10. Move axes to tool change point with G75 in N20. Spindle reaches programmed position from block N10. Axes reach exact stop coarse from N20; N30 thus begins: M06 removes the previous tool from the spindle and loads and clamps the new tool.
  • Page 973: Data Lists

    Identifier: $MA_ Description 30600 FIX_POINT_POS[n]. Fixed point positions of the machine axes with G75 17.9.2 Signals 17.9.2.1 Signals from channel Signal name SINUMERIK 840D sl SINUMERIK 828D M function M06 DB21, ..DBX194.6 DB2500.DBB1000.6 Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 974 W3: Tool change 17.9 Data lists Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 975: W4: Grinding-Specific Tool Offset And Monitoring Functions - Only 840D Sl

    W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.1 Brief description 18.1 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: /FB1/ Function Manual Basic Functions;...
  • Page 976: Tool Offset For Grinding Operations

    W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations 18.2 Tool offset for grinding operations 18.2 18.2.1 Structure of tool data Grinding tools Grinding tools are tools of types 400 to 499. Tool offset for grinding tools Grinding tools normally have specific tool and dresser data in addition to cutting edge data.
  • Page 977 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations Example 2: All offsets belonging to a grinding wheel and dresser can be combined in the tool edges D1 and D2 for the grinding wheel and, for example, D3 and D4 for the dresser: ●...
  • Page 978: Cutting-Edge-Specific Offset Data

    W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations 18.2.2 Cutting-edge-specific offset data Tool parameter The tool parameters for grinding tools have the same meaning as those for turning and milling tools. Tool parameter Description Comment...
  • Page 979 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations Note The cutting edge data for D1 and D2 of a selected grinding tool can be chained, i.e. if a parameter in D1 or D2 is modified, then the same parameter in D1 or D2 is automatically overwritten with the new value (see tool-specific data $TC_TPG2).
  • Page 980 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations Tool types for grinding tools The structure of tool types for grinding tools is as follows: Figure 18-2 Structure of tool type for grinding tools Note MD20350 $MC_TOOL_GRIND_AUTO_TMON Through this channel-specific machine data it can be determined, whether for grinding tools...
  • Page 981: Tool-Specific Grinding Data

    W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations 18.2.3 Tool-specific grinding data Tool-specific grinding data Tool-specific grinding data are available once for every T number (type 400- 499). They are automatically set up with every new grinding tool (type 400 - 499). Note Tool-specific grinding data have the same characteristics as a tool edge.
  • Page 982 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations Spindle number $TC_TPG1 Number of programmed spindle (e.g. grinding wheel peripheral speed) and spindle to be monitored (e.g. wheel radius and width) Chain rule $TC_TPG2 This parameter is set to define which tool parameters of tool edge 2 (D2) and tool edge 1 (D1) have to be chained to one another.
  • Page 983 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations Example of parameter chain: Lengths 1, 2 and 3 of the geometry, the length wear and the tool base/adapter dimensions of lengths 1, 2 and 3 on a grinding tool (T1 in the example) must be automatically transferred. Furthermore, the same tool type applies to tool edges 1 and 2.
  • Page 984 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations Minimum wheel radius and width $TC_TPG3 $TC_TPG4 The limit values for the grinding wheel radius and width must be entered in these parameters. These parameter values are used to monitor the grinding wheel geometry. Note It must be noted that the minimum grinding wheel radius must be specified in the Cartesian coordinate system for an inclined grinding wheel.
  • Page 985 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 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 18-3 Machine with inclined infeed axis Note...
  • Page 986: Examples Of Grinding Tools

    W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations Access from part program Parameters can be read and written from the part program. Example Programming R10 = $TC_TPG5 [2] Read the current width of tool 2 and store in R10 $TC_TPG6 [3] = 2000 Write value 2000 to the maximum speed of tool 3 $P_ATPG[m] for current tool...
  • Page 987 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations Planes The following planes and axis assignments are possible (abscissa, ordinate, applicate for 1st, 2nd and 3rd geometry axes): Command Plane Axis perpendicular to plane (abscissa/ordinate) (applicate) Figure 18-4...
  • Page 988 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations Surface grinding wheel Figure 18-5 Offset values required by a surface grinding wheel Inclined wheel Without tool base dimension for GWPS Figure 18-6 Offset values required for inclined wheel with implicit monitoring selection Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 989 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations Inclined wheel With tool base dimension for GWPS Figure 18-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, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 990 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.2 Tool offset for grinding operations Surface grinding wheel Figure 18-8 Required offset values of a surface grinding wheel without base dimension for GWPS Facing wheel Figure 18-9 Required offset values of a facing wheel with monitoring parameters Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 991: Online Tool Offset

    W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.3 Online tool offset 18.3 Online tool offset 18.3 18.3.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 992 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.3 Online tool offset General 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 993: Write Online Tool Offset: Continuous

    W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.3 Online tool offset 18.3.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 994 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.3 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 18-12 Straight line with gradient 1 Extended Functions Function Manual, 09/2009, 6FC5397-1BP20-0BA0...
  • Page 995 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.3 Online tool offset Write online tool offset continuously PUTFTOCF(<polynomial no.>, <reference value>, <length1_2_3>, <channel no.>, <spindle no.>) PUFTOCF Polynomial no.: Number of function (1, 2, 3) Reference value: Reference value of function Length 1_2_3: Wear parameter into which the tool offset value is added Channel no.:...
  • Page 996: Activate/Deactivate Online Tool Offset

    W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.3 Online tool offset 18.3.3 Activate/deactivate online tool offset Activation/deactivation of online tool offset The following commands activate and deactivate the online tool offset in the machining channel (grinding, destination channel): FTOCON Activation of online tool offset The machining channel can process online tool offsets (PUTFTOC) only if the...
  • Page 997: Example Of Writing Online Tool Offset Continuously

    W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.3 Online tool offset 18.3.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: G19 (Y/Z plane) Length 1 acts in Z, length 2 in Y, tool type = 401 Machining:...
  • Page 998: Write Online Tool Offset Discretely

    W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.3 Online tool offset Main machining program in channel 1 G1 G19 F10 G90 Basic position T1 D1 Select current tool S100 M3 Y100 Spindle ON, traverse to starting position FTOCON Activate online offset INIT (2, "/_N_MPF_DIR/_N_ABRICHT_MPF", "S")
  • Page 999: Information About Online Offsets

    W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.3 Online tool offset The wear of the specified length (1, 2 or 3) is modified online by the programmed value. Note The online tool offset for a (geometric) grinding tool that is not active can be activated by specifying the appropriate spindle number.
  • Page 1000 W4: Grinding-specific tool offset and monitoring functions - only 840D sl 18.3 Online tool offset Supplementary conditions ● The online tool offset is superimposed on the programmed axis motion, allowing for the defined limit values (e.g. velocity). If a DRF offset and online offset are active simultaneously for an axis, the DRF offset is considered first.

This manual is also suitable for:

Sinumerik 840de slSinumerik 828d

Table of Contents