Page 1
______________ Memory Configuration (S7) ______________ Indexing Axes (T1) Valid for ______________ Controller Tool Change (W3) SINUMERIK 840D sl / 840DE sl Grinding-specific tool offset ______________ and tool monitoring (W4) Software Version NCU system software for 840D sl/840DE sl 1.5/2.5 NC/PLC interface signals...
Page 2
Trademarks All names identified by ® are registered trademarks of the Siemens AG. The remaining trademarks in this publication may be trademarks whose use by third parties for their own purposes could violate the rights of the owner.
The Internet version of DOConCD (DOConWEB) is available under: http://www.automation.siemens.com/doconweb Information on the range of training courses and FAQs (frequently asked questions) are available on the Internet under: http://www.siemens.com/motioncontrol under menu item "Support". Target group This publication is intended for: ● Project engineers ●...
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
Preface Notation of system data The following notation is applicable for system data in this documentation: Signal/Data Notation Example NC/PLC interface ... NC/PLC interface signal: When the new gear step is engaged, the following NC/PLC signals interface signals are set by the PLC program: Signal data (signal name) DB31, ...
Page 6
Preface Technical Support If you have any technical questions, please contact our hotline: Europe / Africa Phone +49 180 5050 222 +49 180 5050 223 Internet http://www.siemens.com/automation/support-request America Phone +1 423 262 2522 +1 423 262 2200 E-Mail mailto:techsupport.sea@siemens.com Asia/Pacific...
Contents Preface ..............................3 Digital and analog NCK I/Os (A4) ......................25 Brief Description...........................25 NCK I/O via PLC ..........................26 1.2.1 General functionality ........................26 1.2.2 NCK digital inputs/outputs......................33 1.2.2.1 NCK digital inputs ........................33 1.2.2.2 NCK digital outputs ........................35 1.2.3 Connection and logic operations of fast NCK inputs/outputs ............38 1.2.4 NCK analog inputs/outputs ......................40 1.2.4.1...
Page 8
Contents Several Operator Panels on Several NCUs, Distributed Systems (B3) ............ 73 Brief Description.......................... 73 2.1.1 Topology of distributed system configurations................73 2.1.2 Several operator panels and NCUs with control unit management (option)....... 78 2.1.2.1 General information........................78 2.1.2.2 System Features ......................... 79 2.1.2.3 Hardware.............................
Page 9
Contents 2.6.5 Programming with channel and machine axis identifiers............149 2.6.6 Flexible configuration .........................149 Axis container..........................150 2.7.1 System variables for axis containers ..................156 2.7.2 Machining with axis container (schematic) ................158 2.7.3 Axis container behavior after Power ON..................159 2.7.4 Axis container response to mode switchover ................159 2.7.5 Axis container behavior in relation to ASUBs ................159 2.7.6...
Page 10
Contents 2.15.4.7 Switchover between MCP and HT6 ..................234 2.15.4.8 General Information ........................235 2.15.5 Link axis ............................ 237 2.15.6 Axis container coordination ....................... 238 2.15.6.1 Axis container rotation without a part program wait..............238 2.15.6.2 Axis container rotation with an implicit part program wait............239 2.15.6.3 Axis container rotation by one channel only (e.g.
Page 11
Contents 4.1.4 Control-system response to power ON, mode change, RESET, block search, REPOS...280 Continuous travel ........................281 4.2.1 General functionality ........................281 4.2.2 Distinction between inching mode continuous mode..............282 4.2.3 Special features of continuous travel..................283 Incremental travel (INC)......................284 4.3.1 General functionality ........................284 4.3.2 Distinction between inching mode and continuous mode............285 4.3.3...
Page 12
Contents 4.12.3.5 Signals to channel........................335 4.12.3.6 Signals from channel......................... 335 4.12.3.7 Signals to axis/spindle....................... 336 4.12.3.8 Signals from axis/spindle ......................336 Compensations (K3) ..........................337 Brief Description........................337 Temperature compensation ...................... 339 5.2.1 General information........................339 5.2.2 Temperature compensation parameters................... 341 Backlash compensation ......................
Page 14
Contents 7.2.8 Overlaid motions with TRANSMIT .................... 505 7.2.9 Monitoring of rotary axis rotations over 360º ................505 7.2.10 Constraints ..........................506 TRACYL ............................ 507 7.3.1 Preconditions for TRACYL ......................509 7.3.2 Settings specific to TRACYL ..................... 513 7.3.3 Activation of TRACYL ....................... 518 7.3.4 Deactivation of the TRACYL function ..................
Page 15
Contents 7.11.1.3 TRAANG ............................587 7.11.1.4 Chained transformations......................588 7.11.1.5 Non transformation-specific machine data ................588 7.11.2 Signals ............................589 7.11.2.1 Signals from channel .........................589 Measurement (M5) ..........................591 Brief description .........................591 Hardware requirements ......................593 8.2.1 Probes that can be used ......................593 8.2.2 Measuring probe connection......................595 Channel-specific measuring.......................600 8.3.1 Measuring mode ........................600...
Page 17
Contents 10.2.5 PLC signals specific to punching and nibbling................714 10.2.6 Punching and nibbling-specific reactions to standard PLC signals ...........714 10.2.7 Signal monitoring ........................715 10.3 Activation and deactivation ......................716 10.3.1 Language commands ........................716 10.3.2 Functional expansions .......................720 10.3.3 Compatibility with earlier systems....................725 10.4 Automatic path segmentation ....................727 10.4.1...
Page 18
Contents 11.7 Control by the PLC........................788 11.7.1 Starting concurrent positioning axes from the PLC ..............789 11.7.2 PLC-controlled axes........................790 11.7.3 Control response PLC-controlled axes ..................792 11.8 Response with special functions....................793 11.8.1 Dry run (DRY RUN)........................793 11.8.2 Single block..........................
Page 19
Contents 12.6.1.1 General machine data........................835 12.6.2 Setting data ..........................835 12.6.2.1 Axis/spindle-specific setting data ....................835 12.6.3 Signals ............................836 12.6.3.1 Signals to axis/spindle .......................836 12.6.3.2 Signals from axis/spindle ......................836 12.6.4 System variables........................836 12.6.4.1 Main run variables for motion-synchronous actions ..............836 Rotary Axes (R2) ........................... 839 13.1 Brief Description.........................839 13.2...
Page 20
Contents 14.4 Special features of synchronous mode..................889 14.4.1 Special features of synchronous mode in general..............889 14.4.2 Restore synchronism of following spindle................. 891 14.4.3 Influence on synchronous operation via PLC interface ............893 14.4.4 Differential speed between leading and following spindles ............896 14.4.5 Behavior of synchronism signals during synchronism correction ..........
Page 21
Contents 16.5 Equidistant index intervals ......................941 16.5.1 Function .............................941 16.5.2 Hirth tooth system ........................943 16.5.3 Response of the Hirth axes in particular situations..............944 16.5.4 Restrictions ..........................945 16.5.5 Modified activation of machine data ..................946 16.6 Starting up indexing axes......................947 16.7 Special features of indexing axes ....................950 16.8 Examples ...........................951 16.8.1...
Page 22
Contents 18.3.3 Activate/deactivate online tool offset..................982 18.3.4 Example of writing online tool offset continuously ..............983 18.3.5 Write online tool offset discretely ....................985 18.3.6 Information about online offsets....................985 18.4 Online tool radius compensation....................987 18.5 Grinding-specific tool monitoring....................988 18.5.1 General information........................
Page 23
Contents 19.8 Measurement ...........................1051 19.8.1 Signals from NC (DB10) ......................1051 19.8.2 Signals from axis/spindle (DB31, ...)..................1051 19.9 Software cams, position switching signals................1052 19.9.1 Signal overview ........................1052 19.9.2 Signals from NC (DB10) ......................1052 19.9.3 Signals to axis/spindle (DB31, ...) ....................1054 19.9.4 Signals from axis/spindle (DB31, ...)..................1054 19.10 Punching and nibbling......................1055...
Page 24
Contents Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Digital and analog NCK I/Os (A4) 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 ●...
Digital and analog NCK I/Os (A4) 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 27
Digital and analog NCK I/Os (A4) 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 28
Digital and analog NCK I/Os (A4) 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 29
Digital and analog NCK I/Os (A4) 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 30
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC System variable The following table lists the system variables with which NCK I/Os can be read or written directly by the part program. The number of the NCK input/output is used for addressing. Applies to n: 1 ≤...
Page 31
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC Example for 840D Analog-value range is 10 V (maximum modulation); MD10330 $MN_FASTIO_ANA_OUTPUT_WEIGHT[hw] = 10000 (standard value for 840D) $A_OUTA[1] = 9500 ; 9.5 V is output at analog NCK output 1 $A_OUTA[3] = -4120 ;...
Page 32
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC The processing mode is selected for individual modules by means of general machine data: MD10384 $MN_HW_CLOCKED_MODULE_MASK[tb] [tb] = Index for terminal block (0 to 1) In synchronous processing mode, one of the following clock rates can be selected (MD10380 $MN_HW_UPDATE_RATE_FASTIO[tb]): ●...
Digital and analog NCK I/Os (A4) 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 34
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC RESET/POWER ON response After POWER ON and RESET, the signal level at the respective input is passed on. If necessary, the PLC user program can disable or set the individual inputs to "1" in a defined manner as described above.
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC 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 36
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC Setting mask Furthermore, a PLC setting for each output can determine whether the current NCK value (e.g., as specified by the NC part program) or the PLC value specified via the setting mask (DB10, DBB7 or DBB133 ...) should be sent to the hardware output (see fig.).
Page 37
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC Applications This function allows digital hardware outputs to be set instantaneously by bypassing the PLC cycles. Time-critical switching functions can thus be triggered in connection with the machining process and under program control (e.g., on block change). For example, digital NCK outputs are required for the following NC functions: ●...
Digital and analog NCK I/Os (A4) 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 39
Digital and analog NCK I/Os (A4) 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.
Digital and analog NCK I/Os (A4) 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 41
Digital and analog NCK I/Os (A4) 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 42
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC Fast analog NCK inputs The fast analog inputs must be isochronous. The assignment is defined by the machine data: MD10384 $MN_HW_CLOCKED_MODULE_MASK Figure 1-3 Signal flow for analog NCK inputs Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC 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). Function The value of the analog output [n] can be defined directly in the part program using system variable $A_OUTA[n].
Page 44
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC 2. The setting mask (DB10, DBB167) must be set to "1" for the analog output in question. Unlike the overwrite mask, the current NCK value is not lost when a value is set in the setting mask.
Page 45
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC Special case If values for NCK analog outputs defined in machine data MD10310 $MN_FASTIO_ANA_NUM_OUTPUTS are programmed in the part program, but are not available as hardware, no alarm is output. The NCK value can be read by the PLC (IS "setpoint ...").
Digital and analog NCK I/Os (A4) 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 47
Digital and analog NCK I/Os (A4) 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 48
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC 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)
Digital and analog NCK I/Os (A4) 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 50
Digital and analog NCK I/Os (A4) 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.
Digital and analog NCK I/Os (A4) 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 52
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC Comparator parameterization General machine data MD10540 $MN_COMPAR_TYPE_1 is used to set the following parameters for each bit (0 to 7) of comparator byte 1: ● Comparison type mask (bits 0 to 7) The type of comparison conditions is defined for each comparator input bit.
Page 53
Digital and analog NCK I/Os (A4) 1.2 NCK I/O via PLC Example "Multiple feedrates in one block" NC function Entry in channel-specific machine data: MD21220 $MC_MULTFEED_ASSIGN_FASTIN = 129 This activates various feedrate values as a function of the status of comparator byte 2. Figure 1-5 Functional sequence for comparator input byte 1 (or 2) Extended Functions...
Digital and analog NCK I/Os (A4) 1.3 NCK I/O via PROFIBUS NCK I/O via PROFIBUS 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. Like for any other PLC-I/O, an S7-HW-configuration (PLC) must be done before using this PROFIBUS-I/O.
Digital and analog NCK I/Os (A4) 1.3 NCK I/O via PROFIBUS A parallel writing access through compile cycles and part programs/synchronous actions on data of the same I/O-range is not possible. While configuring the NCK it must be determined, whether a specific I/O-range of the PROFIBUS-I/O is allocated to the system variables or to the compile cycles.
Page 56
Digital and analog NCK I/Os (A4) 1.3 NCK I/O via PROFIBUS Further attributes Further attributes can be allocated to each I/O-range with the following machine data: MD10502 $MN_ DPIO_RANGE_ATTRIBUTE_IN[n] Value Description Little Endian format Big Endian format Reserved Reading possible via system variables and CC-binding. Reading possible only for CC-binding.
Digital and analog NCK I/Os (A4) 1.3 NCK I/O via PROFIBUS 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). ● The configured I/O-ranges are released for use only when the PROFIBUS- communication interface is able to do a data exchange with the corresponding PROFIBUS-I/O for the first time.
Page 58
Digital and analog NCK I/Os (A4) 1.3 NCK I/O via PROFIBUS Table 1-4 PROFIBUS-I/O → NCK System variables Value Description $A_DPB_IN[n,m] 8 bit unsigned Reading a data byte (8 bit) from PROFIBUS-IO $A_DPW_IN[n,m] 16 bit unsigned Reading a data word (16 bit) from PROFIBUS-IO $A_DPSB_IN[n,m] 8 bit signed Reading a data byte (8 bit) from PROFIBUS-IO...
Digital and analog NCK I/Os (A4) 1.3 NCK I/O via PROFIBUS Query length of an I/O-range The configured length an I/O-range can be queried with the help of the following system variables. System variables Description $A_DP_IN_LENGTH[n] Reading the length of the input data range n = index for the input data range $A_DP_OUT_LENGTH[n] Reading the length of the output data range...
Page 60
Digital and analog NCK I/Os (A4) 1.3 NCK I/O via PROFIBUS CC-Bindings The following CC-bindings are available: CCDataOpi: getDpIoRangeConfiguration() CCDataOpi: getDpIoRangeValid() CCDataOpi: getDpIoRangeInInformation() CCDataOpi: getDpIoRangeOutInformation() CCDataOpi: getDpIoRangeInState() CCDataOpi: getDpIoRangeOutState() CCDataOpi: getDataFromDpIoRangeIn() CCDataOpi: putDataToDpIoRangeOut() 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.
Digital and analog NCK I/Os (A4) 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 ●...
Digital and analog NCK I/Os (A4) 1.4 Constraints 1.4.2 NCK I/O via PROFIBUS system The function is available in the systems SINUMERIK 840D/840D sl and 840Di/840Di sl for isochronous and non-isochronous configured PROFIBUS-I/Os. Hardware ● The required PROFIBUS-I/O must be available and ready to use. ●...
Digital and analog NCK I/Os (A4) 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.
Digital and analog NCK I/Os (A4) 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.
Digital and analog NCK I/Os (A4) 1.5 Examples 1.5.2 NCK I/O via PROFIBUS 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) ● as per S7-HW-configuration: –...
Page 66
Digital and analog NCK I/Os (A4) 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 ;...
Digital and analog NCK I/Os (A4) 1.5 Examples 1.5.2.2 PROFIBUS-I/O in read direction Requirement The S7-HW-configuration is already done. Configuration for programming via part program/synchronous actions ● RangeIndex = 0 (NCK-internal configuration) ● as per S7-HW-configuration: – log. start address = 456 –...
Digital and analog NCK I/Os (A4) 1.5 Examples Programming $AC_MARKER[0]=$A_DPW_IN[0,0] ; read (16 bit) on RangeIndex=0, RangeOffset=0 ; Big-Endian-format $AC_MARKER[1]=$A_DPSD_IN[0,1] ; read (32 bit) on RangeIndex=0, RangeOffset=1 ; Big-Endian-format $AC_MARKER[1]=$A_DPSD_IN[0.8] ; read (32 bit) on RangeIndex=0, RangeOffset=8 ; Big-Endian-format $AC_MARKER[2]=0 $AC_MARKER[3]=8 $AC_MARKER[1]=$A_DPSD_IN[$AC_MARKER[2],$AC_MARKER[3]] ;...
Page 69
Digital and analog NCK I/Os (A4) 1.5 Examples Programming before an access query the status of RangeIndex = 5 check: ; Jump marker IF $A_DP_OUT_STATE[5]==2 GOTOF write ; if data range valid ; => jump to N15 GOTOB check ; jump back to check write: ;...
Digital and analog NCK I/Os (A4) 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...
Digital and analog NCK I/Os (A4) 1.6 Data lists 1.6.1.2 Channel-specific machine data Number Identifier: $MC_ Description 21220 MULTFEED_ASSIGN_FASTIN Assignment of input bytes of NCK I/Os for "multiple feedrates in one block" 1.6.2 Setting data 1.6.2.1 General setting data Number Identifier: $SN_ Description 41600...
Digital and analog NCK I/Os (A4) 1.6 Data lists 1.6.3.2 Signals from NC DB number Byte.bit Description 60, 186-189 Actual value for digital NCK inputs 64, 190-193 Setpoint for digital NCK outputs 194-209 Actual value for analog NCK inputs 210-225 Setpoint for analog NCK outputs Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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: ● More than one NCU due to large number of axes and channels ●...
Page 74
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 75
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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: – Main control panel/secondary control panel ●...
Page 76
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.1 Brief Description NCU link with different IPO cycles It is possible to use an NCU link between NCUs with different interpolation cycles for special applications, such as eccentric turning. Host computer Communication between host computers and control units is described in: References: /FBR/ Function Description RPC SINUMERIK Computer Link...
Page 77
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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: ● Number of bus nodes ●...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 81
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 ● Two separate addresses (for NC and PLC) on the MPI interface The following applies: –...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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. Note The MPI/OPI network rules outlined in the "SINUMERIK 840D Commissioning Manual" must be applied.
Page 83
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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. between PCU/HT6 and NCU: Active...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.1 Brief Description 2.1.2.5 Configurability NETNAMES.INI When the M:N system powers up, it must be aware of the existing control units, NCUs and communications links and their properties. All this information is contained in the configuration file NETNAMES.INI, which is configured before power up.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.1 Brief Description ● Two MCPs and one HHU can be connected to the MPI or OPI on one NCU. ● The necessary configuration in the NC for the connection of MCPs/HHUs is defined using the basic PLC program (see Function Description, P3: Basic PLC Program).
Page 86
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.1 Brief Description Possible faults The NCU with which the connection is to be set up can reject the connection setup. Reason: NCU faulty or the NCU cannot operate any additional control units at this time. Machine data MD10134 $MN_MM_NUM_MMC_UNITS (number of possible simultaneous HMI communications partners) contains the setting which defines how many control units can be processed by an NCU at one time.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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" softkey. Use the horizontal softkeys to select a channel group (HMI Embedded: max.
Page 88
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 89
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 90
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 91
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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. ●...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.1 Brief Description 2.1.3.4 MPI/OPI network rules Network installations Please take the following basic rules into account when undertaking network installations: ● The bus line must be terminated at both ends. To do this, you switch on the terminating resistor in the MPI connector of the first and last node, and switch off any other terminators.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.1 Brief Description 2.1.4 NCU link 2.1.4.1 General information The NCU link, the link between several NCU units of an installation, is used in distributed system configurations. When there is a high demand for axes and channels, e.g. in case of revolving machines and multi-spindle machines, the computing capacity, configuration options and memory areas can reach their practical limits when only one NCU is used.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.1 Brief Description 2.1.4.2 Types of distributed machines Machine characteristics Rotary indexing machines/multi-spindle machines exhibit the following characteristics: ● Global, cross-station units (not assignable to one station): – Drum/rotary switching axis and –...
Page 95
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.1 Brief Description Figure 2-8 Sectional diagram of a drum changeover Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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. This is on another NCU in the example, but this is not necessarily the case.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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).
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.1 Brief Description 2.1.4.7 NCU link with different interpolation cycles Function An extension of the link concept whereby NCUs are connected to link modules with different interpolation cycle settings offers additional application possibilities. This functionality is also called "Fast IPO link", because when different cycles are set, one of the connected NCUs has the fastest interpolation cycle.
Page 101
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 103
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 (only one at any one time!).
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option 2.2.4 Structure of the configuration file The structure of the configuration file NETNAMES.INI is as follows: Figure 2-12 Structure of the configuration file NETNAMES.INI In the following tables, italics ●...
Page 106
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option III. Bus identification Defines which bus the HMI is connected to: Element Explanation Example [param network] Header [param network] bus = Bus designation bus = OPI...
Page 107
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option Note Note that the NCU configured via the DEFAULT channel must be the same as the NCU specified under NcddeDefaultMachineName in file MMC.INI. 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 108
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option Element Explanation Example plc_address = Address of PLC component on plc_address = 14 the bus: = 1, 2, ..., 30 *) (Only necessary for MPI bus;...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option Element Explanation Example group Header (2.) [mill1] channel1, logChanList = Groups channels separated by logChanList = channel11, channel2,... comma (2.) channel12, channel13 channel Header (3.)
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 111
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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). 2.
Page 112
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option Note In the event of an error, check the active bus nodes in the menu: • Commissioning/NC/NCK addresses (HMI Embedded, HT6 and HMI Advanced) •...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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. For example, the user can intervene in order to ●...
Page 114
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 ●...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option Group switchover You can switch to another group by means of the softkeys on the horizontal menu (see Section "Implementation of control unit switchover"); the channels of the currently selected group are now displayed on the vertical softkeys.
Page 118
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option Active operating mode ● The user requests active operating mode by pressing a key on the operator panel front. Active mode has the following characteristics: –...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option ● If an online request is issued by a PCU/HT6 – and no PCU/HT6 is currently online: The PCU/HT6 issuing the request goes online and switches to active mode. If an MCP is assigned to the PCU, this is activated by the PLC.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option 2.2.14 PLC program "Control Unit Switchover" Introduction Control unit switchover is an important controlling function in the overall M:N concept: ●...
Page 121
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option Power-up condition: To prevent the previously selected MCP from being activated again when the NCU is restarted, input parameter MCP1BusAdr must be set to 255 (address of 1st MCP) andMCP1Stop to TRUE (deactivate 1st MCP) when FB1 is called in OB100.
Page 122
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option Mixed mode Definition: The term "mixed mode" refers to a state in which a conventional OP without control unit switchover function is connected to the first HMI interface on the NCU.
Page 123
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option Wait times for acknowledgement signals To render the program independent of timers, two wait times based on repeated reading of the system time are implemented via SFC64 in the control unit switchover program.
Page 124
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.2 Several operator panel fronts and NCUs with control unit management option Identifier for PCU/HT6 "Control unit switchover exists" In certain operating states, PCUs/HT6s must be able to detect whether the control unit switchover function exists.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 126
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.3 Several operator panel fronts and NCUs, standard functionality Examples For complete examples of configuration files, please refer to Section "Examples" in this description. Syntactic declarations The configuration file must be generated as an ASCII file. The syntax is the same as that used in Windows *.ini"...
Page 127
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.3 Several operator panel fronts and NCUs, standard functionality II. Connections Description of connections from the operator panel components to the NCU to be addressed. An entry of the following type is required for each operator panel. Table 2-2 Description of connections Descriptive entry...
Page 128
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.3 Several operator panel fronts and NCUs, standard functionality IV. Description of operator component(s) A separate entry must be generated for each operator panel connected to the bus. A maximum of two entries in SW 3.x. Table 2-4 Description of operator component Descriptive entry...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.3 Several operator panel fronts and NCUs, standard functionality *) If bus = mpi, the following applies: Since the associated NCU always occupies the next- higher address than the PLC, the PLC address must not be 31. Address 31 can, for example, be assigned to a PCU.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.3 Several operator panel fronts and NCUs, standard functionality 2.3.3 Creating and using the configuration file HMI Embedded, OP030 The NETNAMES.INI ASCII file generated on the PC or programming device is loaded via the RS-232 interface and permanently stored in the FLASH memory of the control units.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.3 Several operator panel fronts and NCUs, standard functionality Commissioning The NCUs are assigned bus address 13 in the delivery state. Every NCU on the bus must be allocated its own, unique bus address. Addresses are assigned in: ●...
Page 132
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.3 Several operator panel fronts and NCUs, standard functionality Note Please note: • Bus address 13 must be reserved for servicing purposes (and should not be assigned to a bus node). •...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.5 NCU link 2.5.2 Technological description Figure 2-15 Sectional diagram of a drum changeover Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Page 136
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 138
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.6 Link axes ● Lead link axis leading axis From the point of view of an NCU (2) that traverses following axes, a that is traversed by another NCU (1). The required data for the master value axis are supplied via →...
Page 140
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.6 Link axes Figure 2-17 Configuration of link axes Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Page 141
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.6 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. There are two types of NCU axis, i.e. local axes and link axes.
Page 142
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.6 Link axes Channel axes are assigned to logical machine axis image A via machine data: MD20070 $MC_AXCONF_MACHAX_USED Viewed from the part program, the only accessible machine axes are those which can be addressed by the channel (possibly via axis container, see below) via the logical machine axis image at a given point in time.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 Views of axes...
Page 144
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 145
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.6 Link axes Response of the AXIS-VAR server to errors If the server cannot supply any values for an axis (e.g. because the axis concerned is a link axis), then it returns a default value (generally 0). For the purposes of testing, the machine data of the axis data servers below can be set to sensitive, with the result that it returns an error message instead of default values: MD11398 AXIS_VAR_SERVER_SENSITIVE...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 148
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.6 Link axes Powering up an NCU grouping If one NCU in the grouping is restarted, e.g. due to changes to machine data, then the other NCUs in the grouping also execute a warm restart. Nibbling and punching To execute nibbling and punching operations, high-speed inputs and outputs must be connected and parameterized on the "interpolation"...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.6 Link axes 2.6.5 Programming with channel and machine axis identifiers Channel axis identifier Example: WHENEVER $AA_IW[Z] < 10 DO ...;Current position of Z axis Machine axis identifier Example: WHENEVER $AA_IW[AX3] < 10 DO ...;Scan current position of machine axis AX3 This method of programming is permitted only if machine axis AX3 is known in the channel at the time of scanning.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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. Container axes Axes in an axis container are also referred to as container axes.
Page 151
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 152
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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): ③ 3rd channel axis Z of Channel 1 = 4th machine axis of NCU1 Explanation: The 3rd channel axis (MD20070 $MC_AXCONF_MACHAX_USED[2]) shows on the 8th machine axis in the logical NCK machine axis image...
Page 153
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 154
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.7 Axis container Activation of axis container rotation The application must ensure that the desired local or link axes are addressed by issuing commands in the part program for rotating the axis container to a specific position. 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 155
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.7 Axis container The variant below is used with a view to facilitating commissioning: Programming Comment AXCTSWED(CT1) ; The function name represents: AXis ConTainer SWitch Enable Direct The axis container rotates according to the settings in setting data: SD41700 $SN_AXCT_SWWIDTH[container number] This call may only be used if the other channels, which have axes in the container are in the RESET state.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.7 Axis container Home channel of an axis container axis If more than one channel has access authorization ("reference") to the axis via the machine data, write authorization can be passed to the axis (setpoint input): MD20070 $MC_AXCONF_MACHAX_USED This machine data below creates a standard assignment between an axis and a channel: MD30550 $MA_AXCONF_ASSIGN_MASTER_CHAN...
Page 157
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 160
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 161
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.7 Axis container Command axes A container axis in a container enabled for rotation cannot be declared a command axis. The traverse request is stored in the channel and executed on completion of the axis container rotation.
Page 162
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.7 Axis container Gantry grouping Gantry axes cannot be axes in an axis container. Drive alarms When a drive alarm is active for a container axis, then the associated axis container cannot rotate until the alarm cause has been eliminated.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.8 Cross-NCU user communication, link variables Cross-NCU user communication, link variables Introduction With large machine tools, rotary indexing machines and multi-spindle machines whose motion sequences are controlled by more than one NCU the applications on a single NCU must be able to exchange information rapidly with the other NCUs connected via link module.
Page 164
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.8 Cross-NCU user communication, link variables Structure Each NCU connected to an entire system with link module sees a link memory in which the link variables are stored uniformly. Data exchange takes place after changes in the following interpolation cycle.
Page 165
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.8 Cross-NCU user communication, link variables Addressing with access to global variables Index i always represents the distance in bytes from the beginning of the link memory. The index is counted from 0. This means that: Type Interpretation of (i) (The counting begins at 0 in each case)
Page 166
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.8 Cross-NCU user communication, link variables Number of write elements The write elements available for writing to link variables are limited. Their number is defined by the machine data: MD28160 $MC_MM_NUM_LINKVAR_ELEMENTS. If no more write elements are available for an intended write process, alarm 14763 is issued.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.8 Cross-NCU user communication, link variables 2.8.2 System variables of the link memory The following system variables are available for accessing the link memory: Legend: r: Read w: Write R: Read with implicit preprocessing stop W: Write with implicit preprocessing stop PP: Part program SA: Synchronized action...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.8 Cross-NCU user communication, link variables 2.8.3 Link axis drive information You can access the drive data via the machine axis identifier, even if the axis is being applied to another NCU. The following system variables of the drive with machine axis identifiers [n] (previously only channel axis identifiers) can be used: ●...
Page 169
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.8 Cross-NCU user communication, link variables Requirements The following machine data must be set to the value 1: MD36730 $MA_DRIVE_SIGNAL_TRACKING Sequence The values of the drive system variables of a link axis are provided in two steps: 1.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 171
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 172
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.9 Configuration of a link grouping The machine data below specifies for the software which NCUs correspond to the bus terminating resistors: MD12520 $MN_LINK_TERMINATION 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.10 Communication in link grouping 2.10 Communication in link grouping Although communication by means of link modules is high-speed communication, the following aspects have to be taken into account during configuration. Data transport Both cyclic and acyclic services are used for data communication.
Page 174
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 175
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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) Configuration limit The diagram above illustrates how the communication overhead grows as the number of NCUs increases.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.11 Lead link axis 2.11 Lead link axis Term A lead link axis allows read access to the axis data (setpoint, actual value, ...) on another NCU. Introduction The lead link axis concept offers a solution for the following problems: The individual machining and handling stations are to move synchronous with or in relation to a common master value in so-called clocked sequences.
Page 177
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 ● Electronic gear (ELG) ●...
Page 178
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 179
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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. ●...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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. The travel program must not contain any special functions or operations.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.12 NCU link with different interpolation cycles 2.12 NCU link with different interpolation cycles Problem description In the engineering world, parts which deviate slightly from a precise round/cylindrical shape are also required. (Example: Pistons that are oval in the manufacturing state. The operating temperature gives them their required almost round shape during use).
Page 182
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.).
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 184
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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" position control cycle Position control cycle j "faster"...
Page 185
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.12 NCU link with different interpolation cycles Setpoint delay From NCU-U's point of view, it is interpolating with the local X axis and the two link axes C and Z when performing eccentric machining. To achieve a correct contour, it is necessary to compensate for the time delay which occurs when the setpoints are transferred to the link axes and for the differences in clock cycles by delaying the setpoints to the local X axis.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.12 NCU link with different interpolation cycles 2.12.2 Different position control cycles The general solution described in Section "Diagram of general solution" also permits different position control cycles for NCU-A/NCU-B and NCU-U as illustrated in the diagram "Schematic example of a configuration with several NCUs and eccentric machining unit"...
Page 187
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.12 NCU link with different interpolation cycles Information The setpoint delay for the three controller structures ● Without feedforward control (index 0) ● Speed feedforward control (index 1) ● Torque feedforward control (index 2) is displayed in read-only machine data: MD32990 $MA_POSCTRL_DESVAL_DELAY_INFO Negative values in machine data:...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.12 NCU link with different interpolation cycles 2.12.3 Supplementary conditions ● The option "different interpolation cycle" can only be used in conjunction with NCU link (options, dependent on the axis number). The connected NCUs must all be fitted with the link module hardware components.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.12 NCU link with different interpolation cycles 2.12.6 System variable with different interpolation cycles There are no new system variables. The existing general system variable $A_LINK_TRANS_RATE only displays a value not equal to zero in the link communication cycle on an NCU with an IPO cycle with a shorter length than the link communication cycle.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.13 Link grouping system of units 2.13 Link grouping system of units Introduction Cross-NCU interpolations are possible in the link grouping with: ● Link axes (see "Link axes") ● Lead link axes (see "Lead link axes") ●...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.14 Supplementary conditions 2.14 Supplementary conditions 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.14 Supplementary conditions 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples 2.15 Examples 2.15.1 Configuration file NETNAMES.INI with control unit management option A sample configuration file NETNAMES.INI for the MMC 1 control unit for a system with four NCUs on the OPI is outlined below. See Section "Structure of configuration file"...
Page 195
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples HMI description [param MMC_1] mmc_typ = 40 ; = 0100 0000: HMI is server and main control panel mmc_bustyp = OPI ; Bus the HMI is attached to mmc_address = 10 ;...
Page 196
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 ; Channel to be set on power up ShowChanMenu = TRUE ;...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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: ●...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples Active/passive operating mode An online operator panel can operate in two different modes: Active mode: Operator can control and monitor Passive mode: Operators sees header information and the "passive" identifier. MCP switchover As an option, an MCP assigned to the operator panel can be switched over at the same time.
Page 199
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples The target PLC sends the operator panel a positive or negative acknowledgement: Pos. acknowledgement: Target PLC returns the client identification to the operator panel. (ONL_CONFIRM, DB19, DBW102). Operator panel occupies the online-request interface with its parameters (client identification, MMC type, MCP address).
Page 200
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 201
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 202
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 203
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples If an MCP is assigned to the MMC and activated, it is now deactivated by the PLC. The PLC gives permission for a changeover to the active operating mode with MMC2_ACTIVE_PERM = TRUE.
Page 204
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 205
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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, 01/2008, 6FC5397-1BP10-3BA0...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 207
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples Figure 2-36 MMC_1 is linked online to NCU_1 and wants to switch over to NCU_2, switchover disable is set in PLC_1 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 208
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 209
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 210
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 211
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 212
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 213
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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, 01/2008, 6FC5397-1BP10-3BA0...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples 2.15.3.2 One operator panel front and three NCUs A sample configuration file is given below for a system consisting of one control unit and three NCUs on the OPI. Any adaptations which may need to be made are described in Section "Configurations".
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples [param NCU_3] name= any_name3 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 217
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 ; Extcall not required for a PCU ;...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 220
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 221
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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] logNCName = NCU_1 ChanNum = 2...
Page 222
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples Step 1b): Operator panel 2 Entries for HMI Embedded/PCU20: [own] owner= PCU20 ; Connection entry [conn PCU20] conn_1 = NCU_1 conn_2 = NCU_2 ; Network parameters [param network] bus= opi ;...
Page 224
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 ● 2 NCUs with two channels each Figure 2-47 Operator panel and HT6 for two NCUs The operator panel (server) can access NCU1 and NCU2.
Page 226
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 ; is configured. name = MMC_Serv start_mode = ONLINE ;...
Page 227
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 ; Connection part [conn HT_6] conn_1 = NCU_2 ;...
Page 228
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples ; Channel data [chan HT_6] DEFAULT_logChanSet = Station_2 DEFAULT_logChan = N1_K1 ShowChanMenu = True logChanSetList = Station_2 [Station_2] logChanList = N2_K1, N2_K2 [N2_K1] logNCName = NCU_2 ChanNum = 1 [N2_K2] logNCName = NCU_2 ChanNum = 2...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 230
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 231
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples 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 Type Type...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples MCP1Timeout := S5T#700MS, MCP1Cycl := S5T#200MS, MCP1Stop := TRUE, // MCP disabled NCCyclTimeout := S5T#200MS, NCRunupTimeout := S5T#50S); 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples T DB21.DBB 4; // Guide override interface L EB 3; //Override input byte for feed <>i; //Match? SPB wei2; //No, jump S M100.3; //Yes, set auxiliary flag 2 // When override values match, call the MCP program again MCP: CALL "MCP_IFM"( //FC 19 BAGNo := B#16#1, ChanNo := B#16#1,...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 236
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 ● Connection of the HT 6 to the OPI/MPI via a PROFIBUS repeater. Figure 2-48 Connecting the HT 6 using a PROFIBUS repeater A PROFIBUS repeater must be connected upstream of the HT 6 distributor box for each...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 ;...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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. Part program with movement of a Part program ...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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. Example 1 rl = $AN_AXCTAS[ctl];...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples Note Programming in the NC program: WHILE ($AN_AXCTSWA[n] == 0) ENDWHILE cannot be used as a reliable method of determining whether an earlier axis container rotation has finished. Although in software version 7.x and later, $AN_AXCTSWA performs an implicit preprocessing stop, this type of programming cannot be used, as the block can be interrupted by a reorganization.
Page 242
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples ● Couplings: – If drum A rotates, all main spindles of this drum are subordinate to another group of slides. – If drum B rotates, all main counterspindles and all transfer axes of this drum are subordinate to another group of slides.
Page 243
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples Figure 2-49 Schematic diagram of main spindles HSi, countersp. GSi, bar feed axis STNi and transfer axes ZGi Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Page 244
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 245
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples Axes of master NCU Table 2-9 Axes of master NCU: NCUa Common axes Local axes Comment TRV (drum V) Master NCU only TRH (drum H) Master NCU only Slide 1 Slide 1 Slide 2 Slide 2...
Page 246
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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. Exceptions: During the parts change from front-plane machining in drum V to rear-plane machining in drum H, the speeds of the main spindle and the counterspindle must be synchronized...
Page 247
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples Table 2-10 NCUa, position: a, channel: 1, slide: 1 Channel axis name ..._MACHAX $MN_ Container, slot Machine axis name _USED AXCONF_LOGIC_MACH entry (string) AX_TAB, AX1: CT1_SL1 NC1_AX1 AX2: CT3_SL1 NC1_AX2 AX3: AX4:...
Page 248
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples Note * due to program coordination via axis positions and 4-axis machining in one position Entries in the axis container locations should have the following format: "NC1_AX.." with the meaning NC1 = NCU 1.
Page 249
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.15 Examples Table 2-12 Axis container and their position-dependent contents for drum A Container Slot Initial position Switch 1 Switch 2 Switch 3 Switch 4 = (TRA 0°) (TRA 90°) (TRA 180°) (TRA 270°) (TRA 0°) NC1_AX1, HS1...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 251
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 ;...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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.
Several Operator Panels on Several NCUs, Distributed Systems (B3) 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 A sinusoidal approximation via a cubic polynomial per 45 degrees of spindle revolution...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.16 Data lists 2.16 Data lists 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 SERVO_FIFO_SIZE Size of data buffer between interpolation and position controller task (up to software version 5, then MD 18720 ,see below)
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.16 Data lists 2.16.1.3 Axis/spindle-specific machine data Number Identifier: $MA_ Description 30550 AXCONF_ASSIGN_MASTER_CHAN Default assignment between an axis and a channel 30554 AXCONF_ASSIGN_MASTER_NCU Initial setting defining which NCU generates setpoints for the axis 30560 IS_LOCAL_LINK_AXIS Axis is a local link axis...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.16 Data lists 2.16.3.2 Signals from HMI/PLC DB number Byte.Bit Description DBW100 ONL_REQUEST Online request from MMC DBW102 ONL_CONFIRM Acknowledgement to MMC DBW104 PAR_CLIENT_IDENT MMC bus address, bus type DBB106 PAR_MMC_TYP Main/secondary control panel/alarm server DBB107 PAR_MSTT_ADR Address of MCP to be activated DBB108...
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.16 Data lists 2.16.3.4 Signals to axis/spindle DB number Byte.bit Description 31, ... 60.1 NCU link axis active 31, ... 61.1 Axis container rotation active 31, ... 61.2 Axis ready Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Page 258
Several Operator Panels on Several NCUs, Distributed Systems (B3) 2.16 Data lists Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Operation via PG/PC (B4) 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 260
Operation via PG/PC (B4) 3.1 Brief Description Machine control panel, OP030 and NCU are all connected either to the OPI bus or the MPI bus. A homogenous network must be provided with respect to these components. Implementation Variant 2 Operator panel front and up to three NCUs The machine control panel is permanently allocated to the NCU concerned.
Operation via PG/PC (B4) 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 ●...
Operation via PG/PC (B4) 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> (See hardware description of card) Scope of delivery System software:...
Page 263
Operation via PG/PC (B4) 3.2 Software installation 2. Enter installation path Select the directory plus the installation path (see screenshot) to which you wish to copy the software. Press "Continue" to continue the installation or "Exit Setup" to interrupt the installation procedure.
Page 264
Operation via PG/PC (B4) 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 265
Operation via PG/PC (B4) 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 266
Operation via PG/PC (B4) 3.2 Software installation 7. Make settings OPI interface (1.5 Mbaud), Configuration: 1 MMC to 1 NCU (on delivery) Additional settings are not required. MPI interface (187.5 Kbaud), Configuration: 1 MMC to 1 NCU (on delivery) 1. Determination of the NCK/PLC bus address –...
Page 267
Operation via PG/PC (B4) 3.2 Software installation – "netnames.ini" file The following lines in the file must be changed: # bus = opi must be replaced by = mpi # nck_address = 13 must be replaced by = 3 (if PLC ≥ software version 3.2) = 13 (if PLC <...
Operation via PG/PC (B4) 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.
Operation via PG/PC (B4) 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. Press function key Shift + F9. 3.
Operation via PG/PC (B4) 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 271
Operation via PG/PC (B4) 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. ● The R field is selected with the F9 key or by mouse click. Selection of this field activates the Recall function, i.e.
Operation via PG/PC (B4) 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...
Operation via PG/PC (B4) 3.4 Simulation of part programs 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.
Operation via PG/PC (B4) 3.5 Marginal conditions Marginal conditions The "Operation via PG/PC" function is available in the basic version with software version 3.1 and higher. With software version 3.1, the number of NCUs which may be connected is limited to one and the number of operator panel fronts to two. One of these must be an OP030.
Manual and Handwheel Travel (H1) Product brief 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.
Manual and Handwheel Travel (H1) 4.1 Product brief 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 277
Manual and Handwheel Travel (H1) 4.1 Product brief 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 278
Manual and Handwheel Travel (H1) 4.1 Product brief 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;...
Manual and Handwheel Travel (H1) 4.1 Product brief 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.
Manual and Handwheel Travel (H1) 4.1 Product brief 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.
Manual and Handwheel Travel (H1) 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, …...
Manual and Handwheel Travel (H1) 4.2 Continuous travel 4.2.2 Distinction between inching mode continuous mode Selection In JOG mode, we distinguish between traversing in inching mode and in continuous mode. The selection is made using general setting data SD41050 $SN_JOG_CONT_MODE_LEVELTRIGGRD (inching mode/continuous mode in continuous JOG) and applies to all axes.
Manual and Handwheel Travel (H1) 4.2 Continuous travel Abort traversing movement The traversing movement can be stopped and aborted by means of the following operations or monitoring functions: ● Pressing the same traversing key again (second rising edge) ● Pressing the traversing key for the opposite direction ●...
Manual and Handwheel Travel (H1) 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.
Manual and Handwheel Travel (H1) 4.3 Incremental travel (INC) 4.3.2 Distinction between inching mode and continuous mode Selection When machine axes are in incremental mode, we also distinguish between inching mode and continuous mode. The selection is made using general machine data MD11300 $MN_JOG_INC_MODE_LEVELTRIGGRD (INC and REF in inching mode).
Manual and Handwheel Travel (H1) 4.3 Incremental travel (INC) CAUTION Software limit switches and working-area limitations are only activated after reference point approach. ● On deselection or change of the current increment (e.g., change from INC100 to 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.
Manual and Handwheel Travel (H1) 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 288
Manual and Handwheel Travel (H1) 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 289
Manual and Handwheel Travel (H1) 4.4 Handwheel travel in JOG Velocity In handwheel travel the following axis velocities, effective during JOG mode, are used: SD41110 $SN_JOG_SET_VELO (axis velocity in JOG), SD41130 $SN_JOG_ROT_AX_SET_VELO (axis velocity of rotary axis in JOG mode), MD32020 $MA_JOG_VELO (conventional axis velocity) Because of the limited feedrate, the axis is not able to follow the handwheel rotation synchronously, especially in the case of a large pulse weighting, and therefore overtravels.
Page 290
Manual and Handwheel Travel (H1) 4.4 Handwheel travel in JOG Movement in the opposite direction MD11310 $MN_HANDWH_REVERSE (threshold for direction change handwheel) Depending on the machine data mentioned above, behavior for a change of traversing direction is as follows: ● If the handwheel is moved in the opposite direction, the resulting distance is computed and the calculated end point is approached as fast as possible.
Manual and Handwheel Travel (H1) 4.4 Handwheel travel in JOG Revolutional feedrate In JOG mode, the response of the axis/spindle also depends on the setting made in setting data SD41100 $SN_JOG_REV_IS_ACTIVE (JOG: revolutional/linear feedrate). SD41100 $SN_JOG_REV_IS_ACTIVE (JOG: revolutional/linear feedrate) Active An axis/spindle is always traversed with revolutional feedrate MD32050 $MA_JOG_REV_VELO (revolutional feedrate for JOG) MD32040 $MA_JOG_REV_VELO_RAPID...
Page 292
Manual and Handwheel Travel (H1) 4.4 Handwheel travel in JOG Handwheel travel with path default If a pending stop condition is not an abort criterion (see MD32084 $MA_HANDWH_STOP_COND MD20624 $MC_HANDWH_CHAN_STOP_COND) during handwheel travel with path default (MD11346 $MN_HANDWH_TRUE_DISTANCE == 1 or == 3), the "travel request"...
Page 293
Manual and Handwheel Travel (H1) 4.4 Handwheel travel in JOG 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 294
Manual and Handwheel Travel (H1) 4.4 Handwheel travel in JOG With velocity specification If the handwheel is no longer moved with velocity specification (MD11346 $MN_HANDWH_TRUE_DISTANCE == 0 or == 2), the "travel request" PLC signal is reset. The "travel request" PLC signal is also reset when the handwheel is deselected. Figure 4-5 Signal/timing diagram, handwheel travel with velocity specification when stop condition is abort criterion...
Manual and Handwheel Travel (H1) 4.4 Handwheel travel in JOG 4.4.3 Double use of the handwheel Alarm 14320 The double use of a handwheel for DRF and velocity or path override, including contour handwheel, is prevented and displayed via the self-acknowledging alarm 14320 (Handwheel %1 used twice (%2) in channel %3 axis %4), if the handwheel affects an axis in different ways.
Page 296
Manual and Handwheel Travel (H1) 4.4 Handwheel travel in JOG Example: Path override of the PLC axis Assumption: Channel 1: Handwheel 2 is assigned to machine axis 4. If an axis movement with path override of the 4th machine axis triggered by FC18 is processed in the main run, machine axis 4 cannot be traversed with DRF.
Manual and Handwheel Travel (H1) 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 298
Manual and Handwheel Travel (H1) 4.5 Handwheel override in automatic mode Path default 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 299
Manual and Handwheel Travel (H1) 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 300
Manual and Handwheel Travel (H1) 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.
Manual and Handwheel Travel (H1) 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 default: The handwheel pulses arriving in the meantime are summated and stored.
Page 302
Manual and Handwheel Travel (H1) 4.5 Handwheel override in automatic mode Positioning axis FDA[AXi] = [feedrate value] Syntax for handwheel override: Example 1: Activate velocity override N10 POS[U]=10 FDA[U]=100 POSA[V]=20 FDA[V]=150 . . . POS[U]=10 Target position of positioning axis U FDA[U]=100 Activate velocity override for positioning axis U;...
Manual and Handwheel Travel (H1) 4.5 Handwheel override in automatic mode Example 3: Activate velocity override N10 G01 X10 Y100 Z200 FD=1500 . . . X10 Y100 Z200 Target position of path axes X, Y and Z FD=1500 Activate velocity override for path axes; path velocity = 1500 mm/min Concurrent positioning axis The handwheel override for concurrent positioning axes is activated from the PLC via FC15...
Page 304
Manual and Handwheel Travel (H1) 4.5 Handwheel override in automatic mode Dry-run feedrate With active dry run DB21, ... DBX0.6 (activate dry-run feedrate) = 1, the dry-run feedrate is always effective SD42100 $SC_DRY_RUN_FEED. In this way, the axis is traversed to the programmed target position at dry-run feedrate without any influence from the handwheel despite the active handwheel override with path default (FDA[AXi] = 0), i.e., the path default is ineffective.
Manual and Handwheel Travel (H1) 4.6 Third handwheel via SIMODRIVE 611D (SINUMERIK 840D) Third handwheel via SIMODRIVE 611D (SINUMERIK 840D) Function Via cable distributor (Peripheral interface of the NCU: X121) two handwheels can be connected. A third handwheel can be connected via an encoder interface of a SIMODRIVE 611D drive, for instance, to be used as contour handwheel.
Page 306
Manual and Handwheel Travel (H1) 4.6 Third handwheel via SIMODRIVE 611D (SINUMERIK 840D) Activation, machine data and interface signals The following machine data and interface signals are required to activate the third handwheel: Machine data Description MD11340 $MN_ENC_HANDWHEEL_SEGMENT_NR 3rd handwheel: drive type MD11342 $MN_ENC_HANDWHEEL_MODULE_NR 3rd handwheel: Drive no.
Manual and Handwheel Travel (H1) 4.7 Contour handwheel/path default using handwheel (optional for SINUMERIK 840D) Contour handwheel/path default using handwheel (optional for SINUMERIK 840D) Function When the function is activated, the feedrate of path and synchronized axes can be controlled via a handwheel in AUTOMATIC and MDI modes.
Page 308
Manual and Handwheel Travel (H1) 4.7 Contour handwheel/path default using handwheel (optional for SINUMERIK 840D) Traversing direction The traversing direction depends on the direction of rotation: ● Clockwise → Results in travel in the programmed direction If the block-change criterion (IPO end) is reached, the program advances to the next block (response identical to G60).
Manual and Handwheel Travel (H1) 4.8 DRF offset Supplementary conditions ● Preconditions Fixed feedrate, dry-run feedrate, thread cutting, or tapping must not be selected. ● Limit values The acceleration and velocity of the axes are limited to the values defined in the machine data.
Page 310
Manual and Handwheel Travel (H1) 4.8 DRF offset CAUTION The work offset introduced via the DRF offset is always effective in all modes and after a RESET. It can, however, be suppressed non-modally in the part program. Velocity reduction The velocity generated by the handwheel for DRF can be reduced as compared to the JOG velocity via axial machine data MD32090 $MA_HANDWH_VELO_OVERLAY_FACTOR (ratio of JOG velocity to handwheel velocity).
Page 311
Manual and Handwheel Travel (H1) 4.8 DRF offset Figure 4-7 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.
Manual and Handwheel Travel (H1) 4.9 Start-up: Handwheels Start-up: Handwheels 4.9.1 General information In order to operate handwheels of a SINUMERIK control system, they have to be parameterized via NCK machine data. If the handwheels are not connected to the control directly through a cable distributor, other measures must be taken, e.g., in case of connection through PROFIBUS-MCP or handwheel module, the insertion and configuration of the module with SIMATIC STEP 7, HW config.
Manual and Handwheel Travel (H1) 4.9 Start-up: Handwheels 4.9.2 Connection via cable distributor Parameter setting Parameterization of handwheels connected via cable distributor is done via the following NCK machine data: Handwheel_No._in_NCK - 1 ● MD11350 $MN_HANDWHEEL_SEGMENT[< >] = 1 When connected via cable distributor, the hardware segment has always to be entered as 1 (local hardware segment).
Manual and Handwheel Travel (H1) 4.9 Start-up: Handwheels 4.9.3 Connection via SIMODRIVE 611D (SINUMERIK 840D) Parameter setting For SINUMERIK 840D a third handwheel can be connected via an encoder interface of a drive, in connection with SIMODRIVE 611D. Parameterization of the third handwheel is done via the following NCK machine data: Encoder interface ●...
Manual and Handwheel Travel (H1) 4.9 Start-up: Handwheels 4.9.4 Connection via PROFIBUS 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 ● MD11350 $MN_HANDWHEEL_SEGMENT[< >] = 5 When connected via PROFIBUSmodule, the hardware segment has always to be entered as 5 (PROFIBUS).
Page 316
Manual and Handwheel Travel (H1) 4.9 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...
Manual and Handwheel Travel (H1) 4.9 Start-up: Handwheels Machine data Value Description MD11351 $MN_HANDWHEEL_MODULE[3] No handwheel parameterized MD11352 $MN_HANDWHEEL_INPUT[3] No handwheel parameterized 5th handwheel in NCK MD11350 $MN_HANDWHEEL_SEGMENT[4] Hardware segment: PROFIBUS MD11351 $MN_HANDWHEEL_MODULE[4] Reference to logical base address of the handwheel slot of the 3rd MCP MD11352 $MN_HANDWHEEL_INPUT[4] 1st handwheel in handwheel slot...
Page 318
Manual and Handwheel Travel (H1) 4.9 Start-up: Handwheels Example Three handwheels are connected to a SINUMERIK 840D sl through 2 "MCP 483C IE" machine control panels. Two handwheels can be connected to a machine control table "MCP 483C IE". Handwheel number...
Manual and Handwheel Travel (H1) 4.10 Special features of manual travel 4.10 Special features of manual travel 4.10.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.
Manual and Handwheel Travel (H1) 4.10 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 321
Manual and Handwheel Travel (H1) 4.10 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.
Manual and Handwheel Travel (H1) 4.10 Special features of manual travel 4.10.3 Monitoring functions Limitations The following limitations are active for manual travel: ● Working-area limitation (axis must be referenced) ● Software limit switches 1 and 2 (axis must be referenced) ●...
Manual and Handwheel Travel (H1) 4.10 Special features of manual travel Maximum velocity and acceleration The velocity and acceleration used during manual travel are defined by the startup engineer for specific axes using machine data. The control limits the values acting on the axes to the maximum velocity and acceleration specifications.
Page 324
Manual and Handwheel Travel (H1) 4.10 Special features of manual travel Transverse axes If a geometry axis is defined as a transverse axis and radius programming is selected (MD20100 $MC_DIAMETER_AX_DEF (geometry axes with transverse-axis functions)), the following features should be observed when traversing in JOG: ●...
Manual and Handwheel Travel (H1) 4.11 Approaching a fixed point in JOG 4.11 Approaching a fixed point in JOG 4.11.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.
Manual and Handwheel Travel (H1) 4.11 Approaching a fixed point in JOG 4.11.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 327
Manual and Handwheel Travel (H1) 4.11 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 328
Manual and Handwheel Travel (H1) 4.11 Approaching a fixed point in JOG Special features of incremental travel If, during incremental travel, the fixed point is reached before the increment is completed, then the increment is considered to have been completed fully. This is the case even when only whole increments are traveled.
Manual and Handwheel Travel (H1) 4.11 Approaching a fixed point in JOG 4.11.3 Parameter setting 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) Value Description...
Manual and Handwheel Travel (H1) 4.11 Approaching a fixed point in JOG 4.11.5 Supplementary Conditions Axis is indexing axis The axis is not traversed and an alarm is output if the axis to be traversed is an indexing axis and the fixed point position to be approached does not match an indexing position. Frames active All active frames are ignored.
Manual and Handwheel Travel (H1) 4.11 Approaching a fixed point in JOG 4.11.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"...
Manual and Handwheel Travel (H1) 4.12 Data lists 4.12 Data lists 4.12.1 Machine data 4.12.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...
Manual and Handwheel Travel (H1) 4.12 Data lists 4.12.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...
Manual and Handwheel Travel (H1) 4.12 Data lists 4.12.3 Signals 4.12.3.1 Signals to NC DB number Byte.bit Description Handwheel 1 is operated Handwheel 2 is operated Handwheel 3 is operated 4.12.3.2 Signals from NC DB number Byte.bit Description 97, 98, 99 Channel number for geometry axis, handwheel 1, 2, 3 100, 101, 102 Axis number for handwheel 1, 2, 3, handwheel selected and machine axis...
Manual and Handwheel Travel (H1) 4.12 Data lists DB number Byte.bit Description 21, ... 100.5 Handwheel 1 active as contour handwheel; 101.5 handwheel 2 active as contour handwheel; 102.5 handwheel 3 active as contour handwheel 21, ... 332.5, 332.4 Orientation axis travel request 336.5, 336.4 340.5, 340.4 4.12.3.7...
Compensations (K3) Brief Description Reason The accuracy of machine tools is impaired as a result of deviations from the ideal geometry, power transmission faults and measuring system errors. Temperature differences and mechanical forces often result in great reductions in precision when large workpieces are machined.
Page 338
Compensations (K3) 5.1 Brief Description Interpolatory compensation The "Interpolatory compensation" function allows position-related dimensional deviations (for example, by leadscrew errors, measuring system errors or sag) to be corrected. The compensation values are measured during commissioning and stored in a table as a position-related value.
Compensations (K3) 5.2 Temperature compensation Temperature compensation 5.2.1 General information 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. The degree of expansion depends on the temperature and the thermal conductivity of the machine parts.
Page 340
Compensations (K3) 5.2 Temperature compensation Figure 5-1 Example of an error curve for heat expansion 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 (T) + tanβ...
Compensations (K3) 5.2 Temperature compensation 5.2.2 Temperature compensation parameters Temperature-dependent parameters Error curves for different temperatures can be defined for each axis, as illustrated in the diagram above. For each error curve the following parameters must be determined and then entered in the setting data: ●...
Page 342
Compensations (K3) 5.2 Temperature compensation Activation The following conditions must be fulfilled before temperature compensation can be applied: 1. The option must be enabled. 2. The compensation type is selected (MD32750 $MA_TEMP_COMP_TYPE). 3. The parameters for the compensation type are defined. 4.
Page 343
Compensations (K3) 5.2 Temperature compensation Position display The normal actual-value and setpoint position displays ignore the compensation values and show the position values of an ideal machine. Display the compensation values The total compensation value calculated from the temperature and sag compensation functions belonging to the current actual position is output in the "Service axes"...
Page 344
Compensations (K3) 5.2 Temperature compensation Specify parameters The temperature compensation parameters must now be set on the basis of the measurement results (see diagram above). Reference position P As the diagram above illustrates, there are basically two methods of configuring reference position P 1.
Page 345
Compensations (K3) 5.2 Temperature compensation = maximum measured temperature; [degrees] = temperature coefficient at T ; [µm/1000 mm] Therefore, based on the values from the above diagram: = 23° = 42° = 270 µm/1000 mm and tanß (T) is therefore: tanβ(T) = (T - 23 degrees) * 14.21 [µm/1000 mm] Example: At a temperature of T = 32.3 degrees, therefore: tanβ...
Compensations (K3) 5.3 Backlash compensation Backlash compensation Mechanical backlash During power transmission between a moving machine part and its drive (e.g. ball screw), there is normally a small amount of backlash because setting mechanical parts so that they are completely free of backlash would result in too much wear and tear on the machine. Thus, backlash (play) can occur between the machine component and the measuring system.
Page 347
Compensations (K3) 5.3 Backlash compensation Positive backlash The encoder leads the machine part (e.g. table). Since the actual position acquired by the encoder also leads the real actual position of the table, the table travels too short a distance (see diagram below). The backlash compensation value must be entered as a positive value here (= normal case).
Page 348
Compensations (K3) 5.3 Backlash compensation 2nd measuring system If there is a 2nd measuring system for the axis/spindle, a backlash compensation must be entered for this too. As the second measuring system is mounted in a different way from the first measuring system, the backlash can be different from that of the first measuring system.
Compensations (K3) 5.4 Interpolatory compensation Interpolatory compensation 5.4.1 General information Compensation methods The "interpolatory compensation" function uses the following two compensation methods: ● "Leadscrew error compensation" or "measuring system error compensation" (referred to as LEC below). ● Sag compensation or angularity error compensation, referred to as sag compensation below.
Page 350
Compensations (K3) 5.4 Interpolatory compensation Leadscrew and measuring system errors The measuring principle of "indirect measurement" on NC-controlled machines is based on the assumption that the lead of the ball screw is constant at any point within the traversing range, so that the actual position of the axis can be derived from the position of the drive spindle (ideal case).
Page 351
Compensations (K3) 5.4 Interpolatory compensation Entry of compensation table The size of the compensation table, i.e. the number of interpolation points, must first be defined in a machine data - a power ON must then be executed. Compensation tables can be loaded to the backed up NC user memory by two different methods.
Page 352
Compensations (K3) 5.4 Interpolatory compensation Logging Compensation tables are not saved with the series commissioning file. To archive compensation tables, they must be output via the serial interface on the PCU. The following compensation types can be selected for archiving in the operating area "Services", "Data OUT": ●...
Compensations (K3) 5.4 Interpolatory compensation 5.4.2 Measuring system error compensation (MSEC) Function The leadscrew error compensation function is part of the measuring system error compensation system. 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 354
Compensations (K3) 5.4 Interpolatory compensation Compensation interpolation points 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 (number of interpolation points for interpolat.
Page 355
Compensations (K3) 5.4 Interpolatory compensation ● Initial position ($AA_ENC_COMP_MIN[e,AXi]) The initial position is the axis position at which the compensation table for the relevant axis begins (≙ interpolation point 0). The compensation value for the initial position is $AA_ENC_COMP[e,0,AXi)]. For all positions smaller than the initial position the compensation value of interpolation point zero is used (does not apply for table with modulo).
Page 356
Compensations (K3) 5.4 Interpolatory compensation CAUTION When the compensation values are entered it is important that all interpolation points be assigned a position value within the defined range (i.e. no gaps). Otherwise, the previous valid position value is used for these interpolation points. Note Table parameters containing positional information are automatically converted when the system of units is changed (when the setting in the following machine data is altered):...
Compensations (K3) 5.4 Interpolatory compensation In the above example, the number of compensation interpolation points must correspond to the setting in the specified machine data; alarm 12400 "Element does not ex st" will otherwise be activated. The compensation table for this example requires at least 6.4KB of the non-volatile NC user memory (8 bytes per compensation value).
Page 358
Compensations (K3) 5.4 Interpolatory compensation Figure 5-9 Example of sag caused by own weight Depending on the requirement, several compensation relations can be defined for one axis. The total compensation value results from the sum of all the compensation values of this axis.
Page 359
Compensations (K3) 5.4 Interpolatory compensation 7. A weighting factor by which the table value is multiplied (definable as a setting data which can therefore be altered by the part program, PLC or the user at any time) can be introduced for every compensation table. 8.
Page 360
Compensations (K3) 5.4 Interpolatory compensation Figure 5-10 Generation of compensation value for sag compensation Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Page 361
Compensations (K3) 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 362
Compensations (K3) 5.4 Interpolatory compensation i.e. t = 0: 1. compensation table t = 1: 2. compensation table etc. Table parameters The position-related corrections for the relevant compensation relationship are stored as system variables in the compensation table. The following parameters must be set for the table: ●...
Page 363
Compensations (K3) 5.4 Interpolatory compensation The compensation value of interpolation point k is used for all positions larger than the end position (exception: table with modulo functions). The number of required interpolation points is calculated as follows: where 0 ≤ k < MD18342 $MN_MM_CEC_MAX_POINTS The following supplementary conditions apply to interpolation point k: 1.
Page 364
Compensations (K3) 5.4 Interpolatory compensation ● Compensation with modulo function ($AN_CEC_IS_MODULO[t]) When compensation with modulo function is activated, the compensation table is repeated cyclically, i.e. the compensation value at position $AN_CEC_MAX[t] (interpolation point $AN_CEC[t,k]) is immediately followed by the compensation value at position $AN_CEC_MIN[t] (interpolation point $AN_CEC[t,0]).
Page 365
Compensations (K3) 5.4 Interpolatory compensation Table example The following example shows the compensation table for sag compensation of axis Y1. Depending on the position of the Y1 axis, a compensation value is applied to the Z1 axis. The 1st compensation table (t = 0) is used for this. %_N_NC_CEC_INI CHANDATA(1) $AN_CEC [0,0]...
Page 366
Compensations (K3) 5.4 Interpolatory compensation compensation of the X1 axis is dependent both on the position of the X1 axis itself (since this determines angle of inclination b) and on the height of the boring mill (i.e. the position of the Z1 axis).
Page 367
Compensations (K3) 5.4 Interpolatory compensation positioned on the intersections of the grid (x-y plane). Compensation values between these interpolation points are interpolated linearly by the control. The following example explains in more detail how sag and angularity compensation can be implemented by a grid of 4 x 5 (lines x columns) in size.
Page 368
Compensations (K3) 5.4 Interpolatory compensation Fundamental principle The compensation values cannot be entered directly as a 2-dimensional grid. Compensation tables in which the compensation values are entered must be created first. A compensation table contains the compensation values of one line (four lines in the example, i.e.
Page 369
Compensations (K3) 5.4 Interpolatory compensation $AN_CEC [0,3] =0.4 $AN_CEC [0,4] =0.5 ;Function values f_2(x) for table with index [1] $AN_CEC [1,0] =0.6 $AN_CEC [1,1] =0.7 $AN_CEC [1,2] =0.8 $AN_CEC [1,3] =0.9 $AN_CEC [1,4] =1.0 ;Function values f_3(x) for table with index [2] $AN_CEC [2,0] =1.1 $AN_CEC [2,1]...
Page 370
Compensations (K3) 5.4 Interpolatory compensation ;Define compensation axis Z1 $AN_CEC_OUTPUT_AXIS[0] =(Z1) $AN_CEC_OUTPUT_AXIS[1] =(Z1) $AN_CEC_OUTPUT_AXIS[2] =(Z1) $AN_CEC_OUTPUT_AXIS[3] =(Z1) ;Define distance between interpolation points for compensation values in f tables $AN_CEC_STEP[0] =500.0 $AN_CEC_STEP[1] =500.0 $AN_CEC_STEP[2] =500.0 $AN_CEC_STEP[3] =500.0 ;Compensation starts at X1=0 $AN_CEC_MIN[0] =0.0 $AN_CEC_MIN[1]...
Page 371
Compensations (K3) 5.4 Interpolatory compensation ;Function values g_3(x) for table with index [6] $AN_CEC [6,0] =0.0 $AN_CEC [6,1] =0.0 $AN_CEC [6,2] =1.0 $AN_CEC [6,3] =0.0 ;Function values g_4(x) for table with index [7] $AN_CEC [7,0] =0.0 $AN_CEC [7,1] =0.0 $AN_CEC [7,2] =0.0 $AN_CEC [7,3] =1.0...
Page 372
Compensations (K3) 5.4 Interpolatory compensation ;Compensation starts at Y1=0 $AN_CEC_MIN[4] =0.0 $AN_CEC_MIN[5] =0.0 $AN_CEC_MIN[6] =0.0 $AN_CEC_MIN[7] =0.0 ;Compensation ends at Y1=900 $AN_CEC_MAX[4] =900.0 $AN_CEC_MAX[5] =900.0 $AN_CEC_MAX[6] =900.0 $AN_CEC_MAX[7] =900.0 $MA_CEC_ENABLE[Z1] = TRUE ;Activate compensation again NEWCONF ;Carry out a program test to check whether the ;compensation is effective G01 F1000 X0 X0 Z0 G90 R1=0 R2=0...
Compensations (K3) 5.4 Interpolatory compensation $MN_MM_CEC_MAX_POINTS[1]=5 $MN_MM_CEC_MAX_POINTS[2]=5 $MN_MM_CEC_MAX_POINTS[3]=5 $MN_MM_CEC_MAX_POINTS[4]=4 $MN_MM_CEC_MAX_POINTS[5]=4 $MN_MM_CEC_MAX_POINTS[6]=4 $MN_MM_CEC_MAX_POINTS[7]=4 $MA_CEC_MAX_SUM[AX3]=10.0 ; Define the maximum ; total compensation value $MA_CEC_MAX_VELO[AX3]=100.0 ; Limit the maximum changes in the ; total compensation value 5.4.4 Extension of the sag compensation with NCU link Application If a system is operated with NCU link, any number of axes of the NCU link grouping can be compensated mutually.
Page 374
Compensations (K3) 5.4 Interpolatory compensation ● Version 1: "Programming with channel axis identifier": Two different part programs TP1 and TP2 are created, they are then processed in different channels. Axis "ZZ" is coupled to "XR": View from the part program TP1 in Channel 1: $AN_CEC_INPUT_AXIS[0] = (XR) View from the part program TP2 in Channel 2: $AN_CEC_OUTPUT_AXIS[0] = (ZZ)
Page 375
Compensations (K3) 5.4 Interpolatory compensation These variables are set optionally if the axes (input and output) are not available on the local NCU. If one uses a channel axis identifier while programming $AN_CEC_INPUT_AXIS and $AN_CEC_OUTPUT_AXIS, then the system variables $AN_CEC_INPUT_NCU and $AN_CEC_OUTPUT_NCU become irrelevant.
Page 376
Compensations (K3) 5.4 Interpolatory compensation Configuration example The following figures (Configuration 1, Configuration 2 and Configuration 3) illustrate the axis configurations of an NCU link that is assembled from two NCUs. The two channels CHAN-1 and CHAN-2 of NCU-1 are displayed in Configuration 1. Here, the channel axis names that are defined via the machine data $MC_AXCONF_CHANAX_NAME_TAB are entered.
Compensations (K3) 5.4 Interpolatory compensation 5.4.5 Special features of interpolatory compensation Measurement The "Measurement" function supplies the compensated actual positions (ideal machine) required by the machine operator or programmer. TEACH IN The "TEACH IN" function also uses compensated position values to determine the actual positions to be stored.
Page 382
Compensations (K3) 5.4 Interpolatory compensation Access protection Currently there is no protection against access to the compensation tables. Setting servo enables As a result of the compensation relationship, a traversing movement by the base axis may also cause the compensation axis to move, making it necessary for controller enable signals to be set for these axes (PLC user program).
SIMODRIVE 611 digital (option for SINUMERIK 840D) Note The torque type of feedforward control is not supported by the SIMODRIVE 611 universal drive on the SINUMERIK 840D sl, SINUMERIK 840Di / 840Di sl / 840D with PROFIBUS-DP. Activating...
Page 384
Compensations (K3) 5.5 Dynamic feedforward control (following error compensation) Value Description The method of feedforward control is taken from MD32620. The feedforward control can be controlled within the part program; the FFWON/FFWOF instruction comes into effect immediately. The feedforward control can be controlled within the part program; the FFWON/FFWOF instruction comes into effect only after the axis stops the next time.
Page 385
Compensations (K3) 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 has an effect on the axis/spindle only during the next stop, you must set the following explicitly for each axis/spindle: MD32630 $MA_FFW_ACTIVATION_MODE = 2 Setting for interpolating axes...
Compensations (K3) 5.5 Dynamic feedforward control (following error compensation) Effect on servo gain factor When the feedforward control is set correctly, the response to setpoint changes in the controlled system under speed feedforward control is as dynamic as that of the speed control loop or, under torque feedforward control, as that of the current control loop, i.e.
Page 387
Compensations (K3) 5.5 Dynamic feedforward control (following error compensation) Commissioning The following procedure should be followed to activate the feedforward control: 1. Check the stoppage velocity in MD36060. 2. Check the existing following error of the axis in stoppage condition. 3.
Compensations (K3) 5.5 Dynamic feedforward control (following error compensation) 5.5.3 Speed feedforward control In the case of speed feedforward control, a velocity setpoint is also applied directly to the input of the speed controller. This additional setpoint can be weighted with a factor in the range 0 to 1, where "0"...
Page 389
Compensations (K3) 5.5 Dynamic feedforward control (following error compensation) With this value the following error will be reduced to nearly zero (i.e. control deviation is 0) when speed is constant. This should be checked by making positioning movements based on the actual "control deviation" shown on the service display. References: /FB1/ Function Manual, Basic Functions;...
Page 390
Compensations (K3) 5.5 Dynamic feedforward control (following error compensation) Example Example with X axis: MD32300 $MA_MAX_AX_ACCEL = 0.1 ; m/s2 MD32000 $MA_MAX_AX_VELO = 20000,0 ; mm/min ; Part program for setting the equivalent time constant G1 F20000 FFWON LOOP: X1000 GOTOB LOOP Example for active speed feedforward control of axes 1, 2 and 3.
Compensations (K3) 5.5 Dynamic feedforward control (following error compensation) Machine data MD10082 determines the lead time for the output of speed setpoints. The larger the value entered, the sooner the drive transfers the speed setpoints. The following meanings apply: ● 0 %: Setpoints are transferred at the beginning of the next position control cycle ●...
Page 392
Compensations (K3) 5.5 Dynamic feedforward control (following error compensation) Application Torque feedforward control is required to achieve high contour accuracy where the demands on the dynamics are great. If set correctly, the following error can almost be completely compensated even during high acceleration. Parameter The following axis-specific parameters must be defined during commissioning for torque feedforward control:...
Page 393
Compensations (K3) 5.5 Dynamic feedforward control (following error compensation) In addition to the response at constant traversal, it is particularly important to monitor the following error which occurs which the axis/spindle is accelerating. The adjustment criterion for the torque feedforward control is: following error ≈...
Compensations (K3) 5.6 Friction compensation (quadrant error compensation) Friction compensation (quadrant error compensation) 5.6.1 General information 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 395
Compensations (K3) 5.6 Friction compensation (quadrant error compensation) The neural network can reproduce a compensation curve of much better quality and precision. The function also allows simple automatic re-optimization directly at the machine. Circularity test The friction compensation function (both conventional and neural friction compensation) can be commissioned most easily by means of a circularity test.
Compensations (K3) 5.6 Friction compensation (quadrant error compensation) 5.6.2 Conventional friction compensation Type of friction compensation Conventional friction compensation is selected by entering the value 1 in machine data MD32490 $MA_FRICT_COMP_MODE (friction compensation method). Amplitude adaptation In many cases, the injected amplitude of the friction compensation value does not remain constant over the whole acceleration range.
Page 397
Compensations (K3) 5.6 Friction compensation (quadrant error compensation) Characteristic parameters The parameters of the adaptation characteristic in the diagram above must be entered as machine data for specific axes. Δn Injection amplitude of friction compensation value Δn Maximum friction compensation value MD32520 $FRICT_COMP_CONST_MAX[n] (maximum friction compensation value) Δn...
Compensations (K3) 5.6 Friction compensation (quadrant error compensation) 5.6.3 Commissioning of conventional friction compensation Circularity test The friction compensation function can be commissioned most easily by means of a circularity test. Here, deviations from the programmed radius (especially at the quadrant transitions) can be measured and displayed while traversing a circular contour.
Page 399
Compensations (K3) 5.6 Friction compensation (quadrant error compensation) 2. Enabling friction compensation After this, the friction compensation must be activated for the axis/spindle in question. Activate friction compensation with machine data → MD32500 $MA_FRICT_COMP_ENABLE[n] = 1 (friction compensation active) 3. Deactivate adaptation In order to commission friction compensation without adaptation, the adaptation must be deactivated.
Page 400
Compensations (K3) 5.6 Friction compensation (quadrant error compensation) Good friction compensation setting When the friction compensation function is well set, quadrant transitions are no longer noticeable. Figure 5-21 Quadrant transitions with correctly set friction 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.
Page 401
Compensations (K3) 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-23 Amplitude too high 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.
Page 402
Compensations (K3) 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 403
Compensations (K3) 5.6 Friction compensation (quadrant error compensation) 1. Calculate the adaptation characteristic For different radii and velocities ... 1..it is necessary to determine the required injection amplitudes, 2..it is necessary to check the compensatory effect of the injection amplitudes using the circularity test, 3.
Page 404
Compensations (K3) 5.6 Friction compensation (quadrant error compensation) For example, the following values were calculated for the injection amplitudes: MD32520 $FRICT_COMP_CONST_MAX [n] = 30 [mm/min] MD32530 $FRICT_COMP_CONST_MIN [n] = 10 [mm/min] Note If the results obtained at very low velocities are not satisfactory, then the computational resolution for linear positions must be increased in machine data: MD10200 $MA_INT_INCR_ PER_MM (computational resolution for linear positions) or for angular positions in machine data:...
Compensations (K3) 5.7 Neural quadrant error compensation Neural quadrant error compensation 5.7.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 406
Compensations (K3) 5.7 Neural 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.
Compensations (K3) 5.7 Neural 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 408
Compensations (K3) 5.7 Neural 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 409
Compensations (K3) 5.7 Neural quadrant error compensation Recommended values for – $AA_QEC_ACCEL_1: 20 mm/s (= 2% of $AA_QEC_ACCEL_3) – $AA_QEC_ACCEL_2: 600 mm/s (= 60% of $AA_QEC_ACCEL_3) – $AA_QEC_ACCEL_3: 1000 mm/s (maximum acceleration of working range) The value of the parameter $AA_QEC_ACCEL_3 must be entered as appropriate to the requirements;...
Page 410
Compensations (K3) 5.7 Neural quadrant error compensation ● $AA_QEC_MEAS_TIME_1/_2/_3 "Measurement time for calculating the error criterion in acceleration range 1/2/3" The measurement time is started, as soon as the criterion for injection of the compensation value is fulfilled (i.e. the set speed changes sign). The end of the measurement time is defined by the set parameter values.
Page 411
Compensations (K3) 5.7 Neural quadrant error compensation Case 1: Coarse quantization > 1; fine quantization = 1 (special case; usually the fine quantization is in the region of eight): In this case, the interpolation points of the characteristic are determined solely by coarse quantization (see diagram below).
Page 412
Compensations (K3) 5.7 Neural quadrant error compensation Case 2: Coarse quantization > 1; fine quantization > 1; "Detailed learning" is deactivated (this setting is the default): In this case, discrete linear interpolation is used for fine quantization between the interpolation points of the coarse quantization. The learning duration is identical with 1 because learning only occurs at the interpolation points of the coarse quantization.
Page 413
Compensations (K3) 5.7 Neural quadrant error compensation Case 3: Coarse quantization > 1; fine quantization > 1; "Detailed learning" active (its use is only recommended for very high precision requirements): With "Detailed learning", learning occurs both at the interpolation points of the coarse quantization and of the fine quantization.
Compensations (K3) 5.7 Neural quadrant error compensation 5.7.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. The learning process is controlled entirely by NC programs and is divided into the following areas: 1.
Page 415
Compensations (K3) 5.7 Neural quadrant error compensation Note The circularity test is an integral component of HMI Advanced. The commissioning tool must be used with HMI Embedded. Learning motion The axis traversing motions that must be executed to learn a specific response are generated by an NC program.
Page 416
Compensations (K3) 5.7 Neural quadrant error compensation Learning ON / OFF The actual learning process of the neural network is then activated in the reference NC program. This is done using the following high-level language command: QECLRNON(axis name 1, ... 4) Learning ON (for specified axes) Only during this phase are the characteristics changed.
Page 417
Compensations (K3) 5.7 Neural 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.
Compensations (K3) 5.7 Neural quadrant error compensation 5.7.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. The axis involved must perform reversals with acceleration values constant section by section.
Page 419
Compensations (K3) 5.7 Neural 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 420
Compensations (K3) 5.7 Neural 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").
Compensations (K3) 5.7 Neural quadrant error compensation 5.7.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 422
Compensations (K3) 5.7 Neural quadrant error compensation Figure 5-31 Example of directional friction compensation (circularity test) Changing the characteristic ranges The acceleration characteristic is divided into three ranges. 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 423
Compensations (K3) 5.7 Neural quadrant error compensation 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 immediately after this, it is possible to achieve an improvement by adapting the decay time.
Page 424
Compensations (K3) 5.7 Neural quadrant error compensation Figure 5-34 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 425
Compensations (K3) 5.7 Neural 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.
Compensations (K3) 5.7 Neural quadrant error compensation 5.7.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 427
Compensations (K3) 5.7 Neural quadrant error compensation ● Copy the Toolbox programs to the NC (with archive!) QECDAT.MPF QECSTART.MPF QECLRNP.SPF (learn program "Polynomial") or QECLRNC.SPF (learn program "Circle") is stored as QECLRN.SPF on the NC! The learn program "Circle" should be used where possible for GEO axes, but only the learn program "Polynomial"...
Page 428
Compensations (K3) 5.7 Neural quadrant error compensation Activate QEC Machine data Standard Change to Meaning MD32500 Switch on "Friction $MA_FRIC_COMP_ENABLE compensation active" (friction compensation active) "Circularity test" Use the "Circularity test" to check the result! Save compensation data Save compensation data (QEC data are not included in back-up with "SERIES COMM."): HMI Embedded: Save with PCIN under SERVICES\Data\Circle error compensation\All HMI Advanced:...
Compensations (K3) 5.8 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 430
Compensations (K3) 5.8 Circularity test Figure 5-35 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 431
Compensations (K3) 5.8 Circularity test Stop measurement The measurement can be stopped at any time by pressing the Stop softkey. Any incomplete measurement recordings are best displayed by selecting the Display softkey. There is no monitoring in this respect. To allow direct access to the required controller parameters, the softkeys Axis-specific MD, FDD-MD and MSD-MD are displayed.
Page 432
Compensations (K3) 5.8 Circularity test File functions The displayed measurement results and the parameter settings can be stored as a file on the MMC by selection of softkey File Functions. Printer settings The basic display for selecting a printer can be called by means of softkeys HMI \ Printer selection.
Page 433
Compensations (K3) 5.8 Circularity test Output as bitmap file The graphic is stored in a bitmap file (*.bmp). "Output as bitmap file" is selected in the dropdown menu of printer settings. The screen form for entering a file name is then displayed when softkey Print graphic is selected in the "Circularity test display"...
Note The electronic weight compensation function is not currently available for: • SINUMERIK 840D sl in conjunction with drive system SINAMICS • SINUMERIK 840Di in conjunction with drive system SIMODRIVE 611 universal The parameters required by the electronic weight compensation function cannot be transferred to the drive via PROFIBUS-DP.
Page 435
Compensations (K3) 5.9 Electronic weight compensation (vertical axis) MD1409 $MD_SPEEDCTRL_INTEGRATOR_TIME_1 (reset time velocity controller, reset time speed controller) Through activation of the electronic weight compensation function, it is possible to minimize the amount by which the axis is lowered. Activation The function is set by parameterizing the axis-specific machine data MD32460 $MA_TORQUE_OFFSET (additional torque for electr.
Compensations (K3) 5.9 Electronic weight compensation (vertical axis) Deactivation The electronic weight compensation function is deselected by setting the machine data as shown below: MD32460 $MA_TORQUE_OFFSET = 0 The deselection takes effect after the next RESET or POWER ON or on selection of softkey "Activate MD".
Page 437
Compensations (K3) 5.9 Electronic weight compensation (vertical axis) For further details, see machine data: MD36610 $MA_AX_EMERGENCY_STOP_TIME (braking ramp time when errors occur) MD36620 $MA_SERVO_DISABLE_DELAY_TIME (switch-off delay controller release) Note The NCK deactivates the position control after SERVO_DISABLE_DELAY_TIME. ● The following VDI signals remain set at 1: DB10 DBX108.7 (NC ready) By using the machine data: MD11410 $MN_SUPPRESS_ALARM_MASK (mask for suppressing special alarms) (BIT20)
Compensations (K3) 5.9 Electronic weight compensation (vertical axis) 5.9.3 Electronic weight compensation with travel to fixed stop SIMODRIVE 611 digital With NC SW 6 and SW 5.1 SIMODRIVE 611 digital and earlier, both functions "electronic weight compensation" and "travel to fixed stop" can be used simultaneously, However, the following features must be observed: Interaction with traverse against fixed stop The electronic weight compensation may not be used to offset the zero point for the fixed...
Page 439
Compensations (K3) 5.9 Electronic weight compensation (vertical axis) Required adjustments The torque/force limit is entered for the different drive types in the drive machine data provided for this purpose. Drive machine data Drive type Description MD1192 $MD_TORQUE_LIMIT_WEIGHT FSD/MSD The torque corresponding to the (weight torque) force due to weight MD1192 $MD_FORCE_LIMIT_WEIGHT...
Page 440
Compensations (K3) 5.9 Electronic weight compensation (vertical axis) The torque limit for setup mode with machine data MD1239 $MD_TORQUE_LIMIT_FOR_SETUP (torque limit setup mode) or the force limit MD1239 $MD_FORCE_LIMIT_FOR_SETUP also acts symmetrically about the force due to weight. The minimum is selected from the limit of NC and setup mode if setup mode is active.
Page 442
Compensations (K3) 5.10 Supplementary conditions "Temperature compensation" function The function is an option and is available for: ● SINUMERIK 840D with NCU 571/572/573 "Electronic counterweight" function This function is available for: ● SINUMERIK with NCU 571/572/573, in conjunction with SIMODRIVE 611D. Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Compensations (K3) 5.11 Data lists 5.11 Data lists 5.11.1 Machine data 5.11.1.1 SIMODRIVE 611D machine data Number Identifier: $MC_ Description 1004 CTRL_CONFIG Configuration structure 1117 MOTOR_INERTIA Motor moment of inertia 5.11.1.2 General machine data Number Identifier: $MN_ Description 10050 SYSCLOCK_CYCLE_TIME Basic system clock cycle 10070 IPO_SYSCLOCK_TIME_RATIO...
Compensations (K3) 5.11 Data lists 5.11.2 Setting data 5.11.2.1 General setting data Number Identifier: $SN_ Description 41300 CEC_TABLE_ENABLE[t] Enable evaluation of beam sag compensation table 41310 CEC_TABLE_WEIGHT[t] Weighting factor for beam sag compensation table 5.11.2.2 Axis/spindle-specific setting data Number Identifier: $SA_ Description 43900 TEMP_COMP_ABS_VALUE...
Compensations (K3) 5.11 Data lists 5.11.3 Signals 5.11.3.1 Signals from NC DB number Byte.bit Description 108.7 NC Ready 5.11.3.2 Signals from mode group DB number Byte.Bit Description Mode group ready 5.11.3.3 Signals from channel DB number Byte.Bit Description 21, ... 36.5 Channel ready 5.11.3.4...
Page 446
Compensations (K3) 5.11 Data lists Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Mode Groups, Channels, Axis Replacement (K5) 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 448
Mode Groups, Channels, Axis Replacement (K5) 6.1 Brief description Axis/spindle replacement 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 replacement" it is possible to enable an axis/spindle and to allocate it to another channel, that means to replace the axis/spindle.
Mode Groups, Channels, Axis Replacement (K5) 6.2 Mode groups Mode groups 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.
Mode Groups, Channels, Axis Replacement (K5) 6.3 Channels Channels Note A description of the terms Channel, Channel Configuration, Channel States, Effects of Commands/Signals, etc. for the first channel can be found in: References: /FB1/ Function Manual, Basic Functions; Mode Group, Channel, Program Operation Mode (K1) For all other channels, this information applies, too.
Page 451
Mode Groups, Channels, Axis Replacement (K5) 6.3 Channels 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 452
Mode Groups, Channels, Axis Replacement (K5) 6.3 Channels 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.
Mode Groups, Channels, Axis Replacement (K5) 6.3 Channels 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) ;Wait for WAIT-tag 1 in the channel 2 and in ;the channel 2 ;additional processing in Channel 2 N400 M30...
Page 454
Mode Groups, Channels, Axis Replacement (K5) 6.3 Channels 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 455
Mode Groups, Channels, Axis Replacement (K5) 6.3 Channels 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") ;...
Mode Groups, Channels, Axis Replacement (K5) 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 458
Mode Groups, Channels, Axis Replacement (K5) 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: ●...
Mode Groups, Channels, Axis Replacement (K5) 6.4 Axis/spindle replacement The axis-specific machine data must be allocated with: MD30550 $MA_AXCONF_ASSIGN_MASTER_CHAN[AX1]=2 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.
Mode Groups, Channels, Axis Replacement (K5) 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.
Mode Groups, Channels, Axis Replacement (K5) 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, 01/2008, 6FC5397-1BP10-3BA0...
Mode Groups, Channels, Axis Replacement (K5) 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 •...
Mode Groups, Channels, Axis Replacement (K5) 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. ●...
Mode Groups, Channels, Axis Replacement (K5) 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 465
Mode Groups, Channels, Axis Replacement (K5) 6.4 Axis/spindle replacement Example 2 ; (axis 1 = X) N1 RELEASE (AX1) ; => Transition to neutral condition N2 G04 F2 N3 G0 X100 Y100: ; Motion of the released axis ; MD AUTO_GET_TYPE = ;...
Mode Groups, Channels, Axis Replacement (K5) 6.4 Axis/spindle replacement 6.4.8 Axis replacement via PLC ● The type of an axis can be determined at any time via an interface byte (PLC-axis, channel axis, neutral axis). TYPE display Figure 6-3 TYPE display axis replacement via PLC Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Page 467
Mode Groups, Channels, Axis Replacement (K5) 6.4 Axis/spindle replacement * neutral axis/spindle also contains the Command-/Oscillation-axis Figure 6-4 Changing an axis from K1 to K2 via parts program ● The PLC can request and traverse an axis at any time and in any operating mode. TYPE display Figure 6-5 TYPE display axis replacement via PLC...
Page 468
Mode Groups, Channels, Axis Replacement (K5) 6.4 Axis/spindle replacement Examples The following diagrams show the IS signal sequences for changing an NC axis to a PLC axis and transferring an NC axis to a neutral axis through the PLC. Figure 6-6 Changing an NC axis to a PLC axis Figure 6-7 Changing an NC axis to a neutral axis through the PLC...
Mode Groups, Channels, Axis Replacement (K5) 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...
Mode Groups, Channels, Axis Replacement (K5) 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.
Mode Groups, Channels, Axis Replacement (K5) 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.
Mode Groups, Channels, Axis Replacement (K5) 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 473
Mode Groups, Channels, Axis Replacement (K5) 6.4 Axis/spindle replacement Permanently assigned PLC axis The permanently assigned PLC axis is activated by machine data MD30460 $MA_BASE_FUNCTION_MASK with Bit 5 = 1 During acceleration the axis becomes a neutral axis. When a traverse request is transferred via the VDI interface, a neutral axis without preceding axis replacement, automatically changes to a competing positioning axis (PLC axis).
Mode Groups, Channels, Axis Replacement (K5) 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.
Mode Groups, Channels, Axis Replacement (K5) 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 476
Mode Groups, Channels, Axis Replacement (K5) 6.4 Axis/spindle replacement State transitions GET, RELEASE from synchronous actions and when GET is completed Figure 6-8 Transitions from synchronized actions For more information, please refer to: References: /FBSY/ Function Manual, Synchronous Actions; "Actions in Synchronous Actions" /PGA/ Programming Manual, Work Preparation;...
This function is available for ● SINUMERIK 840D with NCU 572/573 ● SINUMERIK 840D sl with NCU 710/720/730 Change to the channel axis If an axis is changed from PLC axis, neutral axis or axis in another channel to the axis type channel axis, a synchronization must take place.
Page 478
Mode Groups, Channels, Axis Replacement (K5) 6.5 Marginal conditions Block search During block search with calculation, all GET, GETD or RELEASE blocks are stored and output after the next NC Start. Exception: Blocks which are mutually exclusive are deleted. Example: RELEASE (AX1) Blocks are deleted.
Mode Groups, Channels, Axis Replacement (K5) 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 480
Mode Groups, Channels, Axis Replacement (K5) 6.6 Data lists Number Identifier: $MC_ Description 20230 CUTCOM_CURVE_INSERT_LIMIT Maximum angle for intersection calculation with tool radius compensation 20240 CUTCOM_MAXNUM_CHECK_BLOCKS Blocks for predictive contour calculation with tool radius compensation 20250 CUTCOM_MAXNUM_DUMMY_BLOCKS Max. no. of dummy blocks with no traversing movements with TRC 20270 CUTTING_EDGE_DEFAULT...
Mode Groups, Channels, Axis Replacement (K5) 6.6 Data lists Number Identifier: $MC_ Description 22240 AUXFU_F_SYNC_TYPE Output timing of F functions 22250 AUXFU_D_SYNC_TYPE Output timing of D functions 22260 AUXFU_E_SYNC_TYPE (available soon) Output timing of E functions 22400 S_VALUES_ACTIVE_AFTER_RESET S function active after RESET 22410 F_VALUES_ACTIVE_AFTER_RESET F function active after reset...
Mode Groups, Channels, Axis Replacement (K5) 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 BAG The BAG-signals from PLC → NCK and from NCK → PLC are stored in data block 11. The signals are described in: References: /FB1/ Function Manual, Basic functions;...
Kinematic Transformation (M1) Brief description 7.1.1 TRANSMIT The TRANSMIT function allows the following: ● Face-end machining on turned parts in the turning clamp – Holes – Contours ● A cartesian coordinate system can be used to program these machining operations. ●...
Kinematic Transformation (M1) 7.1 Brief description 7.1.2 TRACYL The cylinder generated surface curve transformation TRACYL allows the following: Machining of ● Longitudinal grooves on cylindrical bodies, ● Transverse grooves on cylindrical bodies ● Arbitrary groove patterns on cylindrical objects. The path of the grooves is programmed with reference to the unwrapped, level surface of the cylinder.
Kinematic Transformation (M1) 7.1 Brief description 7.1.3 TRAANG The "Inclined axis" function is provided for grinding applications. It allows the following: ● Machining with inclined infeed axis. ● A cartesian coordinate system can be used for programming purposes. ● The control maps the programmed traversing movements of the Cartesian coordinate system onto the traversing movements of the real machine axes (standard situation): Inclined infeed axis.
Kinematic Transformation (M1) 7.2 TRANSMIT TRANSMIT 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...
Kinematic Transformation (M1) 7.2 TRANSMIT 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 488
Kinematic Transformation (M1) 7.2 TRANSMIT The following machine data must be set for a maximum of 2 of these TRANSMIT transformations: MD24950 $MC_TRANSMIT_ROT_AX_OFFSET_t MD24910 $MC_TRANSMIT_ROT_SIGN_IS_PLUS_t MD24920 $MC_TRANSMIT_BASE_TOOL_t MD24911 $MC_TRANSMIT_POLE_SIDE_FIX_t In this case, t specifies the number of the declared TRANSMIT transformation (maximum of 2).
Page 489
Kinematic Transformation (M1) 7.2 TRANSMIT 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: MD20060 $MC_AXCONF_GEOAX_NAME_TAB[0]="X" MD20060 $MC_AXCONF_GEOAX_NAME_TAB[1]="Y" MD20060 $MC_AXCONF_GEOAX_NAME_TAB[2]="Z" (The choice of names in the above figure is in accordance with defaults). Assignment of geometry axes to channel axes A distinction has to be made, whetherTRANSMIT is active or not: ●...
Kinematic Transformation (M1) 7.2 TRANSMIT Identification of spindles It is specified per machine axis, whether a spindle is present (value > 0: spindle number) or a path axis (value 0). MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[0]=1 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[1]=0 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[2]=0 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[3]=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.
Page 491
Kinematic Transformation (M1) 7.2 TRANSMIT Transformation with supplementary linear axis If the machine has another linear axis which is perpendicular to both the rotary axis and the first linear axis, transformation type 257 can be used to apply tool offsets with the real Y axis. It is assumed that the working area of the second linear axis is small and is not to be used for the retraction of the part program.
Page 492
Kinematic Transformation (M1) 7.2 TRANSMIT Rotational position The rotational position of the Cartesian coordinate system is specified by machine data as described in the following paragraph. TRANSMIT_ROT_AX_OFFSET_t The rotational position of the x-y plane of the Cartesian coordinate system in relation to the defined zero position of the rotary axis is specified with: MD24900 $MC_TRANSMIT_ROT_AX_OFFSET_t= ...
Page 493
Kinematic Transformation (M1) 7.2 TRANSMIT 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).
Kinematic Transformation (M1) 7.2 TRANSMIT 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 – t may not be greater than 2. From software version 4 upwards, special procedures for pole transition etc.
Page 495
Kinematic Transformation (M1) 7.2 TRANSMIT ● 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 496
Kinematic Transformation (M1) 7.2 TRANSMIT 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 497
Kinematic Transformation (M1) 7.2 TRANSMIT Velocity control The velocity monitoring function for TRANSMIT is implemented by default during preprocessing. Monitoring and limitation in the main run are activated: ● In AUTOMATIC mode if a positioning or oscillation axis has been programmed which is included in the transformation via machine data $MC_TRAFO_AXES_IN_n index 0 or 1.
Kinematic Transformation (M1) 7.2 TRANSMIT From start to reset If parts program processing is aborted with RESET and restarted with START, then the following must be noted: ● The remaining parts program is traversed reproducibly only if all axes are traversed to a defined position by means of a linear block (G0 or G1) at the beginning of the parts program.
Page 499
Kinematic Transformation (M1) 7.2 TRANSMIT 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 500
Kinematic Transformation (M1) 7.2 TRANSMIT 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 501
Kinematic Transformation (M1) 7.2 TRANSMIT 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 502
Kinematic Transformation (M1) 7.2 TRANSMIT 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. The closer the path is to the pole, the greater the reduction in the feedrate.
Page 503
Kinematic Transformation (M1) 7.2 TRANSMIT 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.
Kinematic Transformation (M1) 7.2 TRANSMIT 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.
Kinematic Transformation (M1) 7.2 TRANSMIT 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.
Kinematic Transformation (M1) 7.2 TRANSMIT 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.
Kinematic Transformation (M1) 7.3 TRACYL TRACYL Note The TRACYL transformation described below requires that unique names are assigned to machine axes, channels and geometry axes when the transformation is active. 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 508
Kinematic Transformation (M1) 7.3 TRACYL 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.
Kinematic Transformation (M1) 7.3 TRACYL Functionality During transformation (both axis configurations), the full functionality of the control is available, both for processing from the NC program and in JOG mode 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 510
Kinematic Transformation (M1) 7.3 TRACYL 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 511
Kinematic Transformation (M1) 7.3 TRACYL Figure 7-13 Axis configuration for the example in Figure "Machining grooves on a cylinder surface with X-Y-Z-C kinematics" The configurations highlighted in the figure above apply when TRACYL is active. Assignment of names to geometry axes According to the above axis configuration overview, the geometry axes to be involved in the TRACYL operation must be defined with: MD20050 $MC_AXCONF_GEOAX_NAME_TAB[0]="X"...
Page 512
Kinematic Transformation (M1) 7.3 TRACYL 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 ●...
Kinematic Transformation (M1) 7.3 TRACYL Identification of spindles It is specified per machine axis, whether a spindle is present (value > 0: spindle number) or a path axis (value 0). MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[0]=1 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[1]=0 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:...
Page 514
Kinematic Transformation (M1) 7.3 TRACYL Transformation type 514 without groove side offset Cylinder surface curve transformation TRAFO_TYPE_n = 514 If the machine has another linear axis which is perpendicular to both the rotary axis and the first linear axis, transformation type 514 can be used to apply tool offsets with the real Y axis. In this case, it is assumed that the user memory of the second linear axis is small and will not be used to execute the part program.
Page 515
Kinematic Transformation (M1) 7.3 TRACYL Grooves without groove wall offset For transformation type 514 the following indices apply for $MC_TRAFO_AXES_IN_n[ ]. Meaning of indices in relation to base coordinate system (BCS): ● [0]: Cartesian axis radial to rotary axis (if configured) ●...
Page 516
Kinematic Transformation (M1) 7.3 TRACYL TRACYL_ROT_SIGN_IS_PLUS_t If the direction of rotation of the rotary axis on the x-y plane is counter-clockwise when viewed against the z axis, then the machine data must be set to TRUE, otherwise to FALSE. MD24810 $MC_TRACYL_ROT_SIGN_IS_PLUS_t=TRUE In this case, "t"...
Page 517
Kinematic Transformation (M1) 7.3 TRACYL Figure 7-15 Position of tool zero in relation to machine zero 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 Extended Functions...
Kinematic Transformation (M1) 7.3 TRACYL 7.3.3 Activation of TRACYL TRACYL After the settings described above have been made, the TRACYL function can be activated: TRACYL(d) TRACYL(d,t) TRACYL(reference diameter, Tracyl data block) TRACYL(d) is used to activate the first declared TRACYL function. TRACYL(d,t) activates the t-th declared TRACYL function –...
Kinematic Transformation (M1) 7.3 TRACYL 7.3.5 Special system reactions with TRACYL The transformation can be selected and deselected via parts program or MDA. Please note on selection ● An intermediate motion block is not inserted (phases/radii). ● A series of spline blocks must be concluded. ●...
Page 520
Kinematic Transformation (M1) 7.3 TRACYL Rotary axis The rotary axis cannot be programmed because it is occupied by a geometry axis and cannot thus be programmed directly as a channel axis. Extensions 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.
Kinematic Transformation (M1) 7.3 TRACYL 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...
Kinematic Transformation (M1) 7.4 TRAANG TRAANG 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...
Kinematic Transformation (M1) 7.4 TRAANG 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 524
Kinematic Transformation (M1) 7.4 TRAANG 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 525
Kinematic Transformation (M1) 7.4 TRAANG 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, 01/2008, 6FC5397-1BP10-3BA0...
Kinematic Transformation (M1) 7.4 TRAANG 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 527
Kinematic Transformation (M1) 7.4 TRAANG 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 528
Kinematic Transformation (M1) 7.4 TRAANG 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). MD24110 $MC_TRAFO_AXES_IN_n[1] Range of values: 0 ... 1 0: When value 0 is set, the control system automatically determines the reserve: the axes are limited with equal priority (= default setting).
Kinematic Transformation (M1) 7.4 TRAANG 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 α. ●...
Kinematic Transformation (M1) 7.4 TRAANG 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. ●...
Kinematic Transformation (M1) 7.4 TRAANG 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 532
Kinematic Transformation (M1) 7.4 TRAANG 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).
Kinematic Transformation (M1) 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 534
Kinematic Transformation (M1) 7.5 Chained transformations ● 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 –...
Kinematic Transformation (M1) 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 –...
Kinematic Transformation (M1) 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 537
Kinematic Transformation (M1) 7.5 Chained transformations TRACOOF on HMI In accordance with the TRAFOOF programming instruction no transformation is displayed in the G code list on the HMI user interface. System variables $P_TRAFO and $AC_TRAFO therefore return a value of 0, the persistent transformation is operative and the BCS and MCS coordinate systems do not coincide.
Page 538
Kinematic Transformation (M1) 7.5 Chained transformations A RESET command still deselects any active transformation completely; the persistent transformation is selected again. The persistent transformation is not reselected under error conditions. A corresponding alarm is generated to indicate the error constellation. Alarm 14401 or 14404 can be activated when TRAANG is the persistent transformation.
Kinematic Transformation (M1) 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 542
Kinematic Transformation (M1) 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 543
Kinematic Transformation (M1) 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.
Kinematic Transformation (M1) 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 545
Kinematic Transformation (M1) 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 546
Kinematic Transformation (M1) 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.
Kinematic Transformation (M1) 7.6 Cartesian PTP travel Note For further information about programming plus programming examples, please see: References: /PGA/, Programming Guide, Work Preparation, Chapter Transformations, "Cartesian PTP Travel" 7.6.1 Programming of position Generally speaking, a machine position is not uniquely defined solely by a position input with Cartesian coordinates and the orientation of the tool.
Kinematic Transformation (M1) 7.6 Cartesian PTP travel 7.6.2 Overlap areas of axis angles TU address In order to approach axis angles in excess of ±180° without ambiguity, the information must be programmed in the TU (turn) address. The TU address thus represents the sign of the axis angles.
Kinematic Transformation (M1) 7.6 Cartesian PTP travel Figure 7-25 Ambiguity of top or bottom elbow Figure 7-26 Ambiguity of axis B1 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.
Kinematic Transformation (M1) 7.6 Cartesian PTP travel 7.6.5 PTP/CP switchover in JOG mode In JOG mode, the transformation can be switched on and off via a PLC control signal. This control signal is active only in JOG mode and when a transformation has been activated via the program.
Kinematic Transformation (M1) 7.7 Cartesian manual travel (optional) Cartesian manual travel (optional) Note SINUMERIK 840D 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 552
Kinematic Transformation (M1) 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 553
Kinematic Transformation (M1) 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 554
Kinematic Transformation (M1) 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 555
Kinematic Transformation (M1) 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 556
Kinematic Transformation (M1) 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 557
Kinematic Transformation (M1) 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 Marginal conditions If only NST DB31, ... DBX33.6 ("Transformation active") is on 1, is it possible to execute the Cartesian manual travel function.
Page 558
Kinematic Transformation (M1) 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 559
Kinematic Transformation (M1) 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...
Kinematic Transformation (M1) 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 561
Kinematic Transformation (M1) 7.8 Activating transformation machine data via parts program/softkey Note In the case of a program interruption (Repos, deletion of distance to go, ASUBs, etc.), the control system requires a number of different blocks that have already been executed for the repositioning operation.
Kinematic Transformation (M1) 7.8 Activating transformation machine data via parts program/softkey The first data set for orientation transformations is assigned to the first transformation (equaling the first orientation transformation) and the second transformation data set to the third transformation (equaling the second orientation transformation). If the third transformation is active when the NEWCONFIG command is executed, it is not permissible to change the first transformation into a transformation of another group (e.g.
Kinematic Transformation (M1) 7.8 Activating transformation machine data via parts program/softkey 7.8.4 List of machine data affected Machine data which can be made NEWCONFIG compatible are listed below. All transformations Machine data which are relevant for all transformations: ● MD24100 $MC_TRAFO_TYPE_1 to MD24480 $MC_TRAFO_TYPE_10 ●...
Page 564
Kinematic Transformation (M1) 7.8 Activating transformation machine data via parts program/softkey ● MD24566 $MC_TRAFO5_NUTATOR_VIRT_ORIAX_1 and MD24666 $MC_TRAFO5_NUTATOR_VIRT_ORIAX_2 Transmit transformations Machine data which are relevant for Transmit transformations: ● MD24920 $MC_TRANSMIT_BASE_TOOL_1 and MD24970 $MC_TRANSMIT_BASE_TOOL_2 ● MD24900 $MC_TRANSMIT_ROT_AX_OFFSET_1 and MD24950 $MC_TRANSMIT_ROT_AX_OFFSET_2 ● MD24910 $MC_TRANSMIT_ROT_SIGN_IS_PLUS_1 and MD24960 $MC_TRANSMIT_ROT_SIGN_IS_PLUS_2 ●...
Page 565
Kinematic Transformation (M1) 7.8 Activating transformation machine data via parts program/softkey Chained transformations Machine data which are relevant for chained transformations: ● MD24995 $MC_TRACON_CHAIN_1 and MD24996 $MC_TRACON_CHAIN_2 ● MD24997 $MC_TRACON_CHAIN_3 and MD24998 $MC_TRACON_CHAIN_4 Persistent transformation Machine data which are relevant for persistent transformations: ●...
Kinematic Transformation (M1) 7.9 Constraints Constraints 7.9.1 TRANSMIT Availability The TRANSMIT function is optional. It can be acquired for: ● SINUMERIK 840D with NCU 571-573 Pole traversal and optimized response in pole vicinity are available. 7.9.2 TRACYL (peripheral surface transformation) Availability The TRACYL function is optional.
Kinematic Transformation (M1) 7.9 Constraints 7.9.4 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: –...
Kinematic Transformation (M1) 7.10 Examples 7.10 Examples 7.10.1 TRANSMIT The following example relates to the configuration illustrated in the following figure and shows the sequence of main steps required to configure the axes and activate TRANSMIT. ; General axis configuration for rotation MD20060 $MC_AXCONF_GEOAX_NAME_TAB[0]="X"...
Kinematic Transformation (M1) 7.10 Examples MD24120$MC_TRAFO_GEOAX_ASSIGN_TAB_ ; 1st channel axis becomes GEOAX X 1[0]=1 MD24120 ; 2nd channel axis becomes GEOAX Y $MC_TRAFO_GEOAX_ASSIGN_TAB_1[1]=3 MD24120 ; 3rd channel axis becomes GEOAX Z $MC_TRAFO_GEOAX_ASSIGN_TAB_1[2]=2 MD24900 ; Rotation position X-Y plane against $MC_TRANSMIT_ROT_AX_OFFSET_1=0 ;...
Page 570
Kinematic Transformation (M1) 7.10 Examples MD20070 $MC_AXCONF_MACHAX_USED[3]=1 ; C as machine axis 1 MD20070 $MC_AXCONF_MACHAX_USED[4]=5 ; AS as machine axis 5 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[AX1]= 1 ; C is spindle 1 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[AX2]= 0 ; X is no spindle MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[AX3]= 0 ;...
Page 571
Kinematic Transformation (M1) 7.10 Examples Programming with groove wall offset (TRAFO_TYPE_n=513) Contour It is possible to produce a groove which is wider than the tool by using address OFFN to program the compensation direction (G41, G42) in relation to the programmed reference contour and the distance of the groove side wall from the reference contour (see figure).
Page 572
Kinematic Transformation (M1) 7.10 Examples ; Example program, which guides the tool after transformation selection ; on path I via path II back to the starting position ; (machine data see "Data Description", Example X-Y-Z-C kinematics): N1 SPOS=0; ; Take-over of spindle into rotary axis ;...
Page 573
Kinematic Transformation (M1) 7.10 Examples Programming with groove wall offset TRACYL without groove wall offset with supplementary linear axis (TRAFO_TYPE_n=513) ; For the following parts program the following machine data settings are a prerequisite: MD20070 $MC_AXCONF_MACHAX_USED[0]=1 ; X as machine axis 1 MD20070 $MC_AXCONF_MACHAX_USED[1] = 2 ;...
Page 575
Kinematic Transformation (M1) 7.10 Examples MD20070 $MC_AXCONF_MACHAX_USED[3] = 0 ; empty MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[AX1]= 1 ; C is spindle 1 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[AX2]= 0 ; X is no spindle MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[AX3]= 0 ; Z is no spindle MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[AX4]= 2 ; AS is spindle 2 MD10000 $MN_AXCONF_MACHAX_NAME_TAB[0]= "C1"...
Kinematic Transformation (M1) 7.10 Examples 7.10.4 Chained transformations Examples The following chapter determines: ● The general channel configuration ● Single transformations ● Chained transformations consisting of previously defined single transformations ● Activation of single transformations ● Activation of chained transformations The examples include the following transformations: ●...
Page 579
Kinematic Transformation (M1) 7.10 Examples n140 x0 y0 z20 n150 x-20 z0 n160 x0 z-20 n170 x20 z0 Note The above examples assume that the angle of the "inclined axis" can be set on the machine and is set to 0° when the single transformation is activated. ;...
Kinematic Transformation (M1) 7.10 Examples 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. MD24650 $MC_TRAFO5_BASE_TOOL_2[2]) in block N90, since writing a machine data alone does not activate it. However, if the program remained otherwise unchanged, an alarm would occur in block N130, because an attempt would then be made to modify an active transformation.
Kinematic Transformation (M1) 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...
Kinematic Transformation (M1) 7.11 Data lists 7.11 Data lists 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 24100...
Kinematic Transformation (M1) 7.11 Data lists Number Identifier: $MC_ Description 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 Deviation of rotary axis from zero position in degrees (2nd TRANSMIT) 24960 TRANSMIT_ROT_SIGN_IS_PLUS_2...
Page 586
Kinematic Transformation (M1) 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...
Kinematic Transformation (M1) 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...
Kinematic Transformation (M1) 7.11 Data lists Number Identifier: $MC_ Description 24760 TRAANG_BASE_TOOL_2 Distance of tool zero point from origin of geometry axes (2nd TRAANG) 24770 TRAANG_PARALLEL_ACCEL_RES_1 Axis acceleration reserve of parallel axis for compensatory motion (1st TRAANG) 24771 TRAANG_PARALLEL_ACCEL_RES_2 Axis acceleration reserve of parallel axis for compensatory motion (2nd TRAANG) 7.11.1.4 Chained transformations...
Kinematic Transformation (M1) 7.11 Data lists 7.11.2 Signals 7.11.2.1 Signals from channel DB number Byte.bit Description 21, ... 33.6 Transformation active Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Page 590
Kinematic Transformation (M1) 7.11 Data lists Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Measurement (M5) 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 592
Measurement (M5) 8.1 Brief description Axial measurement In the case of axial measuring, a trigger event which initiates a measuring operation is programmed in a part program block. A measuring mode for the measurement is selected together with the axis in which the measurements must be taken. Measuring cycles A description of how to handle measuring cycles can be found in: References:...
Measurement (M5) 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 594
Measurement (M5) 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.
Measurement (M5) 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 596
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 598
Measurement (M5) 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 599
Measurement (M5) 8.2 Hardware requirements SIMODRIVE 611 digital drives continue to be operated with a centralized probe at connector X121 on the SINUMERIK 840D/840Di. References: /BHA/ User Manual, Absolute Value Sensor with PROFIBUS-DP /FBU/ Function Manual of SIMODRIVE 611 universal Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Measurement (M5) 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: ●...
Measurement (M5) 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.
Measurement (M5) 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.
Measurement (M5) 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 604
Measurement (M5) 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 605
Measurement (M5) 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 606
Measurement (M5) 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 607
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring ● If the following machine data is not preset to 1: MD18600 $MN_MM_FRAME_FINE_TRANS The compensation is always entered in the course offset. Calculated frame When a workpiece is measured, the calculated frame is entered in the specified frame. Type System variable Description...
Page 608
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring Value Description 2506 $P_RELFR (ACS) System frame in data management 3010..3025 $P_CHBFR[0..15] Channel-spec. Basic frames with active G500 in data management 3050..3065 $P_NCBFR[0..15] NCU-global basic frames with active G500 in data management The MEASURE( ) function calculates frame $AC_MEAS_FRAME according to the specified frame.
Page 609
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring Array variable for workpiece and tool measurement The following array variable of length n is used for further input parameters that are used in the various measurement types Type System variable Description Values REAL...
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring Whether or not the radius of a milling tool is included in the calculation can be determined from the tool position and approach direction. If the approach direction is not specified explicitly, it is determined by the selected plane.
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring Value Description Coordinate transformation Coordinate transformation of a position Rectangle Measurement of a rectangle Save Saving data management frames Restore Restoring data management frames Taper turning Additive rotation of the plane * Types of workpiece measurement The individual methods are listed under "Types of workpiece measurement"...
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring 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 Active tool offset...
Page 613
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring The concatenated total frame equals the concatenation of the total frame (prior to measurement) with the calculated translation and rotation. Note If no frame is selected, the calculated frame is not transformed, i.e. the translation and rotation is determined on the basis of the specified setpoints and the calculated position of the edge, corner, groove, etc.
Page 614
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring Return values Description MEAS_NO_SPECPOINT No reference point available MEAS_NO_DIR No approach direction MEAS_EQUAL_POINTS Measuring points are identical MEAS_WRONG_ALPHA Alpha α is wrong MEAS_WRONG_PHI Phi ϕ is wrong MEAS_WRONG_DIR Wrong approach direction MEAS_NO_CROSSING Lines do not intersect MEAS_NO_PLANE...
Measurement (M5) 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...
Measurement (M5) 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 618
Measurement (M5) 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 619
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring 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: Input variable...
Page 620
Measurement (M5) 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:...
Measurement (M5) 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 622
Measurement (M5) 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 623
Measurement (M5) 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 ;...
Measurement (M5) 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 625
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring Input variable Description $AA_MEAS_SETPOINT[axis] Setpoint position of hole center * $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...
Measurement (M5) 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.
Measurement (M5) 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 629
Measurement (M5) 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 630
Measurement (M5) 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 ;...
Measurement (M5) 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.
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring 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) This measurement type is used on the HMI operator interface. Figure 8-13 Preset actual value memory The values of the following variables are evaluated for measurement type 14:...
Page 633
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring G0 x0 f10000 ; WCS(x) = 0; ENS(x) = 10 $AC_MEAS_VALID = 0 ; Set all input variables to invalid $AC_MEAS_TYPE = 14 ; Measuring type for preset actual value memory $AC_MEAS_ACT_PLANE = 0 ;...
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 15: Output variable Description $AC_MEAS_FRAME Result frame with translations 8.4.3.8 Measurement of an oblique edge (measurement type 16) Measurement of an oblique edge ($AC_MEAS_TYPE = 16) This measurement determines the position angle of the workpiece and enters it in the frame.
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring Input variable Description $AC_MEAS_INPUT[0] Unless otherwise specified, the reference coordinate for the alignment of the workpiece is always the abscissa of the selected plane. * =0: Reference coordinate is the abscissa =1: Reference coordinate is the ordinate $AC_MEAS_INPUT[1] Unless otherwise specified, the workpiece position angle is...
Page 636
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring $AC_MEAS_TYPE = 17 defines two resulting angles α and α for the skew of the plane; these are entered in $AC_MEAS_RESULTS[0..1]: ● $AC_MEAS_RESULTS[0] → Rotation at the abscissa ● $AC_MEAS_RESULTS[1] → Rotation at the ordinate These angles are calculated by means of the three measuring points P1, P2 and P3.
Page 637
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 17: Output variable Description $AC_MEAS_FRAME Result frame $AC_MEAS_RESULTS[0] Angles around abscissa from which three measuring points are calculated $AC_MEAS_RESULTS[1] Angles around ordinate from which three measuring points are calculated $AC_MEAS_RESULTS[2] Angles around applicate from which three measuring points are...
Page 638
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring G1 _XX=20 _YY=20 F1000 ; Approach 3rd measuring point MEAS = 1 _ZZ=... $AA_MEAS_POINT3[_xx] = $AA_MW[_xx] ; Assign measurement value to abscissa $AA_MEAS_POINT3[_yy] = $AA_MW[_yy] ; Assign measurement value to ordinate $AA_MEAS_POINT3[_zz] = $AA_MW[_zz] ;...
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.3.10 Redefine measurement around a WCS reference frame (measurement type 18) Redefine WCS coordinate system ($AC_MEAS_TYPE = 18) The zero point of the new WCS is determined by measuring point P1 at surface normal on the oblique plane.
Page 640
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring Define the new WCS' zero After performing the calculation, the measuring cycle can write and activate the selected frame in the frame chain with the measuring frame. After activation, the new WCS is positioned at surface normal on the inclined plane, with measuring point P1 as the zero point of the new WCS.
Page 641
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring Example Workpiece coordinate system on the inclined plane DEF INT RETVAL DEF AXIS _XX, _YY, _ZZ T1 D1 ; Activate probe ; Activate all frames and G54 $AC_MEAS_VALID = 0 ;...
Page 643
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 19: Output variable Description $AC_MEAS_FRAME Result frame with rotations and translation Example 1-dimensional setpoint selection DEF INT RETVAL DEF REAL _CORMW_XX, _CORMW_YY, _CORMW_ZZ DEF AXIS _XX, _YY, _ZZ...
Page 644
Measurement (M5) 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 645
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring $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 ; Define setpoint for abscissa and ordinate $AA_MEAS_SETPOINT[_yy] = 10 $AC_MEAS_FRAME_SELECT = 102 ;...
Page 646
Measurement (M5) 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 ;...
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.3.12 Measurement of an oblique angle (measurement type 24) Measurement method for converting a measuring point in any coordinate system Coordinate transformation of a position ($AC_MEAS_TYPE = 24) With this method of measurement, a measuring point in any coordinate system (WCS, BCS, MCS) can be converted with reference to a new coordinate system by coordinate transformation.
Page 648
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 24: Output variable Description $AC_MEAS_POINT2[axis] Converted axis positions 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...
Page 649
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring $AC_MEAS_ACT_PLANE = 0 ; Measuring plane is G17 ; Assign measured values $AA_MEAS_POINT1[_xx] = $AA_IW[_xx] ; Assign measurement value to abscissa $AA_MEAS_POINT1[_yy] = $AA_IW[_yy] ; Assign measurement value to ordinate $AA_MEAS_POINT1[_zz] = $AA_IW[_zz] ;...
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring if $AA_MEAS_PIONT2[A] <> 0 setal(61000) stopre if $AA_MEAS_PIONT2[B] <> 7 setal(61000) stopre 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 651
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring The values of the following variables are evaluated for measurement type 25: Input variable Meaning $AC_MEAS_VALID Validity bits for input variables $AA_MEAS_POINT1[axis] Measuring point 1 $AA_MEAS_POINT2[axis] Measuring point 2 $AA_MEAS_POINT3[axis] Measuring point 3 $AA_MEAS_POINT4[axis] Measuring point 4...
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.3.14 Measurement for saving data management frames (measurement type 26) Saving data management frames ($AC_MEAS_TYPE = 26) This measurement type offers the option of saving some or all data management frames with their current value assignments to a file.
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.3.15 Measurement for restoring backed-up data management frames (measurement type 27) Restoring data management frames last backed up ($AC_MEAS_TYPE = 27) This measurement type allows data management frames backed up by measurement type 26 to be restored to the SRAM.
Measurement (M5) 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.
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring 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. The following measurement types can be used to measure a tool loaded on a turning or milling machine: Measurement types Tool measuring...
Measurement (M5) 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 657
Measurement (M5) 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]...
Measurement (M5) 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.
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring 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.
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring 8.4.5.4 Measuring a tool length with stored or current position (measurement type 23) Tool length with stored / current position Tool length measurement with stored or current position ($AC_MEAS_TYPE = 23) In the case of manual measurement, the tool dimensions can be determined in the X and Z directions.
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring The following output variables are written for measurement type 23: 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 662
Measurement (M5) 8.4 Setting zeros, workpiece measuring and tool measuring 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 Approach direction and tool orientation -x...
Page 663
Measurement (M5) 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 664
Measurement (M5) 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 665
Measurement (M5) 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 666
Measurement (M5) 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 667
Measurement (M5) 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 668
Measurement (M5) 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 669
Measurement (M5) 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 670
Measurement (M5) 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 671
Measurement (M5) 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, 01/2008, 6FC5397-1BP10-3BA0...
Measurement (M5) 8.5 Axial measurement (optional) Axial measurement (optional) A measuring operation can be initiated from both the part program and synchronized actions. A measuring mode, the encoder and up to four trigger events are programmed, where the trigger events are comprised of the probe number (1 or 2) and the activation criterion (rising/falling signal edge).
Measurement (M5) 8.5 Axial measurement (optional) 8.5.2 Measuring mode The measuring mode specifies whether trigger events must be activated in parallel or sequentially in ascending sequence and defines the number of measurements to be taken. Measuring mode 1 The user can program up to 4 different trigger events in the same position controller cycle. The measurement signal edges are evaluated in chronological order.
Measurement (M5) 8.5 Axial measurement (optional) 8.5.3 Programming Programming Axial measurement can be programmed with and without deletion of distance-to-go. MEASA: With deletion of distance-to-go MEAWA: Without deletion of distance-to-go MEASA[axis] = (mode, trigger event1, trigger event2, trigger event3, trigger event4) Parameter description: ●...
Page 675
Measurement (M5) 8.5 Axial measurement (optional) Note MEASA and MEAWA can be programmed in the same block. MEASA cannot be programmed in synchronized actions. The axes for which MEASA has been programmed are not decelerated until all programmed trigger events have arrived. Measurement jobs started from a part program are aborted by RESET or when the program advances to a new block.
Measurement (M5) 8.5 Axial measurement (optional) 8.5.4 Measurement results Measurement results The results of the measurement commands are stored in system data of the NCK and can be read via system variables in the part program. ● System variable $AC_MEA[No] Query measurement job status signal.
Measurement (M5) 8.5 Axial measurement (optional) PLC service display The functional test for the probe is conducted via an NC program. The measuring signal can be checked at the end of the program in the diagnostic menu "PLC status". Table 8-10 Status display for measurement signal Status display Probe 1 deflected...
Page 678
Measurement (M5) 8.5 Axial measurement (optional) – Decade (= encoder selection) 0/not set = use active measuring system 1 = 1st measuring system 2 = 2nd measuring system (if available, otherwise the first measuring system is used; no alarm is generated) 3 = 1st and 2nd measuring system If two measuring systems are used to take the measurement, a maximum of two trigger events may be programmed.
Measurement (M5) 8.6 Measurement accuracy and functional testing Measurement accuracy and functional testing 8.6.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.
Measurement (M5) 8.7 Marginal conditions Marginal conditions The function "Axial Measurement" is not contained in the export versions SINUMERIK 840DE/840DiE. Examples 8.8.1 Measuring mode 1 Measurement with one encoder ● One-time measurement ● One probe ● Trigger signals are the rising and falling edges ●...
Measurement (M5) 8.8 Examples 8.8.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] R11=$AA_MM2[X] PROBE2...
Measurement (M5) 8.8 Examples 8.8.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 ●...
Measurement (M5) 8.8 Examples 8.8.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 684
Measurement (M5) 8.8 Examples : 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 ; switching signal not deflected, ; deflected in the X axis N30 STOPRE ←...
Measurement (M5) 8.9 Data lists Data lists 8.9.1 Machine data 8.9.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.9.1.2 Channel-specific machine data Number...
Page 686
Measurement (M5) 8.9 Data lists Type System variable name Description $AC_MEAS_SET_COORD Coordinate system of setpoint $AC_MEAS_LATCH[0..3] Pick up measuring points in the WCS $AA_MEAS_P1_VALID[ax] 1st pick up measuring point in the WCS $AA_MEAS_P2_VALID[ax] 2nd pick up measuring point in the WCS $AA_MEAS_P3_VALID[ax] 3rd pick up measuring point in the WCS $AA_MEAS_P4_VALID[ax]...
Software cams, position switching signals (N3) 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.
Software cams, position switching signals (N3) 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 689
Software cams, position switching signals (N3) 9.2 Cam signals and cam positions Note Position switching signals: If the axis is positioned exactly on the cam (plus or minus), the defined output flickers. If the axis moves one increment further, the output becomes a definite zero or one. Flickering of the actual position causes the signals to flicker in this manner.
Page 690
Software cams, position switching signals (N3) 9.2 Cam signals and cam positions Figure 9-3 Software cams for modulo rotary axis (plus cam - minus cam < 180°) The signal change of the minus cam makes it possible to detect traversal of the cam even if the cam range is set so small that the PLC cannot detect it reliably.
Software cams, position switching signals (N3) 9.2 Cam signals and cam positions 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: ● timer-controlled cam signal output to the four onboard outputs on the NCU ●...
Page 692
Software cams, position switching signals (N3) 9.2 Cam signals and cam positions Figure 9-6 Position switching signals for linear axis (plus cam < minus cam) Modulo rotary axis The default signal response for modulo rotary axes is dependent on the cam width: Figure 9-7 Software cams for modulo rotary axis (plus cam - minus cam <...
Page 693
Software cams, position switching signals (N3) 9.2 Cam signals and cam positions Figure 9-8 Software cams for modulo rotary axis (plus cam - minus cam > 180°) 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 >...
Software cams, position switching signals (N3) 9.2 Cam signals and cam positions Figure 9-9 Software cams for modulo rotary axis (plus cam - minus cam > 180°) and suppression of signal inversion 9.2.3 Cam positions Setting cam positions The cam positions of the plus and minus cams are defined via the following general setting data: SD41500 SW_CAM_MINUS_POS_TAB_1[n] Position of minus cams 1 - 8...
Page 695
Software cams, position switching signals (N3) 9.2 Cam signals and cam positions Dimension system metric/inch MD10260 CONVERT_SCALING_SYSTEM=1 With the above machine data setting, the cam positions no longer refer to the basic system, but to the system configured in machine data: : MD10270 POS_TAB_SCALING_SYSTEM MD10270 POS_TAB_SCALING_SYSTEM=0: Metric...
Software cams, position switching signals (N3) 9.2 Cam signals and cam positions 9.2.4 Lead/delay times (dynamic cam) Times To compensate for any delays, it is possible to assign two lead or delay times with additive action to each minus and plus cam for the cam signal output. The two lead or delay times are entered in a machine data and a setting data.
Software cams, position switching signals (N3) 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: DB31, ...
Software cams, position switching signals (N3) 9.3 Output of cam signals If no measuring system is selected or NC/PLC interface signal: DB31, ... DBX2.0 (cam activation) is set to 0, then the following NC/PLC interface signals are also set to 0: DB10 DBX110.0-113.7 (minus cam signals 1-32) DB10 DBX114.0-117.7 (plus cam signals 1-32) DB 31, ...
Software cams, position switching signals (N3) 9.3 Output of cam signals Status query in the part program The status of the HW outputs can be read in the part program with main run variable $A_OUT[n] (n = no. of output bit). Switching accuracy Signals are output to the NCK I/Os or onboard outputs in the position control cycle.
Page 700
Software cams, position switching signals (N3) 9.3 Output of cam signals Note This function runs independently of the assignment in machine data: MD10470 SW_CAM_ASSIGN_FASTOUT_1 or MD10471 SW_CAM_ASSIGN_FASTOUT_2 or MD10472 SW_CAM_ASSIGN_FASTOUT_3 or MD10473 SW_CAM_ASSIGN_FASTOUT_4. The onboard byte may not be used more than once at any one time. Restrictions The following applies to the mutual position of the cam positions: Only one timer-controlled output takes place per interpolation cycle.
Software cams, position switching signals (N3) 9.3 Output of cam signals 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. Interaction between cam signals due to: ●...
Software cams, position switching signals (N3) 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. The pulse duration is defined by the lead/delay time of the plus cam.
Page 703
Software cams, position switching signals (N3) 9.4 Position-time cams ● Pulse duration The pulse duration is calculated by adding together the associated entries for the cam pair in: MD10461 SW_CAM_PLUS_LEAD_TIME[n] SD41521 SW_CAM_PLUS_TIME_TAB_1[n]... SD41527 SW_CAM_PLUS_TIME_TAB_4[n] ● Offset The time displacement of the position-time cam is calculated by adding together the associated entries for the cam pair in: MD10460 SW_CAM_MINUS_LEAD_TIME[n] SD41520 SW_CAM_MINUS_TIME_TAB_1[n]...
Software cams, position switching signals (N3) 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 ● The extension: 32 instead of 16 cam pairs is available with software version 4.1 and higher.
Software cams, position switching signals (N3) 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 10460 SW_CAM_MINUS_LEAD_TIME[n] Lead or delay time on minus cams 1 -16...
Software cams, position switching signals (N3) 9.6 Data lists 9.6.2 Setting data 9.6.2.1 General setting data Number Identifier: $SN_ Description 41500 SW_CAM_MINUS_POS_TAB_1[n] Position of minus cams 1 - 8 41501 SW_CAM_PLUS_POS_TAB_1[n] Position of plus cams 1 - 8 41502 SW_CAM_MINUS_POS_TAB_2[n] Position of minus cams 9 - 16 41503 SW_CAM_PLUS_POS_TAB_2[n]...
Punching and Nibbling (N4) 10.1 Brief Description Subfunctions The functions specific to punching and nibbling operations comprise the following: ● Stroke control ● Automatic path segmentation ● Rotatable punch and die ● Clamp protection They are activated and deactivated via language commands. Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Punching and Nibbling (N4) 10.2 Stroke control 10.2 Stroke control 10.2.1 General information Functionality The stroke control is used in the actual machining of the workpiece. The punch is activated via an NC output signal when the position is reached. The punching unit acknowledges its punching motion with an input signal to the NC.
Punching and Nibbling (N4) 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 710
Punching and Nibbling (N4) 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:...
Punching and Nibbling (N4) 10.2 Stroke control 10.2.3 Criteria for stroke initiation Initiate a stroke The stroke initiation must be set, at the earliest, for the point in time at which it can be guaranteed that the axes have reached a standstill. This ensures that at the instant of punching, there is absolutely no relative movement between the punch and the metal sheet in the machining plane.
Page 712
Punching and Nibbling (N4) 10.2 Stroke control Programming Activation Description G603 Stop interpolation The interpolation reaches the block end. In this case, the axes continue to move until the overtravel has been traversed, i.e. the signal is output at an appreciable interval before the axes have reached zero speed (see t"...
Punching and Nibbling (N4) 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...
Punching and Nibbling (N4) 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.
Punching and Nibbling (N4) 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.
Punching and Nibbling (N4) 10.3 Activation and deactivation 10.3 Activation and deactivation 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, Work Preparation Groups The language commands are subdivided into the following groups:...
Page 717
Punching and Nibbling (N4) 10.3 Activation and deactivation SPOF Punching and nibbling OFF The SPOF function terminates all punching and nibbling functions. In this state, the NCK responds neither to the "Stroke active" signal nor to the PLC signals specific to punching and nibbling functions.
Page 718
Punching and Nibbling (N4) 10.3 Activation and deactivation 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 719
Punching and Nibbling (N4) 10.3 Activation and deactivation PDELAYOF Punching with delay OFF PDELAYOF deactivates punching with delay function, i.e. the punching process continues normally. PDELAYON and PDELAYOF form a G code group. Programming example: SPIF2activates the second punch interface, i.e. the stroke is controlled via the second pair of high-speed I/Os (see machine data MD26004 and MD26006).
Punching and Nibbling (N4) 10.3 Activation and deactivation SPIF2 Activation of second punch interface SPIF2 activates the second punch interface, i.e. the stroke is controlled via the second pair of high-speed I/Os (see machine data MD26004 and MD26006). Programming example: N170 SPIF1 X100 PON At the end of the block, a stroke is initiated at the first high-speed output.
Page 721
Punching and Nibbling (N4) 10.3 Activation and deactivation Example: Hardware assignment for stroke control Define the high-speed byte in each case on the CPU as a high-speed punch interface: MD26000 $MC_PUNCHNIB_ASSIGN_FASTIN = 'H00030001' → Byte 1 MD26002 $MC_PUNCHNIB_ASSIGN_FASTOUT = 'H00000001' Remark: The first and second bits are inverted.
Page 722
Punching and Nibbling (N4) 10.3 Activation and deactivation Monitoring of the input signal If the "stroke active" signal is fluctuating between strokes due to plunger overshoots, for example, the message "undefined punching signal" can be also be output when interpolation is stopped.
Page 723
Punching and Nibbling (N4) 10.3 Activation and deactivation Example 1 The characteristic defines the following acceleration rates: Distance between Acceleration 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 724
Punching and Nibbling (N4) 10.3 Activation and deactivation Example 2 The characteristic defines the following acceleration rates: Distance between Acceleration holes < 3 mm The axis accelerates at a rate corresponding to 75 % of maximum acceleration. 3 - 8 mm Acceleration is reduced to 25 %, proportional to the spacing.
Punching and Nibbling (N4) 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 726
Punching and Nibbling (N4) 10.3 Activation and deactivation DEFINE M20 AS SPOF PDELAYOF Punching/nibbling OFF and punching with delay 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 Punching ON with auxiliary function output...
Punching and Nibbling (N4) 10.4 Automatic path segmentation 10.4 Automatic path segmentation 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 ●...
Page 728
Punching and Nibbling (N4) 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. ●...
Punching and Nibbling (N4) 10.4 Automatic path segmentation 10.4.2 Operating characteristics with path axes MD26010 All axes defined and programmed via machine data: MD26010 $MC_PUNCHNIB_AXIS_MASK are traversed along path sections of identical size with SPP and SPN until the programmed end point is reached.
Page 730
Punching and Nibbling (N4) 10.4 Automatic path segmentation Figure 10-4 Path segmentation X2/Y2: Programmed traversing distance SPP: Programmed SPP value SPP': Automatically rounded-off offset distance Example of SPN The number of path segments per block is programmed via SPN. A value programmed via SPN takes effect on a non-modal basis for both punching and nibbling applications.
Page 731
Punching and Nibbling (N4) 10.4 Automatic path segmentation 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. Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Page 732
Punching and Nibbling (N4) 10.4 Automatic path segmentation Example Figure 10-5 Workpiece Extract from program N100 G90 X130 Y75 F60 SPOF Position at starting point ① of 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...
Punching and Nibbling (N4) 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. If this axis is programmed additionally as a "Punch-nibble axis": MD26010 $MC_PUNCHNIB_AXIS_MASK = 1, then the behavior of the synchronous axis can be varied as a function of machine data:...
Page 734
Punching and Nibbling (N4) 10.4 Automatic path segmentation MD26016 $MC_PUNCH_PARTITION_TYPE=1 In contrast to the behavior described above, here the synchronous axis travels the entire programmed rotation path in the first sub-block of the selected path segmentation function. Applied to the example, the C axis already reaches the programmed end position C=45 when it reaches X position X=15.
Page 735
Punching and Nibbling (N4) 10.4 Automatic path segmentation Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Page 736
Punching and Nibbling (N4) 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). The axis behavior for the example is then as follows: In block N20, the C axis is rotated to C=45°...
Page 737
Punching and Nibbling (N4) 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. ●...
Punching and Nibbling (N4) 10.5 Rotatable tool 10.5 Rotatable tool 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 ●...
Punching and Nibbling (N4) 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"...
Punching and Nibbling (N4) 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" function is activated and deactivated with language commands TANGON and TANGOF respectively.
Page 741
Punching and Nibbling (N4) 10.5 Rotatable tool N15 X20 Y20 C45 ; C/C1 axis rotates to 45° → stroke N20 X50 Y20 C90 SPOF ; C/C1 axis rotates to 90° , no stroke initiation N25 X80 Y20 SPP=10 SON ; Path segmentation: four strokes are executed with tool rotated to 90°...
Page 742
Punching and Nibbling (N4) 10.5 Rotatable tool 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 743
Punching and Nibbling (N4) 10.5 Rotatable tool Figure 10-8 Illustration of programming example in XY plane Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Punching and Nibbling (N4) 10.6 Protection zones 10.6 Protection zones Clamping protection zone The "clamping protection zone" function is contained as a subset in the "Protection zones" function. Its purpose is to simply monitor whether clamps and tool could represent a mutual risk.
Punching and Nibbling (N4) 10.8 Examples 10.8 Examples 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 746
Punching and Nibbling (N4) 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 Position 1 is approached...
Page 747
Punching and Nibbling (N4) 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 4 punches initiated at intervals of 20 mm...
Page 748
Punching and Nibbling (N4) 10.8 Examples 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 One punch is initiated at end of path N20 X10 SPP=20 4 punches initiated at intervals of 20 mm N25 SPOF...
Page 749
Punching and Nibbling (N4) 10.8 Examples Example 7 Application example of SPP programming Figure 10-11 Workpiece 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...
Punching and Nibbling (N4) 10.9 Data lists 10.9 Data lists 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 26000 PUNCHNIB_ASSIGN_FASTIN Hardware assignment for input-byte with stroke...
Punching and Nibbling (N4) 10.9 Data lists 10.9.2 Setting data 10.9.2.1 Channel-specific setting data Number Identifier: $SC_ Description 42400 PUNCH_DWELL_TIME Dwell time 42402 NIBPUNCH_PRE_START_TIME Pre-start time 42404 MINTIME_BETWEEN_STROKES Minimum time interval between two consecutive strokes 10.9.3 Signals 10.9.3.1 Signals to channel DB number Byte.bit Name...
Punching and Nibbling (N4) 10.9 Data lists 10.9.4 Language commands G group Language Meaning command SPOF Stroke / Punch OFF Punching and nibbling OFF Stroke ON Nibbling ON SONS Stroke ON Nibbling ON (position controller) Punch ON Punching ON PONS Punch ON Punching ON (position controller) PDELAYON...
Positioning Axes (P2) 11.1 Product brief Axes for auxiliary movements In addition to axes for machining a workpiece, modern machine tools can also be equipped with axes for auxiliary movements, e.g.: ● Axis for tool magazine ● Axis for tool turret ●...
Page 754
Positioning Axes (P2) 11.1 Product brief ● during operation: Operation and monitoring of the machining process commence simultaneously for all axes. ● during PLC configuring/commissioning: No allowance has to be made on PLC or external computers (PCs) for synchronization between axes for machining and axes for auxiliary movements. ●...
Positioning Axes (P2) 11.2 Own channel, positioning axis or concurrent positioning axis 11.2 Own channel, positioning axis or concurrent positioning axis When axes are provided for auxiliary movements on a machine tool, the required properties will decide whether the axis is to be: ●...
Positioning Axes (P2) 11.2 Own channel, positioning axis or concurrent positioning axis References For more information on the channel functionality, please refer to: Function Manual, Basic Functions; BAG, Channel, Program Operation, Reset Response (K1) 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.
Page 757
Positioning Axes (P2) 11.2 Own channel, positioning axis or concurrent positioning axis Axis types Positioning axes can be linear axes and rotary axes. Positioning axes can also be configured as indexing axes. Independence of positioning axes and path axes The mutual independence of path and positioning axes is ensured by the following measures: ●...
Positioning Axes (P2) 11.2 Own channel, positioning axis or concurrent positioning axis Applications The following are typical applications for positioning axes: ● Single-axis loaders ● Multi-axis loaders without interpolation (PTP → point-to-point traversing) ● Workpiece feed and transport Other applications are also possible: ●...
Page 759
Positioning Axes (P2) 11.2 Own channel, positioning axis or concurrent positioning axis Activation from PLC The concurrent positioning axis is activated via FC 18 from the PLC. ● Feed For feedrate = 0, the feedrate is determined from the following machine data: MD32060 $MA_POS_AX_VELO (initial setting for positioning axis velocity) ●...
Positioning Axes (P2) 11.3 Motion behavior and interpolation functions 11.3 Motion behavior and interpolation functions 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. Axis interpolator Each channel has axis interpolators in addition to path interpolators.
Page 761
Positioning Axes (P2) 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 ●...
Positioning Axes (P2) 11.3 Motion behavior and interpolation functions Selection of interpolation type The interpolation type that should effective for G0 is adjusted with the following machine data: MD20730 $MC_G0_LINEAR_MODE (interpolation response in G0) Value Description In the rapid traversing mode (G0) the non-linear interpolation is active. Path axes are traversed as positioning axes.
Page 763
Positioning Axes (P2) 11.3 Motion behavior and interpolation functions Marginal conditions Axes/spindles currently operating according to the NC program are not controlled by the PLC. Command axis movements cannot be started via non-modal or modal synchronized actions for PLC-controlled axes/spindles. Alarm 20143 is signaled. Sequence coordinator The sequence of autonomous single-axis functions with the respective transfers is represented in a so-called "Use Case"...
Page 764
Positioning Axes (P2) 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 765
Positioning Axes (P2) 11.3 Motion behavior and interpolation functions 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, ... DBX63.1 (PLC controls axis) == 0 DB31, ... DBX63.2 (Axis stop active) == 0 DB31, ...
Page 766
Positioning Axes (P2) 11.3 Motion behavior and interpolation functions 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 767
Positioning Axes (P2) 11.3 Motion behavior and interpolation functions ● NCK switches the axis to the ’stopped’ state and notifies the PLC of the status change via the VDI interface (NCK→PLC) as follows with: DB31, ... DBX63.2 (Axis stop active) == 0, DB31, ...
Page 768
Positioning Axes (P2) 11.3 Motion behavior and interpolation functions Use Case 3 Resume axis/spindle motion The axis/spindle motions controlled by the main run and interrupted according to use case 2 "Stop axis" are resumed. Description of operational sequence: ● PLC requests the NCK to resume motion on the relevant axis with NST: DB31, ...
Page 769
Positioning Axes (P2) 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, ...
Positioning Axes (P2) 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 771
Positioning Axes (P2) 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);...
Positioning Axes (P2) 11.4 Velocity 11.4 Velocity 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.
Positioning Axes (P2) 11.5 Programming 11.5 Programming 11.5.1 General Note For the programming of position axes, please observe the following documentation: References: Programming Manual, Basics; 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 774
Positioning Axes (P2) 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 775
Positioning Axes (P2) 11.5 Programming If POSA is programmed, then POSA again with IPOBRKA (block change in the braking ramp), an alarm is not issued. For more information, please refer to NC command IPOBKA in Chapter "Settable block change time". Coordination (WAITP) The coordination command WAITP enables you to designate a position in the NC program where the program is to wait until an axis programmed with POSA in a previous NC block has...
Positioning Axes (P2) 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:...
Positioning Axes (P2) 11.6 Block change 11.6 Block change Positioning axes can be programmed in the NC block individually or in combination with path axes. Path axes and positioning axes are always interpolated separately (path interpolator and axis interpolators) and this causes them to reach their programmed end positions at different times.
Page 778
Positioning Axes (P2) 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 779
Positioning Axes (P2) 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: ●...
Positioning Axes (P2) 11.6 Block change 11.6.1 Settable block change time Positioning axis type 3 Settable block change time for single axis interpolation Figure 11-3 Settable block change for type 3 positioning axis, example Properties of type 3 positioning axis With type 3 positioning axes the end-of-motion criterion can be programmed with FINEA, COARSEA or IPOENDA.
Page 781
Positioning Axes (P2) 11.6 Block change ● The following syntax applies for the position end of positioning spindles: FINEA[Sn]: “Exact stop fine” motion end or COARSEA[Sn] "Exact stop coarse" motion end or IPOENDA[Sn]: End of motion when “IPO stop” is reached Sn : Spindle number, 0 ...
Page 782
Positioning Axes (P2) 11.6 Block change Condition for block change If the end-of-motion criteria for all axes/spindles to be operated in the block are fulfilled in addition to the block change condition, then block change takes place. This applies both to part program blocks and for technology cycle blocks.
Page 783
Positioning Axes (P2) 11.6 Block change Supplementary conditions Block change and alteration of axis status A premature block change is not possible: ● during oscillation with partial infeed The block-specific oscillation motion must remain active until the axis with partial infeed has reached its end position.
Page 784
Positioning Axes (P2) 11.6 Block change Note For further information about programming positioning axes, see: References: /PG/ Programming Manual, Fundamentals, Section "Feedrate control and spindle motion" /PGA/, Programming Manual, Advanced, Section "Special motion commands" Examples For block change condition "Braking ramp" in the part program: ;...
Page 785
Positioning Axes (P2) 11.6 Block change In the technology cycle: FINEA ; End of motion criterion fine exact stop POS[X]=100 ; Technology cycle block change takes place ; when the X axis has reached position 100 ; and exact stop fine. IPOBRKA(X,100) ;...
Page 786
Positioning Axes (P2) 11.6 Block change In the technology cycle: FINEA ; End of motion criterion fine exact stop POS[X]=100 ; Technology cycle block change takes place ; when the X axis has reached position 100 ; and exact stop fine. ADISPOSA(X,2,0.3) ;...
Positioning Axes (P2) 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.
Positioning Axes (P2) 11.7 Control by the PLC 11.7 Control by the PLC PLC axes PLC axes are traversed by the PLC via special function blocks in the basic program; their movements can be asynchronous to all other axes. The travel motions are executed separate from the path and synchronized actions.
Positioning Axes (P2) 11.7 Control by the PLC The channel-specific interface signal PLC→NCK ● IS DB21, ... DBX6.0 ("feed disable") does apply to a PLC-controlled axis if bit 6 = 0 in machine data MD30460 $MA_BASE_FUNCTION_MASK. The channel-specific VDI interface signal NCK→PLC ●...
Positioning Axes (P2) 11.7 Control by the PLC The following functions are defined: ● Linear interpolation (G01) ● Feedrate in mm/min or degrees/min (G94) ● Exact stop (G09) ● Settable zero offsets currently selected are valid Since each axis is assigned to exactly one channel, the control can select the correct channel from the axis name/axis number and start the concurrent positioning axis on this channel.
Page 791
Positioning Axes (P2) 11.7 Control by the PLC PLC actions NCK reaction Trigger axial RESET Machine axis 1 is stopped and the traversing IS DB31, ... DBX28.1 ("AXRESET") movement is aborted. IS DB31, ... DBX63.2==1 ("axis stop active”) is reset to 0, its axial machine data are read in, IS DB31, ...
Positioning Axes (P2) 11.7 Control by the PLC 11.7.3 Control response 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.
Positioning Axes (P2) 11.8 Response with special functions 11.8 Response with special functions 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.
Positioning Axes (P2) 11.9 Examples 11.9 Examples 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.
Positioning Axes (P2) 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 ;...
Positioning Axes (P2) 11.10 Data lists 11.10 Data lists 11.10.1 Machine data 11.10.1.1 Channel-specific machine data Number Identifier: $MC_ Description 20730 G0_LINEAR_MODE Interpolation behavior with G0 20732 EXTERN_G0_LINEAR_MODE Interpolation behavior with G00 22240 AUXFU_F_SYNC_TYPE Output timing of F functions 11.10.1.2 Axis/spindle-specific machine data Number Identifier: $MA_ Description...
Oscillation (P5) 12.1 Product brief 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 800
Oscillation (P5) 12.1 Product brief 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.
Oscillation (P5) 12.2 Asynchronous oscillation 12.2 Asynchronous oscillation 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.
Oscillation (P5) 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 803
Oscillation (P5) 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 804
Oscillation (P5) 12.2 Asynchronous oscillation Note Oscillation with motion-synchronous actions and stop times "OST1/OST2" Once the set stop times have expired, the internal block change is executed during oscillation (indicated by the new distances to go of the axes). The deactivation function is checked when the block changes.
Page 805
Oscillation (P5) 12.2 Asynchronous oscillation References: /PA/ Programming Guide 1) Activate, deactivate oscillation: ● OS[oscillation axis] = 1; Activate oscillation for oscillation axis ● OS[oscillation axis] = 0; Deactivate oscillation for oscillation axis Note Every axis may be used as an oscillation axis. 2) End of oscillation: ●...
Page 806
Oscillation (P5) 12.2 Asynchronous oscillation 5) Setting feedrate: ● FA[axis] = FValue Positioning axis infeed. The feedrate is transferred to the appropriate setting data in synchronism with the block in the main run. If the oscillation axis is moved with revolutional feedrate, the corresponding dependencies must be indicated as described in Description of Functions V1.
Page 807
Oscillation (P5) 12.2 Asynchronous oscillation Note The control evaluates the reset options, then the set options. 7) Sparking-out strokes: ● OSNSC[oscillation axis] = number of sparking-out strokes The number of sparking-out strokes is entered into the appropriate setting data in synchronism with the block in the main run and thus remains effective until the setting data is next changed.
Oscillation (P5) 12.2 Asynchronous oscillation 12.2.2 Asynchronous oscillation under PLC control Activating The function can be selected from the PLC via setting data OSCILL_IS_ACTIVE in all operating modes except for MDA Ref and JOG Ref. Settings The following criteria can be controlled from the PLC via setting data: Activation and deactivation of oscillation movement, positions of reversal points 1 and 2, stop times at reversal points, feedrate velocity, the options in the reversal points, the number of sparking- out strokes and the end position after deactivation.
Page 809
Oscillation (P5) 12.2 Asynchronous oscillation Without PLC control If the PLC does not have control over the axis, then the axis is treated like a normal positioning axis (POSA) during asynchronous oscillation. Delete distance-to-go Channel-specific delete distance-to-go is ignored. Axial delete distance-to-go: Without PLC control If the oscillation axis is not under PLC control, it is stopped by means of a braking ramp.
Page 810
Oscillation (P5) 12.2 Asynchronous oscillation Follow-up mode There is no difference to positioning axes. End of program If the axis is not controlled by the PLC, then the program end is not reached until the oscillation movement is terminated (reaction as for POSA: Positioning across block boundaries).
Page 811
Oscillation (P5) 12.2 Asynchronous oscillation Block search In Block Search the last valid oscillation function is registered and the machine data OSCILL_MODE_MASK is activated (default) accordingly, either directly after NC start (when approaching the start position after block search) or after reaching the start position after block search.
Oscillation (P5) 12.3 Oscillation controlled by synchronized actions 12.3 Oscillation controlled by synchronized actions General procedure An asynchronous oscillation movement is coupled via synchronized actions with an infeed motion and controlled accordingly. References: /FB2/ Function Manual, Extended Functions; Synchronous Actions (S5) The following description concentrates solely on the motion-synchronous actions associated with the oscillation function.
Page 813
Oscillation (P5) 12.3 Oscillation controlled by synchronized actions Legend: U1: Reversal point 1 U2: Reversal point 2 ii1: Reversal point range 1 ii2: Reversal point range 2 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...
Page 814
Oscillation (P5) 12.3 Oscillation controlled by synchronized actions Main run evaluation It is possible to compare the synchronization conditions in the interpolation cycle in the main run with the current actual values ($$ variable on the right of comparison conditions). With normal system variable comparison, the expressions are evaluated in the first run.
Oscillation (P5) 12.3 Oscillation controlled by synchronized actions OS[Z]=1 FA[X]=1000 POS[X]=40 ;Switch on oscillation OS[Z]=0 ;Switch off oscillation 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.
Oscillation (P5) 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.
Oscillation (P5) 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...
Oscillation (P5) 12.3 Oscillation controlled by synchronized actions One-sided infeed to U1 to U2 range U1 range U2 These options are described in the chapter "Infeed in Reversal Point 1 or 2" and the chapter "Infeed in the Reversal Range". 12.3.4 Stop oscillation movement at the reversal point Function...
Oscillation (P5) 12.3 Oscillation controlled by synchronized actions Application The synchronized action is used to hold the oscillation axis stationary until part infeed has been executed. This synchronized action can be omitted if the oscillation axis need not wait at reversal point 2 until part infeed has been executed. At the same time, this synchronized action can be used to start the infeed movement if this has been stopped by a previous synchronized action which is still active.
Oscillation (P5) 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.
Oscillation (P5) 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.
Oscillation (P5) 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 823
Oscillation (P5) 12.3 Oscillation controlled by synchronized actions External oscillation reversal In other words, only after an command is there a difference between the values in $AA_OSCILL_BREAK_POS1 and $AA_OSCILL_REVERSE_POS1 or the values in $AA_OSCILL_BREAK_POS2 and $AA_OSCILL_REVERSE_POS2. External oscillation reversal can therefore be detected by a synchronized action, see examples.
Oscillation (P5) 12.4 Marginal conditions 12.4 Marginal conditions 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. Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Oscillation (P5) 12.5 Examples 12.5 Examples Requirements The examples given below require components of the NC language specified in the sections entitled: ● Asynchronous oscillation ● Oscillation controlled by synchronized actions. 12.5.1 Example of asynchronous oscillation Exercise The oscillation axis Z must oscillate between -10 and 10. Approach reversal point 1 with exact stop coarse and reversal point 2 without exact stop.
Oscillation (P5) 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 827
Oscillation (P5) 12.5 Examples ; motion-synchronous actions ; always, when the current position of the oscillating axis in the MCS ; not equal to reversal position 1 ; then set the marker with index 1 to value 0 (reset marker 1) WHENEVER $AA_IM[Z]<>$SA_OSCILL_REVERSE_POS1[Z] DO $AC_MARKER[1]=0 ;...
Page 828
Oscillation (P5) 12.5 Examples WHENEVER $AC_MARKER[2]==1 DO $AA_OVR[X]=0 ; always, when the flag with index 1 is ; 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) ;...
Oscillation (P5) 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 830
Oscillation (P5) 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) ;...
Oscillation (P5) 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 ;...
Oscillation (P5) 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 833
Oscillation (P5) 12.5 Examples WHENEVER ($AC_MARKER[2] == 0) AND $AA_IW[Z]>$SA_OSCILL_REVERSE_POS1[Z]) DO $AC_MARKER[1]=0 ; 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 ;...
Oscillation (P5) 12.5 Examples ; assign axis X to the oscillation axis Z as infeed axis, ; which has to infeed up to end position 5 ; in steps of 1 and the sum of all partial distances ; must add up to the end position. N780 WAITP(Z) ;...
Oscillation (P5) 12.6 Data lists 12.6 Data lists 12.6.1 Machine data 12.6.1.1 General machine data Number Identifier: $MN_ Description 10710 PROG_SD_RESET_SAVE_TAB Oscillations to be saved from SD 11460 OSCILL_MODE_MASK Control screen form for asynchronous oscillation 12.6.2 Setting data 12.6.2.1 Axis/spindle-specific setting data Number Identifier: $SA_ Description...
Oscillation (P5) 12.6 Data lists 12.6.3 Signals 12.6.3.1 Signals to axis/spindle DB number Byte.bit Description 31, ... 28.0 External oscillation reversal 31, ... 28.3 Set reversal point 31, ... 28.4 Alter reversal point 31, ... 28.5 Stop at next reversal point 31, ...
Page 837
Oscillation (P5) 12.6 Data lists $AA_IB[<axial expression>] Actual position BCS axis (real) $AA_IM[<axial expression>] Actual position MCS axis (IPO setpoints) (real) With $AA_IM[S1] setpoints for spindles can be evaluated. Modulo calculation is used for spindles and rotary axes, depending on machine data $MA_ROT_IS_MODULO and $MA_DISPLAY_IS_MODULO.
Page 838
Oscillation (P5) 12.6 Data lists $AA_VACTW[<axial expression>] Axis velocity in PCS (Velocity actual, workPieceCoor) (real) $AA_DTEPB[<axial expression>] Axial distance-to-go for oscillation infeed in BCS (Distance to end, pendulum, baseCoor) (real) $AA_DTEPW[<axial expression>] Axial distance-to-go for oscillation infeed in PCS (Distance to end, pendulum, workpieceCoor) (real) $AC_DTEPB Path distance-to-go for oscillation infeed in BCS (not P2) (Distance to end, pendulum, baseCoor)
Rotary Axes (R2) 13.1 Brief Description Rotary axes in machine tools Rotary axes are used on many modern machine tools. They are required for tool and workpiece orientation, auxiliary movements and various other technological or kinematic purposes. 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 840
Rotary Axes (R2) 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 841
Rotary Axes (R2) 13.1 Brief Description 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. Note Machine data MD20050 $MC_AXCONF_GEOAX_ASSIGN_TAB (assignment of geometry axis to channel axis) must be adapted to suit the corresponding axis.
Page 842
Rotary Axes (R2) 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 843
Rotary Axes (R2) 13.1 Brief Description In general, the following applies for tangential velocity: F = F * D/D = Tangential velocity [mm/min] angle unit = Angular velocity [degrees/min] angle = Diameter acted on by F [mm] With D = 360/π = Unit diameter [mm] unit unit...
Rotary Axes (R2) 13.2 Modulo 360 degrees 13.2 Modulo 360 degrees 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 845
Rotary Axes (R2) 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 846
Rotary Axes (R2) 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.
Rotary Axes (R2) 13.3 Programming rotary axes 13.3 Programming rotary axes 13.3.1 General information Note For general information on programming, please refer to: References: /PAG/Programming Guide, 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 848
Rotary Axes (R2) 13.3 Programming rotary axes ● ACP (positive) and ACN (negative) unambiguously define the rotary-axis traversing direction (irrespective of the actual position). ● When programming AC exclusively or with G90, the traversing direction depends on the rotary-axis actual position. If the target position is greater than the actual position, the axis traverses in the positive direction, otherwise it traverses in the negative direction.
Page 849
Rotary Axes (R2) 13.3 Programming rotary 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 850
Rotary Axes (R2) 13.3 Programming rotary axes Block-search response After a block search with calculation, the collected modulo-conversion search position can be scanned via the $AC_RETPOINT system variable. This system variable returns the position converted to modulo. Supplementary conditions for ASUB after block search with calculation: In this instance, as well as with the cross-channel block-search tool SERUPRO, the modulo conversion simulated in the block search must be performed in the part program.
Page 851
Rotary Axes (R2) 13.3 Programming rotary axes MD36110 $MA_POS_LIMIT_PLUS[AX4] = 340 MD36100 $MA_POS_LIMIT_MINUS[AX4] = 350 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...
Rotary Axes (R2) 13.3 Programming rotary axes Incremental programming (IC, G91) Example for positioning axis: POS[axis name] = IC(+/-value) ● The value identifies the rotary-axis traversing distance. The value can be negative and ≥ +/-360°. ● The value's sign unequivocally defines the rotary-axis traversing direction. ●...
Page 853
Rotary Axes (R2) 13.3 Programming rotary axes ● Application example: Linear movements (cam gear) are linked to the rotary axis, thus certain end positions may not be overtraveled. 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°...
Rotary Axes (R2) 13.3 Programming rotary axes Note In this example, it would be advisable to activate the modulo 360º display (MD30320 $MA_DISPLAY_IS_MODULO = 1). 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.
Rotary Axes (R2) 13.4 Activating rotary axes 13.4 Activating rotary axes Procedure The procedure for activating rotary axes is the same as that for linear axes with a small number of exceptions. It should be noted that, as soon as the axis is defined as a rotary axis (MD30300 $MA_IS_ROT_AX = 1), the axis-specific-machine-/setting-data units are interpreted by the control as follows: Positions...
Page 856
Rotary Axes (R2) 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 absolute; axis with/without working-area limitation can be used.
Rotary Axes (R2) 13.5 Special features of rotary axes 13.5 Special features of rotary axes 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.
Rotary Axes (R2) 13.6 Examples 13.6 Examples 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.
Rotary Axes (R2) 13.7 Data lists 13.7 Data lists 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...
Rotary Axes (R2) 13.7 Data lists 13.7.3 Signals 13.7.3.1 Signals to axis/spindle DB number Byte.bit Description 31, ... 12.4 Traversing-range limitation for modulo axis 13.7.3.2 Signals from axis/spindle DB number Byte.bit Description 31, ... 74.4 Status of software-limit-switch monitoring for modulo axis Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Synchronous Spindles (S3) 14.1 Brief description 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 862
Synchronous Spindles (S3) 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 Figure 14-2 Synchronous operation: Polygonal turning Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Synchronous Spindles (S3) 14.1 Brief description 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: References : /FB3/ Function Manual, Special Functions;...
Page 864
Synchronous Spindles (S3) 14.1 Brief description Number of synchronous spindles It is possible to couple several following spindles to one leading spindle. The number of following spindles on this leading spindle depends on the respective versions of the appropriate software versions. Any number of following spindles in any channels of one NCU or a different NCU can be coupled to this leading spindle.
Page 865
Synchronous Spindles (S3) 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").
Page 866
Synchronous Spindles (S3) 14.1 Brief description The axis identifiers (Sn, SPI(n)) for the following and leading spindles must be programmed with FS and LS for every language instruction COUP..., thus ensuring that the synchronous spindle coupling is unambiguously defined. The valid spindle number must then be assigned axis-specific machine data of a machine axis: MD35000 $MA_SPIND_ASSIGN_TO_MACHAX.
Page 867
Synchronous Spindles (S3) 14.1 Brief description ● Type of coupling between FS and LS The position setpoint or the actual position value of the leading spindle can be used as the reference value for the following spindle. The following coupling types can therefore be selected: –...
Page 868
Synchronous Spindles (S3) 14.1 Brief description The overlaid traversing movement of the FS can be initiated in various ways: ● Programmable position offset of FS for AUTOMATIC and MDA: – Language instructions COUPON and SPOS allow the position reference between FS and LS to be changed while synchronous mode is active, see Section "Selecting synchronous mode of the parts program."...
Synchronous Spindles (S3) 14.1 Brief description 14.1.4 Prerequisites for synchronous mode Conditions on selection of synchronous mode The following conditions must be fulfilled before the synchronous spindle coupling is activated or else alarm messages will be generated. ● The synchronous spindle coupling must have been defined beforehand (either permanently configured via machine data or according to user definition via parts program using COUPDEF).
Synchronous Spindles (S3) 14.1 Brief description 14.1.5 Selecting the parts program's synchronous mode Activate coupling COUPON, COUPONC Language instruction COUPON activates the coupling in the parts program between the programmed spindles with the last valid parameters and thus also activates synchronous mode.
Page 871
Synchronous Spindles (S3) 14.1 Brief description movement at the angular offset programmed with POS . During this time, the IS "Superimposed movement" (DB31, ... DBX98.4) is set. Angular offset POS The defined angular offset POS must be specified as an absolute position referred to the zero degrees position of the leading spindle in a positive direction of rotation.
Synchronous Spindles (S3) 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 873
Synchronous Spindles (S3) 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...
Synchronous Spindles (S3) 14.1 Brief description 14.1.7 Controlling synchronous spindle coupling via PLC Controlling following spindle via PLC Using the coupling-specific, axial VDI interface signals, it is possible to control synchronization motions for the following spindle from the PLC program. This offers the option of utilizing the PLC to disable, suppress or restore a synchronization motion for the following spindle specified by offset programming.
Page 875
Synchronous Spindles (S3) 14.1 Brief description Example Block change behavior after COUPON ; IS "Disable synchronization" ; Set (DB31, ... DBX31.5) = 1 for S2 N51 SPOS=10 SPOS[2]=10 ; Positions correspond to an offset of 0° N52 COUPDEF(S2,S1,1,1,"FINE","DV") N53 COUPON(S2,S1,77) ;...
Synchronous Spindles (S3) 14.1 Brief description Read offset The following system variables can be used to read three different position offset values of the following spindle from the parts program and synchronized actions. The variable $P_COUP_OFFS[Sn] is only available in the parts program. Description NCK variable Programmed position offset of the synchronous spindle...
Page 877
Synchronous Spindles (S3) 14.1 Brief description Figure 14-3 Synchronism monitoring with COUPON and synchronism test mark WAITC with synchronization on a turning leading spindle 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.
Page 878
Synchronous Spindles (S3) 14.1 Brief description Speed/acceleration limits In synchronous mode, the speed and acceleration limit values of the leading spindle are adjusted internally in the control in such a way that the following spindle can imitate its movement, allowing for the currently selected gear stage and effective speed ratio, without violating its own limit values.
Synchronous Spindles (S3) 14.2 Programming of synchronous spindle couplings 14.2 Programming of synchronous spindle couplings 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: COUPONC(FS, LS)
Page 880
Synchronous Spindles (S3) 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 881
Synchronous Spindles (S3) 14.2 Programming of synchronous spindle couplings 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 The following default settings apply to user-defined couplings: ●...
Page 882
Synchronous Spindles (S3) 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 Figure).
Synchronous Spindles (S3) 14.2 Programming of synchronous spindle couplings 14.2.2 Programming instructions for activating and deactivating the coupling Activate synchronous mode Language instruction COUPON is used to activate couplings and synchronous mode. Two methods by which synchronous operation can be activated are available: 1.
Synchronous Spindles (S3) 14.2 Programming of synchronous spindle couplings Example: $AA_COUP_OFFS[S2] If an angular offset is programmed with COUPON, this coincides with the value read after reading the setpoint synchronization. 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...
Page 886
Synchronous Spindles (S3) 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...
Synchronous Spindles (S3) 14.3 Configuration of a synchronous spindle pair via machine data 14.3 Configuration of a synchronous spindle pair via machine data 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.
Synchronous Spindles (S3) 14.3 Configuration of a synchronous spindle pair via machine data ● 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.
Synchronous Spindles (S3) 14.4 Special features of synchronous mode 14.4 Special features of synchronous mode 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. factor) should be matched with one another. If necessary, different parameter blocks should be activated for speed control and synchronized mode.
Page 890
Synchronous Spindles (S3) 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: ●...
Synchronous Spindles (S3) 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 892
Synchronous Spindles (S3) 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, ...
Synchronous Spindles (S3) 14.4 Special features of synchronous mode 14.4.3 Influence on synchronous operation via PLC interface PLC interface signals In synchronous operation, the influence of the PLC on the coupling resulting from the setting of LS and FS interface signals must be noted. The effect of the main PLC interface signals on the synchronous spindle coupling is described below.
Page 894
Synchronous Spindles (S3) 14.4 Special features of synchronous mode If the "Servo enable" signal is not set for either of the spindles before synchronous operation is selected, synchronous operation is still activated when the coupling is switched on. The LS and FS however remain at a standstill until the servo enable signal is set for both of them.
Page 895
Synchronous Spindles (S3) 14.4 Special features of synchronous mode Application "Spindle stop" can halt the synchronous spindle pair without offset since the servo loop position control remains operative. Example When the protective door is opened with an active synchronous spindle coupling, the FS and LS must be stopped without the coupling relationship being altered.
Synchronous Spindles (S3) 14.4 Special features of synchronous mode NC Start (DB21, ... DBX7.1) See section "Configuration of the behavior with NC start". Note NC Start after NC Stop does not deselect synchronous operation. 14.4.4 Differential speed between leading and following spindles When does a differential speed occur? A differential speed develops, e.g.
Page 897
Synchronous Spindles (S3) 14.4 Special features of synchronous mode Example N01 M3 S500 ; S1 rotates positively at 500 rpm ; the master spindle is spindle 1 N02 M2=3 S2=300 ; S2 rotates positively at 300 rpm N05 G4 F1; N10 COUPDEF(S2,S1,-1) ;...
Page 898
Synchronous Spindles (S3) 14.4 Special features of synchronous mode Requirements Basic requirements for differential speed programming: ● Synchronous spindle functionality is required. ● The dynamic response of the following spindle must be at least as high as that of the leading spindle.
Page 899
Synchronous Spindles (S3) 14.4 Special features of synchronous mode Display differential speed The programmed difference component is displayed as the speed setpoint for the programmed differential speed (in our example, corresponds to 100 rpm). The actual speed refers to the motor speed. In the example, the actual speed is 500 rev/min * (-1) + 100 rpm = -400 rev/min.
Synchronous Spindles (S3) 14.4 Special features of synchronous mode Spindle override (DB31, ... DBB19) The "Spindle override" VDI interface (DB31, ... DBB19) only impacts on the speed component additionally programmed for the following spindle. If the spindle override switch is transferred to all axial inputs, then any change in the spindle override value is applied doubly to the following spindle: ●...
Synchronous Spindles (S3) 14.4 Special features of synchronous mode 14.4.6 Delete synchronism correction and NC reset Variable $AA_COUP_CORR[Sn] returns the value zero for different situations in which the synchronism correct is deleted: ● Once a synchronized spindle coupling has been activated for the following in question with COUPON(..)/COUPONC(..), an existing synchronism correction is adopted in the setpoint position.
Page 902
Synchronous Spindles (S3) 14.4 Special features of synchronous mode ● The following coupling properties are still applicable for permanently configured synchronous spindle coupling: – Block change response in synchronous spindle operation: MD21320 $MC_COUPLE_BLOCK_CHANGE_CTRL_1 – Coupling cancellation response: MD21330 $MC_COUPLE_RESET_MODE_1 – Write-protection for coupling parameters: MD21340 $MC_COUPLE_IS_WRITE_PROT_1 –...
Page 903
Synchronous Spindles (S3) 14.4 Special features of synchronous mode This feedforward control mode can be further optimized for a more secure symmetrization process by changing the axis-specific machine data: Machine data Description MD32810 EQUIV_SPEEDCTRL_TIME Equivalent time constant speed control loop for feedforward control MD37200 COUPLE_POS_TOL_COURSE Threshold value for "Coarse synchronism"...
Page 904
Synchronous Spindles (S3) 14.4 Special features of synchronous mode Control parameter sets A separate parameter set with servo loop setting is assigned to each gear stage on spindles. These parameter sets can be used, for example, to adapt the dynamic response of the leading spindle to the following spindle in synchronous operation.
Page 905
Synchronous Spindles (S3) 14.4 Special features of synchronous mode Knee-shaped acceleration characteristic For the leading spindle, the effect of a knee-shaped acceleration characteristic on the following spindle is identified by the following axis-specific machine data: MD35220 $MA_ACCEL_REDUCTION_SPEED_POINT (speed for reduced acceleration) and MD35230 $MA_ACCEL_REDUCTION_FACTOR (reduced acceleration).
Page 906
Synchronous Spindles (S3) 14.4 Special features of synchronous mode Angular offset LS/FS If there must be a defined angular offset between the FS and LS, e.g. when synchronous operation is activated, the "zero degree positions" of the FS and LS must be mutually adapted.
Synchronous Spindles (S3) 14.6 Data lists 14.6 Data lists 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...
Synchronous Spindles (S3) 14.6 Data lists Number Identifier: $MA_ Description 32810 EQUIV_SPEEDCTRL_TIME Equivalent time constant speed control loop for feedforward control 34080 REFP_MOVE_DIST Reference point approach distance 34090 REFP_MOVE_DIST_CORR Reference point offset 34100 REFP_SET_POS Reference point value 35000 SPIND_ASSIGN_TO_MACHAX Assignment of spindle to machine axis 37200 COUPLE_POS_TOL_COARSE Threshold value for "Coarse synchronism"...
Synchronous Spindles (S3) 14.6 Data lists 14.6.4 System variables 14.6.4.1 System variables System variables Description $P_COUP_OFFS[following spindle] Programmed offset of the synchronous spindle $AA_COUP_OFFS[following spindle] Position offset for synchronous spindle (setpoint) $VA_COUP_OFFS[following spindle] Position offset for synchronous spindle (actual value) A more detailed description of system variables can be found in References: /PGA1/, Parameter Manual, System Variables...
Page 912
Synchronous Spindles (S3) 14.6 Data lists Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Memory Configuration (S7) 15.1 Brief description Memory types To store and manage data, the NC requires a static memory and a dynamic memory: ● Static NC memory In the static NC memory, the program data (part programs, cycles, etc.) and the current system and user data (tool management, global user data, etc.) is saved to persistent memory.
Memory Configuration (S7) 15.2 Memory organization 15.2 Memory organization 15.2.1 Active and passive file system The static NC memory contains an active and passive file system. Active file system The active file system contains system data used to parameterize the NCK: ●...
Memory Configuration (S7) 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.
Configuration of the static user memory 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 917
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)
Memory Configuration (S7) 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 919
Memory Configuration (S7) 15.3 Configuration of the static user memory References: SINUMERIK 840D Commissioning Manual SINUMERIK 840Di Manual 7. You can adjust the default memory division by increasing/decreasing individual memory areas of the active file system (tool management, global user data, etc.) for each user. –...
Memory Configuration (S7) 15.4 Configuration of the dynamic user memory 15.4 Configuration of the dynamic user memory 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.
Memory Configuration (S7) 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.
Memory Configuration (S7) 15.5 Data lists 15.5 Data lists 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 923
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 924
Memory Configuration (S7) 15.5 Data lists Number Identifier: $MN_ Description 18320 MM_NUM_FILES_IN_FILESYSTEM Number of files in passive file system 18332 MM_FLASH_FILE_SYSTEM_SIZE Size of flash file system on PCNC 18342 MM_CEC_MAX_POINTS Maximum table size for sag compensation 18350 MM_USER_FILE_MEM_MINIMUM Minimum part-program memory 18352 MM_U_FILE_MEM_SIZE End-user memory for part programs/cycles/files...
Page 925
Memory Configuration (S7) 15.5 Data lists Number Identifier: $MN_ Description 18661 MM_NUM_SYNACT_GUD_INT Number of configurable integer-type GUD variables 18662 MM_NUM_SYNACT_GUD_BOOL Number of configurable Boolean-type GUD variables 18663 MM_NUM_SYNACT_GUD_AXIS Number of configurable axis-type GUD variables 18664 MM_NUM_SYNACT_GUD_CHAR Configurable char-type GUD variable 18665 MM_NUM_SYNACT_GUD_STRING Configurable STRING-type GUD variable...
Memory Configuration (S7) 15.5 Data lists 15.5.1.2 Channel-specific machine data Number Identifier: $MC_ Description 20096 T_M_ADDRESS_EXIT_SPINO Spindle number as address extension 27900 REORG_LOG_LIMIT Percentage of IPO buffer for log-file enable 28000 MM_REORG_LOG_FILE_MEM Memory size for REORG 28010 MM_NUM_REORG_LUD_MODULES Number of modules for local user variables with REORG 28020 MM_NUM_LUD_NAMES_TOTAL...
Memory Configuration (S7) 15.5 Data lists Number Identifier: $MC_ Description 28301 MM_PROTOC_NUM_ETP_OEM_TYP Number of ETP OEM event types 28302 MM_PROTOC_NUM_ETP_STD_TYP Number of ETP standard event types 28400 MM_ABSBLOCK Activate block display with absolute values 28402 MM_ABSBLOCK_BUFFER_CONF Dimension size of upload buffer 28450 MM_TOOL_DATA_CHG_BUFF_SIZE Buffer for tool data changes (DRAM)
Page 928
Memory Configuration (S7) 15.5 Data lists Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Indexing Axes (T1) 16.1 Brief Description Indexing axes in machine tools In certain applications, the axis is only required to approach specific grid points (e.g. location numbers). It is necessary to approach the defined grid points, the indexing positions, both in AUTOMATIC and set-up mode.
Indexing Axes (T1) 16.2 Traversing of indexing axes 16.2 Traversing of indexing axes 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 931
Indexing Axes (T1) 16.2 Traversing of indexing axes ● Continuous mode active: SD41040 $SN_JOG_CONT_MODE_LEVELTRIGGRD = 0 Pressing the traversing key briefly (first rising signal edge) starts the traversing movement of the indexing axis in the desired direction. Traversing continues when the traversing key is released.
Indexing Axes (T1) 16.2 Traversing of indexing axes Alarms in JOG mode If the indexing axis leaves the traversing range defined in the indexing position table when traversing in JOG mode, alarm 20054 "wrong index for indexing axis in JOG" is output. Rev.
Indexing Axes (T1) 16.2 Traversing of indexing axes With absolute positioning, the indexing position to be approached is programmed, and with incremental positioning, the number of indexes to be traversed in the "+" or "-" direction is programmed. On rotary axes, the indexing position can be approached directly across the shortest path (CDC) or with a defined direction of rotation (CACP, CACN).
Indexing Axes (T1) 16.3 Parameterization of indexing axes 16.3 Parameterization of indexing axes 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. The axis is an indexing axis.
Page 935
Indexing Axes (T1) 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).
Indexing Axes (T1) 16.4 Programming of indexing axes 16.4 Programming of indexing axes 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 937
Indexing Axes (T1) 16.4 Programming of indexing axes Programming Comment POS[B]=CDC(50) ; Indexing axis B approaches indexing position 50 directly along the shortest path (possible only for rotary axes). Programming Comment POS[B]=CIC(-4) ; Indexing axis B traverses four indexing positions incrementally from its current position.
Page 938
Indexing Axes (T1) 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 939
Indexing Axes (T1) 16.4 Programming of indexing axes Figure 16-2 Indexing position displays: Modulo rotary axis Programmed indexing position Displayed indexing position ESFW "Exact stop fine" window 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 940
Indexing Axes (T1) 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.
Indexing Axes (T1) 16.5 Equidistant index intervals 16.5 Equidistant index intervals 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 942
Indexing Axes (T1) 16.5 Equidistant index intervals Linear axis Modulo rotary axis Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Indexing Axes (T1) 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.
Indexing Axes (T1) 16.5 Equidistant index intervals 16.5.3 Response of the Hirth axes in particular situations STOP/RESET When NC-STOP and RESET are performed during a traversing movement, the next indexing position is approached. EMERGENCY STOP After an EMERGENCY STOP, the PLC or the operator must move the indexing axis back to an indexing position in JOG mode before the longitudinal axis can be moved in/down.
Indexing Axes (T1) 16.5 Equidistant index intervals 16.5.4 Restrictions Transformations The axis for which the Hirth tooth system is defined cannot take part in kinematic transformations. PRESET The axis for which the Hirth tooth system is defined cannot be set to a new value with PRESET.
Indexing Axes (T1) 16.5 Equidistant index intervals 16.5.5 Modified activation of machine data RESET A RESET is required in order to activate the following machine data after new values have been assigned to them. MD10900 $MN_INDEX_AX_LENGTH_POS_TAB_1 MD10920 $MN_INDEX_AX_LENGTH_POS_TAB_2 MD10910 $MN_INDEX_AX_POS_TAB_1 MD10930 $MN_INDEX_AX_POS_TAB_2 MD30500 $MA_INDEX_AX_ASSIGN_POS_TAB Extended Functions...
Indexing Axes (T1) 16.6 Starting up indexing axes 16.6 Starting up indexing axes 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 948
Indexing Axes (T1) 16.6 Starting up indexing axes Machine data examples The assignment of the above machine data is described in the following paragraphs using two examples. 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.
Page 949
Indexing Axes (T1) 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...
Indexing Axes (T1) 16.7 Special features of indexing axes 16.7 Special features of indexing axes An additional incremental work offset can also be generated for indexing axes in AUTOMATIC mode with the handwheel using the DRF function. Software limit switch The software limit switches are also effective during traversing movements once the indexing axis has been referenced.
Indexing Axes (T1) 16.8 Examples 16.8 Examples 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 952
Indexing Axes (T1) 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.
Indexing Axes (T1) 16.9 Data lists 16.9 Data lists 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 indexing positions used in Table 1 10910 INDEX_AX_POS_TAB_1[n] Indexing position table 1...
Indexing Axes (T1) 16.9 Data lists 16.9.2 Setting data 16.9.2.1 General setting data Number Identifier: $SN_ Description 41050 JOG_CONT_MODE_LEVELTRIGGRD JOG continuous in inching mode 16.9.3 Signals 16.9.3.1 Signals from axis/spindle DB number Byte.bit Description 31, ... 60.4, 60.5 Referenced/synchronized 1, referenced/synchronized 2 31, ...
Tool Change (W3) 17.1 Brief Description Tool change CNC-controlled machine tools are equipped with tool magazines and automatic tool change facility for the complete machining of workpieces. Sequence The procedure for changing tools comprises three steps: 1. Movement of the tool carrier from the machining position to the tool change position 2.
Tool Change (W3) 17.2 Tool magazines and tool change equipments 17.2 Tool magazines and tool change equipments 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.
Tool Change (W3) 17.5 Starting the tool change 17.5 Starting the tool change 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...
Tool Change (W3) 17.6 Tool change point 17.6 Tool change point Tool change point The selection of the tool change point has a significant effect on the cut-to-cut time (Page 956). The tool change point is chosen according to the machine tool concept and, in certain cases, according to the current machining task.
Tool Change (W3) 17.8 Examples 17.8 Examples 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 960
Tool Change (W3) 17.8 Examples Figure 17-1 Chronological sequence of tool change 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;...
Tool Change (W3) 17.9 Data lists 17.9 Data lists 17.9.1 Machine data 17.9.1.1 General machine data Number Identifier: $MN_ Description 18082 MM_NUM_TOOL Number of tools 17.9.1.2 Channel-specific machine data Number Identifier: $MC_ Description 22200 AUXFU_M_SYNC_TYPE Output timing of M functions 22220 AUXFU_T_SYNC_TYPE Output timing of T functions...
Page 962
Tool Change (W3) 17.9 Data lists Extended Functions Function Manual, 01/2008, 6FC5397-1BP10-3BA0...
Grinding-specific tool offset and tool monitoring (W4) 18.2 Tool offset for grinding operations 18.2 Tool offset for grinding operations 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 965
Grinding-specific tool offset and tool monitoring (W4) 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: ●...
Grinding-specific tool offset and tool monitoring (W4) 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 Tool type Cutting edge position For turning and grinding...
Page 967
Grinding-specific tool offset and tool monitoring (W4) 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 968
Grinding-specific tool offset and tool monitoring (W4) 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 with monitoring (i.e.
Grinding-specific tool offset and tool monitoring (W4) 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 970
Grinding-specific tool offset and tool monitoring (W4) 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 971
Grinding-specific tool offset and tool monitoring (W4) 18.2 Tool offset for grinding operations Furthermore, the same tool type applies to tool edges 1 and 2. Tool type $TC_DP1 Bit 0 Length 1 $TC_DP3 Bit 2 Length 2 $TC_DP4 Bit 3 Length 3 $TC_DP5 Bit 4...
Page 972
Grinding-specific tool offset and tool monitoring (W4) 18.2 Tool offset for grinding operations Current width $TC_TPG5 The width of the grinding wheel measured, for example, after the dressing operation, is entered here. Maximum speed and grinding wheel peripheral speed $TC_TPG6 $TC_TPG7 The upper limit values for maximum speed and peripheral speed of the grinding wheel must be entered in these parameters.
Page 973
Grinding-specific tool offset and tool monitoring (W4) 18.2 Tool offset for grinding operations Parameter number for radius calculation $TC_TPG9 This parameter specifies which offset values are used for the GWPS calculation and tool monitoring of the minimum wheel radius ($TC_TPG3). $TC_TPG9 = 3 Length 1 (geometry + wear + base, depending on tool type) $TC_TPG9 = 4...
Grinding-specific tool offset and tool monitoring (W4) 18.2 Tool offset for grinding operations 18.2.4 Examples of grinding tools Assignment of length offsets Tool length compensations for the geometry axes or radius compensation in the plane are assigned on the basis of the current plane. Planes The following planes and axis assignments are possible (abscissa, ordinate, applicate for 1st, 2nd and 3rd geometry axes):...
Page 975
Grinding-specific tool offset and tool monitoring (W4) 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 976
Grinding-specific tool offset and tool monitoring (W4) 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, 01/2008, 6FC5397-1BP10-3BA0...
Page 977
Grinding-specific tool offset and tool monitoring (W4) 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, 01/2008, 6FC5397-1BP10-3BA0...
Grinding-specific tool offset and tool monitoring (W4) 18.3 Online tool offset 18.3 Online tool offset 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 979
Grinding-specific tool offset and tool monitoring (W4) 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.
Grinding-specific tool offset and tool monitoring (W4) 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 981
Grinding-specific tool offset and tool monitoring (W4) 18.3 Online tool offset Example: Existing Lead: = +1 conditions: 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 Write online tool offset continuously PUTFTOCF(<polynomial no.>, <reference value>, <length1_2_3>, <channel no.>, <spindle...
Grinding-specific tool offset and tool monitoring (W4) 18.3 Online tool offset Example: FCTDEF(1, -100, 100, -$AA_IW[X], 1) ; Function definition PUTFTOCF (1, $AA_IW[X], 1, 2, 1) ; Write online tool offset continuously Length 1 of tool for spindle 1 in channel 2 is modified as a function of X axis movement. Note The online tool offset for a (geometric) grinding tool that is not active can be activated by specifying the appropriate spindle number.
Grinding-specific tool offset and tool monitoring (W4) 18.3 Online tool offset Note Command FTOCON must be written to the channel in which the offset is to be applied (machining channel for grinding operation). FTOCOF always corresponds to the reset position. PUTFTOC commands are effective only when the part program and FTOCON command are active.
Page 984
Grinding-specific tool offset and tool monitoring (W4) 18.3 Online tool offset Task After the grinding operation has started at Y100, the grinding wheel must be dressed by 0.05 (in V direction). The dressing amount must be compensated continuously by means of an online offset.
Grinding-specific tool offset and tool monitoring (W4) 18.3 Online tool offset 18.3.5 Write online tool offset discretely PUTFTOC This command writes an offset value by means of a program command. PUTFTOC(<value>, <length1_2_3>, <channel no.>, <spindle no.>) Put Fine Tool Offset Compensation The wear of the specified length (1, 2 or 3) is modified online by the programmed value.
Page 986
Grinding-specific tool offset and tool monitoring (W4) 18.3 Online tool offset Resets and operating mode changes ● When online offset is active, NC-STOP and program end with M2/M30 are delayed until the amount of compensation has been traversed. ● The online tool offset is immediately deselected in response to NC-RESET. ●...
Grinding-specific tool offset and tool monitoring (W4) 18.4 Online tool radius compensation 18.4 Online tool radius compensation General information When the longitudinal axis of the tool and the contour are perpendicular to each other, the offset can be applied as a length compensation to one of the three geometry axes (online tool length compensation).
Grinding-specific tool offset and tool monitoring (W4) 18.5 Grinding-specific tool monitoring 18.5 Grinding-specific tool monitoring 18.5.1 General information Activation The tool monitoring function is a combination of geometry and speed monitors and can be activated for any grinding tool (tool type: 400 to 499). Selection The monitoring function is selected: ●...
Grinding-specific tool offset and tool monitoring (W4) 18.5 Grinding-specific tool monitoring 18.5.2 Geometry monitoring Function The following quantities can be monitored: ● The current grinding wheel radius ● The current grinding wheel width The current wheel radius is compared with the value stored in parameter $TC_TPG3. The current radius is compared with the parameter number of the first edge (D1) of a grinding tool declared in parameter $TC_TPG9.
Grinding-specific tool offset and tool monitoring (W4) 18.5 Grinding-specific tool monitoring 18.5.3 Speed monitoring Function The speed monitor checks the grinding wheel peripheral speed (parameter $TC_TPG7) as well as the maximum spindle speed (parameter $TC_TPG6). The unit of measurement is: ●...
Grinding-specific tool offset and tool monitoring (W4) 18.5 Grinding-specific tool monitoring 18.5.4 Selection/deselection of tool monitoring Part program commands The following part program commands are provided for selecting and deselecting the grinding-specific tool monitor of an active or inactive tool: Command Meaning TMON...
Grinding-specific tool offset and tool monitoring (W4) 18.6 Constant grinding wheel peripheral speed (GWPS). 18.6 Constant grinding wheel peripheral speed (GWPS). 18.6.1 General information What is GWPS? A grinding wheel peripheral speed, as opposed to a spindle speed, is generally programmed for grinding wheels.
Grinding-specific tool offset and tool monitoring (W4) 18.6 Constant grinding wheel peripheral speed (GWPS). 18.6.2 Selection/deselection and programming of GWPS, system variable Part program commands The GWPS is selected and deselected with the following part program commands: Command Description GWPSON Selection of GWPS for the active tool in the Grinding wheel peripheral speed ON channel.
Grinding-specific tool offset and tool monitoring (W4) 18.6 Constant grinding wheel peripheral speed (GWPS). 18.6.3 GWPS in all operating modes General information This function allows the constant grinding wheel peripheral speed (GWPS) function to be selected for a spindle immediately after POWER ON and to ensure that it remains active after an operating mode changeover, RESET or part program end.
Grinding-specific tool offset and tool monitoring (W4) 18.6 Constant grinding wheel peripheral speed (GWPS). Programming The spindle speed can be modified through the input of a grinding wheel peripheral speed. The spindle speed can be modified through: ● programming in the part program/overstoring ●...
Page 996
Grinding-specific tool offset and tool monitoring (W4) 18.6 Constant grinding wheel peripheral speed (GWPS). Programming T1 D1 ; Select T1 and D1 S1=1000 M1=3 ; 1000 rpm for spindle 1 S2=1500 M2=3 ; 1500 rpm for spindle 2 GWPSON ; ;Selection of GWPS for active tool T1 S[$P_AGT[1]] = 60 Set GWPS to 60 m/s for active tool n=1909.85 rpm...
Grinding-specific tool offset and tool monitoring (W4) 18.8 Data lists 18.8 Data lists 18.8.1 Machine data 18.8.1.1 General machine data Number Identifier: $MN_ Description 18094 MM_NUM_CC_TDA_PARAM Number of TDA 18096 MM_NUM_CC_TOA_PARAM Number of TOA 18100 MM_NUM_CUTTING_EDGES_IN_TOA Tool offsets per TOA 18.8.1.2 Channel-specific machine data Number...
NC/PLC interface signals (Z2) 19.1 Digital and analog NCK I/Os 19.1.1 Signals to NC (DB10) Overview of signals from PLC to NC DB10 Signals to NC interface PLC → NC Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0...
Page 1000
NC/PLC interface signals (Z2) 19.1 Digital and analog NCK I/Os DB10 Signals to NC interface PLC ! NC Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Disable digital NCK inputs Input 16 Input 15 Input 14 Input 13...