Siemens SINUMERIK 840D Function Manual

Siemens SINUMERIK 840D Function Manual

Mc axes and spindles
Hide thumbs Also See for SINUMERIK 840D:
Table of Contents

Advertisement

Quick Links

SINUMERIK
SINUMERIK MC
Axes and spindles
Function Manual
Valid for:
Control system
SINUMERIK MC
Software
CNC software version 1.12
06/2019
A5E47437747B AA
Preface
Fundamental safety
instructions
G2: Velocities, setpoint /
actual value systems, closed-
loop control
F1: Travel to fixed stop
P1: Transverse axes
V1: Feedrates
P2: Positioning axes
R2: Rotary axes
T1: Indexing axes
G1: Gantry axes
R1: Referencing
S9: Setpoint switchover
B2: Acceleration and jerk
N3: Software cams, position
switching signals
M3: Coupled axes
P5: Oscillation
R3: Extended stop and retract
H1: Manual traversing
S1: Spindles
S3: Synchronous spindle
Appendix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
A

Advertisement

Table of Contents
loading

Summary of Contents for Siemens SINUMERIK 840D

  • Page 1 Preface Fundamental safety instructions G2: Velocities, setpoint / actual value systems, closed- loop control SINUMERIK F1: Travel to fixed stop SINUMERIK MC P1: Transverse axes Axes and spindles V1: Feedrates P2: Positioning axes Function Manual R2: Rotary axes T1: Indexing axes G1: Gantry axes R1: Referencing S9: Setpoint switchover...
  • Page 2 Note the following: WARNING Siemens products may only be used for the applications described in the catalog and in the relevant technical documentation. If products and components from other manufacturers are used, these must be recommended or approved by Siemens. Proper transport, storage, installation, assembly, commissioning, operation and maintenance are required to ensure that the products operate safely and without any problems.
  • Page 3: Preface

    Siemens' content, and adapt it for your own machine documentation. Training At the following address (http://www.siemens.com/sitrain), you can find information about SITRAIN (Siemens training on products, systems and solutions for automation and drives). FAQs You can find Frequently Asked Questions in the Service&Support pages under Product Support (https://support.industry.siemens.com/cs/de/en/ps/faq).
  • Page 4 Note regarding the General Data Protection Regulation Siemens observes standard data protection principles, in particular the principle of privacy by design. That means that this product does not process / store any personal data, only technical functional data (e.g. time stamps).
  • Page 5 Preface Information on the structure and contents Structure This Function Manual is structured as follows: ● Inner title (page 3) with the title of the Function Manual, the SINUMERIK controls as well as the software and the version for which this version of the Function Manual is applicable and the overview of the individual functional descriptions.
  • Page 6 Preface Quantity structure Explanations concerning the NC/PLC interface are based on the absolute maximum number of the following components: ● Mode groups (DB11) ● Channels (DB21, etc.) ● Axes/spindles (DB31, etc.) Data types The control provides the following data types that can be used for programming in part programs: Type Meaning...
  • Page 7 Preface Program code Comment ELSE <> AXPOS ENDIF Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 8 Preface Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 9: Table Of Contents

    Table of contents Preface .................................3 Fundamental safety instructions.........................27 General safety instructions.....................27 Warranty and liability for application examples ..............27 Industrial security ........................28 G2: Velocities, setpoint / actual value systems, closed-loop control ............31 Brief description ........................31 Velocities, traversing ranges, accuracies................31 2.2.1 Velocities..........................31 2.2.2 Traversing ranges ........................33 2.2.3...
  • Page 10 Table of contents Optimization of the control .....................77 2.6.1 Position controller, position setpoint filter: Balancing filter .............77 2.6.2 Position controller, position setpoint filter: Phase filter............81 2.6.3 Position controller: injection of positional deviation..............83 2.6.4 Position control with proportional-plus-integral-action controller..........84 Data lists ..........................87 2.7.1 Machine data..........................87 2.7.1.1...
  • Page 11 Table of contents V1: Feedrates ............................125 Brief description ........................125 Path feedrate F ........................126 5.2.1 Feedrate type G93, G94, G95....................128 5.2.2 Type of feedrate G96, G961, G962, G97, G971 ..............131 5.2.3 Feedrate for thread cutting (G33, G34, G35, G335, G336) ..........135 5.2.3.1 Feedrate with G33........................135 5.2.3.2...
  • Page 12 Table of contents Positioning axis dynamic response ..................199 Programming........................201 6.5.1 General ..........................201 6.5.2 Revolutional feed rate in external programming ..............203 Block change........................204 6.6.1 Settable block change time ....................206 6.6.2 End of motion criterion with block search................211 Control by the PLC.......................212 6.7.1 Starting concurrent positioning axes from the PLC..............214 6.7.2...
  • Page 13 Table of contents Detailed description......................239 8.2.1 Traversing of indexing axes in the AUTOMATIC mode ............239 8.2.2 Traversing of indexing axes in the JOG mode ..............239 8.2.3 Traversing of indexing axes by PLC ..................241 Commissioning........................242 8.3.1 Machine data for indexing axes ...................242 8.3.2 Machine data for equidistant indexing intervals ..............245 8.3.2.1...
  • Page 14 Table of contents 9.8.1 Creating a gantry grouping....................283 9.8.2 Setting the NC-PLC interface....................285 9.8.3 Commencing start-up......................285 9.8.4 Setting warning and trip limits ....................287 Data lists ..........................288 9.9.1 Machine data........................288 9.9.1.1 Axis/spindlespecific machine data ..................288 R1: Referencing............................291 10.1 Brief Description........................291 10.2 Axisspecific referencing .......................292 10.3 Channelspecific referencing....................294...
  • Page 15 Table of contents 10.12 Data lists ..........................337 10.12.1 Machine data........................337 10.12.1.1 NC-specific machine data ....................337 10.12.1.2 Channelspecific machine data .....................337 10.12.1.3 Axis/spindlespecific machine data ..................337 S9: Setpoint switchover ..........................339 11.1 Brief description ........................339 11.2 Startup..........................341 11.3 Flow diagram........................344 11.4 Boundary conditions......................345 11.5 Data lists ..........................346 11.5.1...
  • Page 16 Table of contents 12.2.10 Acceleration reserve for the radial acceleration (channel-specific)........361 12.2.10.1 General Information ......................361 12.2.10.2 Parameterization ........................362 12.2.11 Jerk limitation with path interpolation (SOFT) (channel-specific) .........363 12.2.11.1 General Information ......................363 12.2.11.2 Parameterization ........................365 12.2.11.3 Programming........................365 12.2.12 Jerk limitation with single-axis interpolation (SOFTA) (axis-specific)........366 12.2.12.1 Parameterization ........................366 12.2.12.2...
  • Page 17 Table of contents 12.4.2 Setting data ..........................397 12.4.2.1 Channelspecific setting data ....................397 12.4.3 System variables........................397 N3: Software cams, position switching signals..................399 13.1 Brief description ........................399 13.2 Cam signals and cam positions ...................400 13.2.1 Generation of cam signals for separate output ..............400 13.2.2 Generation of cam signals with gated output ...............404 13.2.3...
  • Page 18 Table of contents 14.2.5 Programming........................435 14.2.6 Access to table positions and table segments ..............441 14.2.7 Activation/deactivation ......................445 14.2.8 Modulo-leading axis special case ..................446 14.2.9 Behavior in AUTOMATIC, MDA and JOG modes..............446 14.2.10 Effectiveness of PLC interface signals.................447 14.2.11 Diagnosing and optimizing utilization of resources ..............447 14.2.12 Supplementary conditions....................451 14.2.13...
  • Page 19 Table of contents 14.5.4.4 Switching off leading axes of a coupling module (CPLOF) ..........507 14.5.4.5 Implicit creation and deletion of coupling modules...............507 14.5.5 Programming coupling characteristics .................508 14.5.5.1 Coupling rule (CPLNUM, CPLDEN, CPLCTID) ..............508 14.5.5.2 Coupling relationship (CPLSETVAL) ...................510 14.5.5.3 Co-ordinate reference (CPFRS):..................511 14.5.5.4 Block change behavior (CPBC) ...................512...
  • Page 20 Table of contents 14.6.2.1 Programming (VELOLIMA, ACCLIMA) ................570 14.6.2.2 Examples ..........................572 14.6.2.3 System variables........................573 14.7 General supplementary conditions..................573 14.8 Data lists ..........................574 14.8.1 Machine data........................574 14.8.1.1 NC-specific machine data ....................574 14.8.1.2 Channelspecific machine data .....................574 14.8.1.3 Axis/spindlespecific machine data ..................575 14.8.2 Setting data ..........................575 14.8.2.1...
  • Page 21 Table of contents R3: Extended stop and retract........................615 16.1 Brief description ........................615 16.2 ESR executed autonomously in the drive ................615 16.2.1 Fundamentals ........................615 16.2.2 Configuring stopping in the drive..................616 16.2.3 Configuring retraction in the drive ..................618 16.2.4 Configuring generator operation in the drive................619 16.2.5 ESR is enabled via system variable..................621 16.2.6...
  • Page 22 Table of contents 17.9 Approaching a fixed point in JOG ..................671 17.9.1 Function ..........................671 17.9.2 Parameterization ........................674 17.9.3 Programming........................676 17.9.4 Supplementary Conditions ....................676 17.9.5 Application example ......................677 17.10 Position travel in JOG ......................678 17.10.1 Function ..........................678 17.10.2 Parameter setting.........................681 17.10.3 Supplementary Conditions ....................681 17.10.4 Application example ......................682...
  • Page 23 Table of contents 17.16.1.2 Channel-specific machine data ....................728 17.16.1.3 Axis/spindlespecific machine data ..................729 17.16.2 Setting data ..........................730 17.16.2.1 General setting data......................730 17.16.2.2 Channel-specific setting data ....................730 17.16.2.3 Axis/spindle-specific setting data ..................730 17.16.3 System variable........................731 17.16.3.1 System variable........................731 17.16.4 OPI variable .........................731 17.16.4.1 OPI variable .........................731 S1: Spindles .............................733...
  • Page 24 Table of contents 18.4.9 Configurable gear step in M70 .....................805 18.4.10 Suppression of the gear stage change for DryRun, program test and SERUPRO ....807 18.5 Additional adaptations to the spindle functionality that can be configured......809 18.6 Selectable spindles ......................811 18.7 Programming........................815 18.7.1 Programming from the part program..................815...
  • Page 25 Table of contents 19.1.2 Synchronous mode ......................849 19.1.3 Prerequisites for synchronous mode..................855 19.1.4 Selecting synchronous mode for a part program ..............856 19.1.5 Deselecting the synchronous mode for the part program ............858 19.1.6 Controlling synchronous spindle coupling via PLC ..............859 19.1.7 Monitoring of synchronous operation ...................862 19.2 Programming........................864...
  • Page 26 Table of contents Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 27: Fundamental Safety Instructions

    Fundamental safety instructions General safety instructions WARNING Danger to life if the safety instructions and residual risks are not observed If the safety instructions and residual risks in the associated hardware documentation are not observed, accidents involving severe injuries or death can occur. ●...
  • Page 28: Industrial Security

    In order to protect plants, systems, machines and networks against cyber threats, it is necessary to implement – and continuously maintain – a holistic, state-of-the-art industrial security concept. Products and solutions from Siemens constitute one element of such a concept.
  • Page 29 Fundamental safety instructions 1.3 Industrial security WARNING Unsafe operating states resulting from software manipulation Software manipulations, e.g. viruses, Trojans, or worms, can cause unsafe operating states in your system that may lead to death, serious injury, and property damage. ● Keep the software up to date. ●...
  • Page 30 Fundamental safety instructions 1.3 Industrial security Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 31: G2: Velocities, Setpoint / Actual Value Systems, Closed-Loop Control

    G2: Velocities, setpoint / actual value systems, closed- loop control Brief description The description of functions explains how to parameterize a machine axis in relation to: ● Actual-value/measuring systems ● Setpoint system ● Operating accuracy ● Travel ranges ● Axis velocities ●...
  • Page 32 G2: Velocities, setpoint / actual value systems, closed-loop control 2.2 Velocities, traversing ranges, accuracies Example: Interpolation cycle = 12 ms N10 G0 X0 Y0; [mm] N20 G0 X100 Y100; [mm] ⇒ Path length programmed in block = 141.42 mm ⇒ V = (141.42 mm/12 ms) 0.9 = 10606.6 mm/s = 636.39 m/min Minimum path, axis velocity...
  • Page 33: Traversing Ranges

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.2 Velocities, traversing ranges, accuracies Range of values for feedrate for positioning axes: Metric system: Inch system: 0.001 ≤ FA ≤ 999,999.999 0.001 ≤ FA ≤ 399,999.999 [mm/min, mm/rev, degrees/min, degrees/rev] [inch/min, inch/rev] Range of values for spindle speed S: 0.001 ≤...
  • Page 34: Positioning Accuracy Of The Control System

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.2 Velocities, traversing ranges, accuracies R2: Rotary axes (Page 221) 2.2.3 Positioning accuracy of the control system Actual-value resolution and computational resolution The positioning accuracy of the control depends on the actual-value resolution (=encoder increments/(mm or degrees)) and the computational resolution (=internal increments/(mm or degrees)).
  • Page 35 G2: Velocities, setpoint / actual value systems, closed-loop control 2.2 Velocities, traversing ranges, accuracies The input and display resolution is determined by the specified operator panel front used, whereby the display resolution for position values with the machine data: MD9004 $MM_DISPLAY_RESOLUTION (display resolution) can be changed.
  • Page 36: Scaling Of Physical Quantities Of Machine And Setting Data

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.2 Velocities, traversing ranges, accuracies ⇒ Example of related part program: Program code Comment N20 G0 X 1.0000 Y 1.0000 ; Axes travel to the position X=1.0000 mm, Y=1.0000 mm; N25 G0 X 5.0002 Y 2.0003 ;...
  • Page 37 G2: Velocities, setpoint / actual value systems, closed-loop control 2.2 Velocities, traversing ranges, accuracies Physical unit Unit Revolutional feedrate 1 mm/degree Compensation value linear position 1 mm Compensation value angular position 1 degree The user can define different input/output units for machine and setting data. This also requires an adjustment between the newly selected input/output units and the internal units via the following machine data: ●...
  • Page 38 G2: Velocities, setpoint / actual value systems, closed-loop control 2.2 Velocities, traversing ranges, accuracies (The internal unit is mm/s) ⇒ The scaling factor for the linear velocities is to differ from the standard setting. For this, in machine data: MD10220 $MN_SCALING_USER_DEF_MASK bit number 2 must be set.
  • Page 39: System Of Units, Metric/Inch

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.3 System of units, metric/inch System of units, metric/inch 2.3.1 Function 2.3.1.1 Parameterized and programmed system of units SINUMERIK control systems can operate with a metric system of units as well as an inch system of units.
  • Page 40: Extended System Of Units Functionality

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.3 System of units, metric/inch Display in the basic system in the programmed system of units Tool data Work offsets Data in the workpiece coordinate system NC/PLC interface In the case of NC/PLC interface signals containing dimension information, e.g. feedrate for path and positioning axes, data exchange is carried out with the PLC in the configured basic system.
  • Page 41: Commissioning

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.3 System of units, metric/inch ● Data backup with system of units identifier INCH/METRIC (see "Commissioning (Page 41)") ● Automatic data conversions when the system of units is changed, e.g. for: –...
  • Page 42 G2: Velocities, setpoint / actual value systems, closed-loop control 2.3 System of units, metric/inch Conversion factor (NC-specific) The factor for converting from metric into the inch system of units is set in machine data: MD10250 $MN_SCALING_VALUE_INCH (conversion factor for inch) Default value: 25.4 The conversion factor becomes active when selecting the non-metric basic system (MD10240 $MN_SCALING_SYSTEM_IS_METRIC = 0).
  • Page 43 G2: Velocities, setpoint / actual value systems, closed-loop control 2.3 System of units, metric/inch MD11220 $MN_INI_FILE_MODE = 2 Note The INCH/METRIC identifier is only generated if the compatibility machine data: MD10260 $MN_CONVERT_SCALING_SYSTEM = TRUE Note Rounding machine data All length-related machine data is rounded to the nearest 1 pm when writing in the inch system of units (MD10240 $MN_SCALING_SYSTEM_IS_METRIC=0 and MD10260 $MN_CONVERT_SCALING_SYSTEM=1), to avoid rounding problems.
  • Page 44 G2: Velocities, setpoint / actual value systems, closed-loop control 2.3 System of units, metric/inch User tool data The physical units for user-defined tool and tool cutting edge data can be set in the following machine data: ● MD10290 $MN_CC_TDA_PARAM_UNIT ● MD10292 $MN_CC_TOA_PARAM_UNIT Note When the system of units is switched over, all length-related tool data is converted to the new system of units.
  • Page 45: Programming

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.3 System of units, metric/inch Example: Increment evaluations for the 1st axis ● Metric: MD31090 $MA_JOG_INCR_WEIGHT[ 0 ; AX1 ] = 0.001 mm ● Inch: MD31090 $MA_JOG_INCR_WEIGHT[ 1 ; AX1 ] = 0.00254 mm ≙ 0.0001 inch In this way, MD31090 does not have to be written at every inch/metric switchover.
  • Page 46 G2: Velocities, setpoint / actual value systems, closed-loop control 2.3 System of units, metric/inch Activating the metric system of units G71: The metric system of units is used to read and write geometrical data in units of length. Technological data in units of length (e.g. feedrates, tool offsets, adjustable work offsets, machine data and system variables) is read and written using the parameterized basic sys‐...
  • Page 47 G2: Velocities, setpoint / actual value systems, closed-loop control 2.3 System of units, metric/inch Example The basic system is metric (MD10240 $MN_SCALING_SYSTEM_IS_METRIC = 1). However, the workpiece drawing has dimensions shown in inches. This is the reason why within the part program, the inch system of units is selected.
  • Page 48 Length-related setting data Length-related system variables GUDs LUDs PUDs R parameters Siemens cycles Jog/handwheel increment factor P: Writing/reading is performed in the programmed system of units. G: Writing/reading is performed in the configured basic system Synchronized actions Note Reading position data in synchronized actions...
  • Page 49: Setpoint/Actual-Value System

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system Setpoint/actual-value system 2.4.1 General information Control loop A control loop with the following structure can be configured for every closed-loop controlled axis/spindle: Figure 2-1 Block diagram of a control loop Setpoint output A setpoint telegram can be output for each axis/spindle.
  • Page 50 G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system Reference point approach is executed by the selected measuring system. Every position measuring system must be referenced separately. Monitoring and Compensations , For explanations of encoder monitoring, see Function Manual Axis monitoring .
  • Page 51: Setpoint And Encoder Assignment

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system The axis "traverses" with a following error, similar to a real axis. A simulation axis is defined by setting the two following machine data to "0": MD30130 $MA_CTRLOUT_TYPE[n] (output value of setpoint) MD30240 $MA_ENC_TYPE[n] (type of actual-value acquisition) As soon as the standard machine data has been loaded, the axes become simulation axes.
  • Page 52 G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system MD30110 $MA_CTRLOUT_MODULE_NR Setpoint assignment: Drive number / module number System Value Meaning The logical I/O address of the drive is assigned from MD13050 $MN_DRIVE_LOGIC_ADDRESS[ n ] via the drive number. The drive number (x) results from the index (n) of MD13050: x = n + 1 Note...
  • Page 53 G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system MD30230 $MA_ENC_INPUT_NR[ n ] Actual value assignment: Input on drive module/measuring circuit module System Value Meaning Number of the encoder interface within the PROFIdrive telegram Examples PROFIdrive telegram 103 x = 1 →...
  • Page 54 G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system MD30242 $MA_ENC_IS_INDEPENDENT[ n, axis ] Encoder is independent System Value Meaning The encoder is not independent. The encoder is independent. If the actual-value corrections, which are made for the encoder selected for the position control, are not to influence the actual value of the second encoder defined in the same axis, then this should be declared as independent.
  • Page 55: Adapting The Motor/Load Ratios

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system Note Machine data index [ n ] The machine data index [ n ] for encoder assignment has the following meaning: ● n = 0: First encoder assigned to the machine axis ●...
  • Page 56 G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system Motor/load gear The motor/load gear supported by SINUMERIK is configured via the following machine data: ● MD31060 $MA_DRIVE_AX_RATIO_NUMERA (numerator load gear) ● MD31050 $MA_DRIVE_AX_RATIO_DENOM (denominator load gear) The transmission ratio is obtained from the numerator/denominator ratio of both machine data. The associated parameter sets are used automatically as default by the control system to synchronize the position controller with the relevant transmission ratios.
  • Page 57: Speed Setpoint Output

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system In this case, the following applies to axes/spindles in positioning mode: ● A non-abrupt gear change is only possible at zero speed. To do this, the tool-side position before and after a gear change are set equal for a change in the ratio, since the mechanical position does not (or hardly) change during a gear stage change.
  • Page 58 G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system With the machine data: MD32100 $MA_AX_MOTION_DIR (traversing direction) the direction of motion of the axis can be reversed without affecting the control direction of the position control. Speed setpoint adjustment In the case of speed setpoint comparison, the NC is informed which speed setpoint corresponds to which motor speed in the drive, for parameterizing the axial control and monitoring.
  • Page 59: Machine Data Of The Actual Value System

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system Figure 2-3 Maximum speed setpoint However, due to control processes, the axes should not reach their maximum velocity (MD32000 $MA_MAX_AX_VELO) at 100% of the speed setpoint, but at 80% to 95%. In case of axes, whose maximum speed is attained at around 80% of the speed setpoint range, the default value (80%) of the machine data: MD32000 $MA_MAX_AX_VELO (maximum axis velocity)
  • Page 60: Actual-Value Resolution

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system Encoder-dependent machine data: $MA_ Meaning MD30210 ENC_SEGMENT_NR[ n ] Actual value assignment: Number of bus segments MD30220 ENC_MODULE_NR[ n ] Actual value assignment: Drive number/ measuring circuit number MD30230 ENC_INPUT_NR[ n ] Actual value assignment: Input on drive module/measuring circuit module...
  • Page 61 G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system Parameterizing the actual value resolution depending on the axis type (linear/rotary axis) The control system calculates the actual value resolution based on the following machine data. Machine data for calculating the actual value resolution Linear axis Linear axis Rotary axis...
  • Page 62 G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system Machine data of the actual value resolution The actual-value resolution results from the design of the machine, whether gearboxes are available and their gear ratio, the leadscrew pitch for linear axes and the resolution of the encoder being used.
  • Page 63: Example: Linear Axis With Linear Scale

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system Computational resolution: Rotary axes Machine data General machine data: $MN_ Meaning MD10200 INT_INCR_PER_MM Computational resolution for linear positions MD10210 INT_INCR_PER_DEG Computational resolution for angular posi‐ tions Recommended setting The above components and settings that are responsible for the actual-value resolution, should be selected so that the actual-value resolution is higher than the parameterized computational resolution.
  • Page 64: Example: Linear Axis With Rotary Encoder On Motor

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system 2.4.6.3 Example: Linear axis with rotary encoder on motor Figure 2-5 Linear axis with rotary encoder on motor The ratio of the internal increments to the encoder increments per mm is calculated as follows: Example Assumptions: ●...
  • Page 65: Example: Linear Axis With Rotary Encoder On The Machine

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system Machine data Value MD30300 $MA_IS_ROT_AX MD31000 $MA_ENC_IS_LINEAR[0] MD31040 $MA_ENC_IS_DIRECT[0] MD31020 $MA_ENC_RESOL[0] 2048 MD31025 $MA_ENC_PULSE_MULT 2048 MD31030 $MA_LEADSCREW_PITCH MD31080 $MA_DRIVE_ENC_RATIO_NUMERA[0] MD31070 $MA_DRIVE_ENC_RATIO_DENOM[0] MD31060 $MA_DRIVE_AX_RATIO_NUMERA[0] MD31050 $MA_DRIVE_AX_RATIO_DENOM[0] MD10210 $MN_INT_INCR_PER_DEG 10000 An encoder increment corresponds to 0.004768 internal increments or 209.731543 encoder increments correspond to an internal increment.
  • Page 66: Example: Rotary Axis With Rotary Encoder On Motor

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system 2.4.6.5 Example: Rotary axis with rotary encoder on motor Figure 2-7 Rotary axis with rotary encoder on motor The ratio of the internal increments to the encoder increments per degree is calculated as follows: Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 67: Example: Rotary Axis With Rotary Encoder On The Machine

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system Example Assumptions: ● Rotary encoder on the motor: 2048 pulses/revolution ● Internal pulse multiplication: 2048 ● Gearbox, motor / rotary axis: 5:1 ● Computational resolution: 1000 increments per degree Machine data Value MD30300 $MA_IS_ROT_AX...
  • Page 68: Example: Intermediate Gear With Encoder On The Tool

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.4 Setpoint/actual-value system 2.4.6.7 Example: Intermediate gear with encoder on the tool Figure 2-9 Intermediate gear with encoder directly on the rotating tool The ratio of the internal increments to the encoder increments per degree is calculated as follows: Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 69: Closed-Loop Control

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.5 Closed-loop control Closed-loop control 2.5.1 General information Position control of an axis/spindle The closed-loop control of an axis consists of the current and speed control loop of the drive plus a higher-level position control loop in the NC. The basic structure of an axis/spindle position control is illustrated below: MD32410 $MA_AX_JERK_TIME...
  • Page 70 G2: Velocities, setpoint / actual value systems, closed-loop control 2.5 Closed-loop control MD33000 $MA_FIPO_TYPE = <FIPO mode> <FIPO mode> Meaning Differential fine interpolation with mean value generation (smoothing) over an IPO cycle Cubic fine interpolation Cubic fine interpolation optimized for use with the pre-control for the highest contour precision factor (servo gain) In order that few contour deviations occur in the continuous-path mode, a high servo gain factor...
  • Page 71 G2: Velocities, setpoint / actual value systems, closed-loop control 2.5 Closed-loop control Figure 2-11 Dynamic response adaptation Example of a dynamic response adaptation of three axes without speed feedforward control The equivalent time constant of the position control loop is: Axis 1: 30 ms Axis 2:...
  • Page 72: Switchable Position Setpoint Filter Circuits

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.5 Closed-loop control ● With speed feedforward control: ● For combined torque/speed feedforward control Note If dynamic response adaptation is realized for a geometry axis, then all other geometry axes must be set to the same dynamic response. Further information Commissioning Manual CNC: NC, PLC, drives 2.5.2...
  • Page 73 G2: Velocities, setpoint / actual value systems, closed-loop control 2.5 Closed-loop control "Selectable filter circuits" (6FC5800-0xxy0-0YB0) Function Position control of an axis/spindle with switchable position setpoint filter circuit: MD32410 $MA_AX_JERK_TIME MD32910 $MA_DYN_MATCH_TIME MD32895 $MA_DESVAL_DELAY_TIME MD32200 $MA_POSCTRL_GAIN Position setpoint Velocity setpoint Position actual value Speed actual value Speed setpoint...
  • Page 74: Commissioning

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.5 Closed-loop control Parameterization Select two filter types in order to switch between the two filter circuits from the part program: ● The jerk filter type of the first filter circuit is selected in the "Ones position" of machine data MD32402 AX_JERK_MODE, and the associated filter settings are set in index 0 of the machine data to parameterize the filter.
  • Page 75: Parameter Sets Of The Position Controller

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.5 Closed-loop control Use the following system variables to interrogate the status of the filter circuits: ● $VA_DESVAL_FILTERS_ACTIVE - to determine the currently active filter circuit. ● $VA_DESVAL_FILTERS_DELTA_POS indicates the actual position difference between the filter circuits in order to determine a suitable switchover point.
  • Page 76: Relevant System Data

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.5 Closed-loop control Number Identifier $MA_ Meaning 32810 EQUIV_SPEEDCTRL_TIME Equivalent time constant, speed control loop for feed forward control 32910 DYN_MATCH_TIME Time constant for dynamic response adaptation 36200 AX_VELO_LIMIT Threshold value for velocity monitoring Tapping, thread cutting For tapping or thread cutting, the following applies with regard to the parameter sets of axes: ●...
  • Page 77: Optimization Of The Control

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.6 Optimization of the control MD32407 $MA_AX_JERK_FIR_FREQ Corner frequency axial jerk filter, type 5 MD32408 $MA_AX_JERK_FIR_ORDER Filter order, axial jerk filter, type 5 MD32409 $MA_AX_JERK_FIR_WINDOW Window type, axial jerk filter, type 5 MD32410 $MA_AX_JERK_TIME Time constant for the axial jerk filter...
  • Page 78 G2: Velocities, setpoint / actual value systems, closed-loop control 2.6 Optimization of the control MD32620 $MA_FFW_MODE (feedforward control mode) Value Meaning Speed precontrol Combined torque/speed precontrol Activating and deactivating via the part program Part programs can be used to activate and deactivate the feedforward control for all axes, using commands FFWON and FFWOF.
  • Page 79 G2: Velocities, setpoint / actual value systems, closed-loop control 2.6 Optimization of the control The following rules apply to making manual fine adjustments: Monitoring Measure Effect Overshoot Increase MD32810 The position controller responds more slowly. ⇒ The tendency to overshoot decreases. Problem: The contour error (deviation from the program‐...
  • Page 80 G2: Velocities, setpoint / actual value systems, closed-loop control 2.6 Optimization of the control MD32910 $MA_DYN_MATCH_TIME (time constant of dynamic response adaptation) This allows the same servo gain value (K ) to be displayed. Different servo gain display values (K ) usually point to the following: ●...
  • Page 81: Position Controller, Position Setpoint Filter: Phase Filter

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.6 Optimization of the control Control response with POWER ON, RESET, REPOS, etc. In the case of POWER ON and RESET, as well as with "Enable machine data", the setting data of the feedforward control is read in again (see the appropriate values of the relevant machine data).
  • Page 82 G2: Velocities, setpoint / actual value systems, closed-loop control 2.6 Optimization of the control Example: Position controller cycle clock: 2 ms ⇒ adjustable time constant: 0.0 to 0.128 s Note The time constant of the phase filter setpoint delays the axis' response characteristics for tapping, retractions, and exact stops / block changes, etc.
  • Page 83: Position Controller: Injection Of Positional Deviation

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.6 Optimization of the control 2.6.3 Position controller: injection of positional deviation Preconditions ● The function can only be used on axes with two encoders: MD30200 $MA_NUM_ENCS = 2 One of the encoders must be parameterized as an indirect measuring system and the other as a direct measuring system: –...
  • Page 84: Position Control With Proportional-Plus-Integral-Action Controller

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.6 Optimization of the control An input value "100%" means: A supplementary torque in accordance with SINAMICS parameter p2003 is applied when the determined position difference between the two measuring systems reaches the following value: ●...
  • Page 85 G2: Velocities, setpoint / actual value systems, closed-loop control 2.6 Optimization of the control Procedure 1. First optimize the position control loop as a proportional-action controller using the tools described in the previous subsections. 2. Increase the tolerances of the following machine data while measurements are being taken to determine the quality of the position control with proportional-plus-integral-action controller: –...
  • Page 86 G2: Velocities, setpoint / actual value systems, closed-loop control 2.6 Optimization of the control Supplementary conditions If the integrator function is used, DSC (Dynamic Stiffness Control) must be switched off. Example Setting result after several iterative processes for R and T Machine data settings: ●...
  • Page 87: Data Lists

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.7 Data lists Data lists 2.7.1 Machine data 2.7.1.1 Displaying machine data Number Identifier: $MM_ Description 9004 DISPLAY_RESOLUTION Display resolution 9010 SPIND_DISPLAY_RESOLUTION Display resolution for spindles 9011 DISPLAY_RESOLUTION_INCH Display resolution for INCH system of measurement 2.7.1.2 NC-specific machine data Number...
  • Page 88: Axis/Spindlespecific Machine Data

    G2: Velocities, setpoint / actual value systems, closed-loop control 2.7 Data lists 2.7.1.4 Axis/spindlespecific machine data Number Identifier: $MA_ Description 30110 CTRLOUT_MODULE_NR Setpoint assignment: Drive number 30120 CTRLOUT_NR Setpoint assignment: Setpoint output on drive module 30130 CTRLOUT_TYPE Output type of setpoint 30200 NUM_ENCS Number of encoders...
  • Page 89 G2: Velocities, setpoint / actual value systems, closed-loop control 2.7 Data lists Number Identifier: $MA_ Description 32414 AX_JERK_DAMP Damping, axial jerk filter 32450 BACKLASH Backlash 32500 FRICT_COMP_ENABLE Friction compensation active 32610 VELO_FFW_WEIGHT Feedforward control factor for speed feedforward con‐ trol 32620 FFW_MODE Feedforward control mode...
  • Page 90 G2: Velocities, setpoint / actual value systems, closed-loop control 2.7 Data lists Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 91: F1: Travel To Fixed Stop

    F1: Travel to fixed stop Brief description Function With the "Travel to fixed stop" function, moving machine parts, e.g. tailstock or sleeve, can be traversed so that they can apply a defined torque or force with respect to other machine parts over any time period.
  • Page 92: Detailed Description

    F1: Travel to fixed stop 3.2 Detailed description Detailed description 3.2.1 Programming Function Travel to fixed stop The "Travel to fixed stop" function is controlled via the FXS, FXST and FXSW commands. The activation can also be performed without traversing motion of the relevant axis. The torque is immediately limited.
  • Page 93 F1: Travel to fixed stop 3.2 Detailed description Changes to the torque limiting (FXST) The torque limit value can be changed in each block. The change becomes effective before executing the traversing motion programmed in the block. The torque limitation acts in addition to the acceleration limitation (ACC).
  • Page 94: Functional Sequence

    F1: Travel to fixed stop 3.2 Detailed description 3.2.2 Functional sequence 3.2.2.1 Selection Figure 3-1 Example of travel to fixed stop Procedure The NC detects that the function "Travel to fixed stop" is selected via the command FXS[x]=1 and signals the PLC using the IS DB31, ... DBX62.4 ("Activate travel to fixed stop") that the function has been selected.
  • Page 95: Fixed Stop Is Reached

    F1: Travel to fixed stop 3.2 Detailed description 3.2.2.2 Fixed stop is reached Detecting the fixed stop Detecting the fixed stop or identifying that the machine axis has reached the fixed stop can be set using the following machine data: MD37040 $MA_FIXED_STOP_BY_SENSOR = <value>...
  • Page 96 F1: Travel to fixed stop 3.2 Detailed description Monitoring window If, in the traversing block to the fixed stop or since the beginning of the program, no specific value for the monitoring window is programmed with FXSW then the value set in the machine data is active: MD37020 $MA_FIXED_STOP_WINDOW_DEF (default for fixed stop monitoring window) If the axis leaves the position it was in when the fixed stop was detected by more than the...
  • Page 97: Fixed Stop Is Not Reached

    F1: Travel to fixed stop 3.2 Detailed description Overview Figure 3-2 Fixed stop is reached 3.2.2.3 Fixed stop is not reached Alarm suppression Alarms for various causes of breakage can be suppressed using the machine data: MD37050 $MA_FIXED_STOP_ALARM_MASK = <value> Value Description: Suppressed alarms Alarm 20091 "Fixed stop not reached"...
  • Page 98: Deselection

    F1: Travel to fixed stop 3.2 Detailed description Actions in the case of a fault or breakage The following actions are executed when a fault occurs or for a breakage: ● The NC/PLC interface signal is reset: DB31, ... DBX62.4 = 0 (activate travel to fixed stop) ●...
  • Page 99 F1: Travel to fixed stop 3.2 Detailed description Actions when deselecting the function When deselecting the function, the following actions are executed: ● A preprocessing stop is initiated (STOPRE) ● The NC/PLC interface signals are reset – DB31, ... DBX62.4 = 0 (activate travel to fixed stop) –...
  • Page 100 F1: Travel to fixed stop 3.2 Detailed description Overview ① Traversing block with deselection FXS[<axis>]=0 Figure 3-4 Fixed stop deselection Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 101: Behavior During Block Search

    F1: Travel to fixed stop 3.2 Detailed description 3.2.3 Behavior during block search Function Block search with calculation ● If the target block is located in a program section in which the axis must stop at a fixed limit, then the fixed stop is approached if it has not yet been reached. ●...
  • Page 102 F1: Travel to fixed stop 3.2 Detailed description SERUPRO: $AA_FXS (reference state) During SERUPRO, $AA_FXS supplies the following values depending on the activation status of the "Travel to fixed stop" function: Activation status of the "travel to fixed stop" func‐ System variable $AA_FXS == tion "Deactivated"...
  • Page 103 F1: Travel to fixed stop 3.2 Detailed description REPOS and FXS With REPOS, the functionality of FXS is repeated automatically and called FXS-REPOS in the following. This sequence is comparable to the FXS_SERUPRO_ASUP.MPF program. Every axis is taken into account and the torque last programmed before the search target is applied. The user can treat FXS separately in a SERUPRO ASUP.
  • Page 104: Behavior For Reset And Function Abort

    F1: Travel to fixed stop 3.2 Detailed description 3.2.4 Behavior for reset and function abort NC reset As long as the function is still not in the "Successful travel to fixed stop" state, the travel to fixed stop can be aborted with NC reset. Even when the fixed stop has already has been approached, but the specified stop torque not yet fully reached, then the function can still be aborted with NC reset.
  • Page 105: Setting Data

    F1: Travel to fixed stop 3.2 Detailed description Contour monitoring The axis contour monitoring function is inoperative while "Travel to fixed stop" is active. Positioning axes For "Travel to fixed stop" with positioning axes POSA, the block change is executed even when the positioning axis has not yet reached the fixed stop by this time.
  • Page 106 F1: Travel to fixed stop 3.2 Detailed description Clamping torque SD43510 $SA_FIXED_STOP_TORQUE (clamping torque) Note Clamping torque greater than 100% A value for the clamping torque in SD43510 greater than 100% of the maximum motor torque is only advisable for a short time. In addition, the maximum motor torque is limited by the drive. For example, the following drive parameters have a limiting effect: ●...
  • Page 107: System Variables

    F1: Travel to fixed stop 3.2 Detailed description 3.2.7 System variables Reference/actual state The reference and actual state of the "travel to fixed stop" function can be read using the following system variables: ● $AA_FXS = <value> (status, "Travel to fixed stop" reference state) ●...
  • Page 108: Alarms

    F1: Travel to fixed stop 3.2 Detailed description Program code Comment R100=$AA_IM[X1] ; THEN (normal case) IF R100 ... ; Evaluation of the ; actual position GOTOF PROG_END FXS_ERROR: ; ELSE (error case) CASE($VA_FXS_INFO[X1]) OF 0 GOTOF LABEL_0 OF 1 GOTOF LABEL_1 ... ;...
  • Page 109: Travel With Limited Torque/Force Foc

    F1: Travel to fixed stop 3.2 Detailed description Enabling the fixed stop alarms The following machine data can be use to set whether the fixed stop alarms ● Alarm 20091 "Fixed stop not reached", ● Alarm 20094 "Fixed stop aborted" are displayed: MD37050 $MA_FIXED_STOP_ALARM_MASK (enable of the fixed stop alarms) Settable functional behavior for fixed stop alarms...
  • Page 110 F1: Travel to fixed stop 3.2 Detailed description FOC[<axis>] Meaning Parameter Meaning Activate torque/force limiting FOCON: Deactivate torque/force limiting FOCOF: Activate non-modal torque/force limiting FOC: Channel axis name, type: AXIS <Axis>: Example Program code Comment N10 FOCON[X] ; Modal activation of the torque limit N20 X100 Y200 FXST[X]=15 ;...
  • Page 111 F1: Travel to fixed stop 3.2 Detailed description Block-related activation (FOC) The function for the actual block is activated using the FOC command. Activating the function using a synchronized action takes effect up to the end of the current part program block.
  • Page 112: Examples

    F1: Travel to fixed stop 3.3 Examples ● If the acceleration limitation is not adapted accordingly, an increase in the following error occurs during the traversing motion. ● If the acceleration limitation is not adapted accordingly, the end-of-block position is possibly reached later than specified in the machine data: MD36040 $MA_STANDSTILL_DELAY_TIME The machine data:...
  • Page 113: Data Lists

    F1: Travel to fixed stop 3.4 Data lists Program code Comment N60 GET(Y) Include axis Y back into the path group Note Avoidance of multiple selection for FXS To avoid a multiple selection, we recommend that prior to activating FXS, query either the $AA_FXS==0 system variable or a user-specific flag.
  • Page 114: Setting Data

    F1: Travel to fixed stop 3.4 Data lists Number Identifier: $MA_ Description 37040 FIXED_STOP_BY_SENSOR Fixed stop detection via sensor 37050 FIXED_STOP_ALARM_MASK Enabling the fixed stop alarms 37052 FIXED_STOP_ALARM_REACTION Reaction to fixed stop alarms 37060 FIXED_STOP_ACKN_MASK Monitoring of PLC acknowledgments for travel to fixed stop 37070 FIXED_STOP_ANA_TORQUE...
  • Page 115: P1: Transverse Axes

    P1: Transverse axes Function Transverse axis Within the framework of "turning" technology, the transverse axis refers to the machine axis that travels perpendicular to the axis of symmetry of the spindle, in other words, to longitudinal axis Figure 4-1 Position of the transverse axis in the machine coordinate system Geometry axis as transverse axis Every geometry axis of a channel can be defined as a transverse axis.
  • Page 116 P1: Transverse axes 4.1 Function Programming and display Reference axis for in the diameter G96 / G961 / G962 Programming: DIAM* SCC[<Axis>] channel-specific modal channel-specific modal G group 29 Reference axis for G96/G961/G962 Acceptance during axis re‐ DIAM*A[<Axis>] placement: axis-specific modal Axis-specific non-modal dia‐...
  • Page 117 P1: Transverse axes 4.1 Function DIAM90/DIAM90A[<Axis>] After activation of the reference-mode-dependent diameter programming with DIAM90/ DIAM90A[<Axis>], the following data is always displayed in relation to diameter regardless of the operating mode (G90/G91): ● Actual value ● Actual values read with reference to the workpiece coordinate system (WCS): –...
  • Page 118: Parameterization

    P1: Transverse axes 4.2 Parameterization Extended functions for data that is always radius-related: The following applies for PLC axes, via FC18 or axes controlled exclusively from the PLC: ● The dimension for PLC axes in the radius also applies to several transverse axes with diameter function and is independent of channel-specific or axis-specific diameter programming.
  • Page 119 P1: Transverse axes 4.2 Parameterization The following axis-specific basic position is assigned to the transverse axis during the power- up of the NC: "Transfer of the diameter programming channel status" DIAMCHANA[<Axis>] With the release of the axis-specific diameter programming (MD30460, bit 2 = 1), the following axis-specific operations can be used at the user's end: ●...
  • Page 120 P1: Transverse axes 4.2 Parameterization MD20360 $MC_TOOL_PARAMETER_DEF_MASK Value Meaning When jogging around circles, the circle center point coordinate is always a radius value, see SD42690 $SC_JOG_CIRCLE_CENTRE For cycle masks, the absolute values of the transverse axis are always meant as the radius.
  • Page 121: Programming

    P1: Transverse axes 4.3 Programming To ensure that the reference axis for G96 / G961 / G962 is retained during a reset, end of part program or start of part program, the following setting must be made: ● Channel reset or part program end: MD20110 $MC_RESET_MODE_MASK, bit 18 = 1 ●...
  • Page 122: Supplementary Conditions

    P1: Transverse axes 4.4 Supplementary conditions Reference is made exclusively to the transverse axis of the channel. Axis-specific diameter programming for several transverse axes in one channel Note The additionally specified axis must be activated via MD30460 $MA_BASE_FUNCTION_MASK with bit 2 = 1. The axis specified must be a known axis in the channel.
  • Page 123: Examples

    P1: Transverse axes 4.5 Examples Examples Example 1 X is a transverse axis defined via MD20100 $MC_DIAMETER_AX_DEF. Y is a geometry axis and U is an additional axis. These two axes are additional transverse axes with diameter specifications defined in MD30460 $MA_BASE_FUNCTION_MASK with bit 2 = DIAMON is not active after power up.
  • Page 124: Data Lists

    P1: Transverse axes 4.6 Data lists Program code Comment N100 WAIT(1,1) ;wait for synchronous marker 1 in channel 1 N110 GETD(Y) ;Axis replacement direct Y N120 Y100 ;Y is the channel-specific diameter programming ;subordinated in channel 2; i.e. dimension in the radius Data lists 4.6.1 Machine data...
  • Page 125: V1: Feedrates

    V1: Feedrates Brief description Types of feedrate The feedrate determines the machining speed (axis or path velocity) and is observed in every type of interpolation, even where allowance is made for tool offsets on the contour or on the tool center point path (depending on G commands).
  • Page 126: Path Feedrate F

    V1: Feedrates 5.2 Path feedrate F ● Via the PLC ● Per program command Path feedrate F Path feedrate F The path feedrate represents the geometrical total of the speed components in the participating axes. It is therefore generated from the individual motions of the interpolating axes. The default uses the axial speeds of the geometry axes which have been programmed.
  • Page 127 V1: Feedrates 5.2 Path feedrate F A group of G commands is provided for this purpose: ● CFTCP Programmed feedrate acting on the center point path. ● CFC Programmed feedrate acting on the contour. ● CFCIN Programmed feedrate acting only on the contour with a concave spline. Further information Programming Manual Fundamentals Maximum tool path velocity...
  • Page 128: Feedrate Type G93, G94, G95

    V1: Feedrates 5.2 Path feedrate F Smoothed actual values are used for: ● Thread cutting (G33, G34, G35) ● Feedrate per revolution (G95, G96, G97, FPRAON) ● Display of speed, actual position and velocity 5.2.1 Feedrate type G93, G94, G95 Effectiveness The feedrate types G93, G94, G95 are active for the G commands of group 1 (except G0) in the automatic modes.
  • Page 129 V1: Feedrates 5.2 Path feedrate F Revolutional feedrate (G95) The revolutional feedrate is programmed in the following units relative to a master spindle: ● [mm/rev] on standard metric systems ● [inch/rev] on standard imperial systems ● [degrees/rev] on a rotary axis The path velocity is calculated from the actual speed of the spindle according to the following formula: V = n * F...
  • Page 130 V1: Feedrates 5.2 Path feedrate F Program code Comment Setting data Revolutional feedrate in JOG mode The behavior of an axis in terms of its revolutional feedrate relative to the master spindle of the channel to which the axis is currently assigned in JOG mode depends on the settings in the NC- specific setting data: SD41100 $SN_JOG_REV_IS_ACTIVE, Bit <x>...
  • Page 131: Type Of Feedrate G96, G961, G962, G97, G971

    V1: Feedrates 5.2 Path feedrate F 5.2.2 Type of feedrate G96, G961, G962, G97, G971 Constant cutting rate (G96, G961) The constant cutting rate is used on turning machines to keep the cutting conditions constant, independently of the work diameter of the workpiece. This allows the tool to be operated in the optimum cutting performance range and therefore increases its service life.
  • Page 132 V1: Feedrates 5.2 Path feedrate F Diameter programming and reference axis for several transverse axes in one channel: One or more transverse axes are permitted and can be activated simultaneously or separately: ● Programming and displaying in the user interface in the diameter ●...
  • Page 133 V1: Feedrates 5.2 Path feedrate F G97, G971 can be used to avoid speed variations in motions along the transverse axis without machining (e.g. cutting tool). Note G96, G961 is only active during workpiece machining (G1, G2, G3, spline interpolation, etc., where feedrate F is active).
  • Page 134 V1: Feedrates 5.2 Path feedrate F DB31, ... DBX83.1 (programmed speed too high) In order to ensure smooth rotation with large part diameters, the spindle speed is not permitted to fall below a minimum level. This speed can be set via the setting data: SD43210 $SA_SPIND_MIN_VELO_G25 (minimum spindle speed) and, depending on the gear stage, with the machine data: MD35140 $MA_GEAR_STEP_MIN_VELO_LIMIT (minimum speed of the gear stage)
  • Page 135: Feedrate For Thread Cutting (G33, G34, G35, G335, G336)

    V1: Feedrates 5.2 Path feedrate F ● If a negative maximum spindle speed is programmed with the LIMS program command when G96, G961 are active, alarm 14820 "Negative maximum spindle speed programmed for G96, G961" is output. ● If no constant cutting rate is programmed when G96, G961 is selected for the first time, alarm 10900 "No S value programmed for constant cutting rate"...
  • Page 136: Linear Increasing/Decreasing Thread Pitch Change With G34 And G35

    V1: Feedrates 5.2 Path feedrate F NC stop, single block NC stop and single block (even at the block boundary) are only active after completion of thread chaining. All successive G33 blocks and the first following non-G33 block are traversed as a block.
  • Page 137 V1: Feedrates 5.2 Path feedrate F The meaning is as follows: The thread pitch change to be programmed [mm/rev Thread pitch of axis target point coordinate, thread axis [mm/rev] Initial thread pitch (programmed under I, J or K) [mm/rev] Thread length [mm] The absolute value of F must be applied to G34 or G35 depending on the required pitch increase of decrease.
  • Page 138: Acceleration Behavior Of The Axis For G33, G34 And G35

    V1: Feedrates 5.2 Path feedrate F Program code Comment N1614 G0 Z40 N1616 M17 Monitoring during the block preparation Any pitch changes that would overload the thread axis when G34 is active or would result in an axis standstill when G35 is active, are detected in advance during block preparation. Alarm 10604 "Thread pitch increase too high"...
  • Page 139 V1: Feedrates 5.2 Path feedrate F SD42010 $SC_THREAD_RAMP_DISP[<n>] = <Value> <n> Meaning <Value> Meaning Acceleration behavior at the < 0 The acceleration of the thread axis when run‐ thread run-in: ning-in the thread is as programmed (Default: -1) in BRISK/SOFT The acceleration of the thread axis when run‐...
  • Page 140: Programmed Run-In And Run-Out Path For G33, G34 And G35 (Dits, Dite)

    V1: Feedrates 5.2 Path feedrate F 5.2.3.4 Programmed run-in and run-out path for G33, G34 and G35 (DITS, DITE) The run-in and run-out path of the thread can be specified in the part program with the DITS and DITE addresses. The thread axis is accelerated or braked along the specified path.
  • Page 141 V1: Feedrates 5.2 Path feedrate F Meaning Define thread run-in path DITS: Define thread run-out path DITE: Only paths, and not positions, are programmed with DITS and DITE. <value>: The programmed run-in/run-out path is handled according to the current dimension setting (inches, metric).
  • Page 142: Fast Retraction During Thread Cutting

    V1: Feedrates 5.2 Path feedrate F See also Acceleration behavior of the axis for G33, G34 and G35 (Page 138) 5.2.3.5 Fast retraction during thread cutting Function The "Rapid retraction during thread cutting" function can be used to interrupt thread cutting without causing irreparable damage in the following circumstances: ●...
  • Page 143 V1: Feedrates 5.2 Path feedrate F DILF= : Define length of retraction path The value preset during MD configuration (MD21200 $MC_LIFTFAST_DIST) can be modified in the part program by programming DILF. Note: The configured MD value is always active following NC-RESET. The retraction direction is controlled in conjunction with ALF with G com‐...
  • Page 144 V1: Feedrates 5.2 Path feedrate F Define absolute retraction position for the geometry axis or machine axis in POLF[]: the index Effectiveness: modal In the case of geometry axes, the assigned value is inter‐ =<Value>: preted as a position in the workpiece coordinate system. In the case of machine axes, it is interpreted as a position in the machine coordinate system.
  • Page 145 V1: Feedrates 5.2 Path feedrate F Example Program code Comment N55 M3 S500 G90 G18 ; Set active machining plane. N65 MSG ("thread cutting") MM_THREAD: N67 $AC_LIFTFAST=0 ; Reset before starting the thread. N68 G0 Z5 N69 X10 N70 G33 Z30 K5 LFON DILF=10 LFWP ;...
  • Page 146: Convex Thread (G335, G336)

    V1: Feedrates 5.2 Path feedrate F 5.2.3.6 Convex thread (G335, G336) Function The G commands G335 and G336 can be used to turn convex threads (= differing to the cylindrical form). Application is the machining of extremely large components that sag in the machine because of their self-weight.
  • Page 147 V1: Feedrates 5.2 Path feedrate F Syntax The syntax for the programming of a convex thread therefore has the following general form: G335/G336 <axis target point coordinate(s)> <pitch> <arc> [<starting point offset>] Permissible arc areas The arc programmed at G335/G336 must be in an area in which the specified thread main axis (I, J or K) has the main axis share on the arc over the entire arc: Permissible areas for the Z axis (pitch programmed Permissible areas for the X axis (pitch programmed...
  • Page 148 V1: Feedrates 5.2 Path feedrate F ● Block search / REPOS / ASUP ● Alarms / emergency stop / malfuncations corresponds to the behavior for G33/G34/G35. There are no specific restrictions. Examples Example 1: Convex thread in the clockwise direction with end and center point programming Program code Comment N5 G0 G18 X50 Z50...
  • Page 149 V1: Feedrates 5.2 Path feedrate F Figure 5-5 Convex thread in the counter-clockwise direction with end and center point programming Example 3: Convex thread in the clockwise direction with end point and radius programming Program code N5 G0 G18 X50 Z50 N10 G335 Z100 K=3.5 CR=32 SF=90 Figure 5-6 Convex thread in the clockwise direction with end point and radius programming...
  • Page 150 V1: Feedrates 5.2 Path feedrate F Figure 5-7 Convex thread in the clockwise direction with end point and opening angle programming Example 5: Convex thread in the clockwise direction with center point and opening angle programming Program code N5 G0 G18 X50 Z50 N10 G335 K=3.5 KR=25 IR=-20 AR=102.75 SF=90 Figure 5-8 Convex thread in the clockwise direction with center point and opening angle programming...
  • Page 151: Feedrate For Tapping Without Compensating Chuck (G331, G332)

    V1: Feedrates 5.2 Path feedrate F Figure 5-9 Convex thread in the clockwise direction with end and intermediate point programming 5.2.4 Feedrate for tapping without compensating chuck (G331, G332) Function A thread can be tapped by rigid tapping with the functions G331 (tapping) and G332 (tapping retraction).
  • Page 152 V1: Feedrates 5.2 Path feedrate F Machine data ● Preventing stop events In the machine data, the stopping response when G331 / G332 is active is defined: MD11550 $MN_STOP_MODE_MASK, Bit <x> = <value> Value Meaning When G331 / G332 is active, stopping is not performed during a path motion or dwell time (G4).
  • Page 153: Feedrate For Tapping With Compensating Chuck (G63)

    V1: Feedrates 5.2 Path feedrate F Boundary conditions Further overrides The following overrides are inactive during rigid tapping ● Programmable path feedrate override OVR ● Rapid traverse override 5.2.5 Feedrate for tapping with compensating chuck (G63) Function G63 is a subfunction for tapping threads using a tap with compensating chuck. An encoder (position encoder) is not required.
  • Page 154 V1: Feedrates 5.2 Path feedrate F This corresponds to a reference radius of: FGREF = 360 mm / (2π) = 57.296 mm This default is independent of the active basic system (MD10240 $MN_SCALING_SYSTEM_IS_METRIC) and the currently active G70/G71/G700/ G710 setting. Special features of the feedrate weighting for rotary axes in FGROUP: Program code N100 FGROUP(X,Y,Z,A)
  • Page 155 V1: Feedrates 5.2 Path feedrate F Program code Comment N230 X10 ; Feedrate = 2540 mm/min, path = 254 mm, R5 = approx. 6 N240 DO $R6=$AC_TIME N250 X10 A10 ; Feedrate = 2540 mm/min, path = 254.2 mm, R6 = approx. N260 DO $R7=$AC_TIME N270 A10 ;...
  • Page 156: Feedrate For Positioning Axes (Fa)

    V1: Feedrates 5.3 Feedrate for positioning axes (FA) $PA_FGROUP[<axis>] Returns the value "1" if the specified axis affects the path velocity by means of the basic setting or through FGROUP programming. Otherwise, the variable returns the value "0". $P_FGROUP_MASK Returns a bit key of the channel axes programmed with FGROUP which are to affect the path velocity.
  • Page 157: Feedrate Control

    V1: Feedrates 5.4 Feedrate control Output to PLC The feedrate value can be output to the PLC: ● To the channel-specific NC/PLC interface via: DB21, ... DBB158 - DBB193 ● To the axis-specific NC/PLC interface via: DB31, ... DBB78 - DBB81 The output time is specified with the machine data: MD22240 $MC_AUXFU_F_SYNC_TYPE (output time of F functions) The output is suppressed in the default setting (MD22240 = 3), because drops in velocity can...
  • Page 158 V1: Feedrates 5.4 Feedrate control Channel-specific "Feed stop" for geometry axes in the JOG mode The traversing motion of a specific geometry axis of the channel is stopped using the channel- specific NC/PLC interface signals: ● DB21, ... DBX12.3 (feedrate stop, geometry axis 1) ●...
  • Page 159: Feedrate Override Via Machine Control Panel

    V1: Feedrates 5.4 Feedrate control 5.4.2 Feedrate override via machine control panel Function With the "Feedrate override via machine control panel", the operator can locally increase or decrease the path feedrate at the machine as a percentage with immediate effect. To achieve this, the programmed feedrates are multiplied with the override values available at the NC/PLC interface.
  • Page 160 V1: Feedrates 5.4 Feedrate control MD12030 $MN_OVR_FACTOR_FEEDRATE [<n>] (evaluation of the path feedrate override switch) MD12050 $MN_OVR_FACTOR_RAPID_TRA [<n>] (evaluation of the rapid traverse override switch) An active feedrate override acts on all path axes that are assigned to the current channel. An active rapid traverse override has an effect on all the axes that are traversed with rapid traverse and that are assigned to the current channel.
  • Page 161 V1: Feedrates 5.4 Feedrate control The override factor can be specified from the PLC either in the binary or Gray-coded format. The format is communicated to the NC via the following machine data: MD12000 $MN_OVR_AX_IS_GRAY_CODE (axis feedrate override switch Gray-coded) The following permanent assignment applies to binary code: Binary code Decimal...
  • Page 162 V1: Feedrates 5.4 Feedrate control Binary code Decimal Override factor 00000100 0.04 ≙ 4% 01100100 1.00 ≙ 100% 11001000 2.00 ≙ 200% With Gray coding, the override factors corresponding to the switch position must be entered in the following machine data: MD12070 $MN_OVR_FACTOR_SPIND_SPEED [<n>] (evaluation of the spindle override switch) Effectiveness of the "spindle override":...
  • Page 163: Programmable Feedrate Override

    V1: Feedrates 5.4 Feedrate control 5.4.3 Programmable feedrate override Function The "Programmable feedrate override" function can be used to change the velocity level of path and positioning axes via the part program. Programming Syntax Meaning Feedrate change for path feedrate F OVR=<value>...
  • Page 164 V1: Feedrates 5.4 Feedrate control Activation The dry run feedrate can be selected in the automatic modes and activated from the PLC or the operator panel front. When activated from the operator panel front, the interface signal: DB21, ... DBX24.6 (dry run feedrate selected) is set and transferred from the basic PLC program to the interface signal: DB21, ...
  • Page 165: Multiple Feedrate Values In One Block

    V1: Feedrates 5.4 Feedrate control "DRY" is displayed in the operator panel front status bar to indicate an active dry run feedrate ● Selection took place during the program stop at the end of a block or ● The machine data MD10704 $MN_DRYRUN_MASK was set to "1" during the program execution Mode of operation of the dry run feedrate The mode of operation of the dry run feedrate entered in SD42100 can be set via the setting...
  • Page 166 V1: Feedrates 5.4 Feedrate control Signals The input signals are combined in one input byte for the function. A fixed functional assignment applies within the byte. Table 5-1 Input byte for the "Multiple feedrates in one block" function Input no. Feedrate address I7 to I2: Activation of feedrates F7 to F2 E1: Activation of the dwell time ST/STA (in seconds)
  • Page 167 V1: Feedrates 5.4 Feedrate control MD21220 $MC_MULTFEED_ASSIGN_FASTIN, bit 16 ... 31 Figure 5-10 Signal assignment for the "Multiple feedrate values in one block" function The assignment of the digital input bytes and parameterization of the comparators are described in: Further information: Function Manual Basic Functions;...
  • Page 168 V1: Feedrates 5.4 Feedrate control Dwell (sparking out time) and retraction path are programmed under separate addresses in the block: Dwell time (for grinding sparking out time) ST=... Retraction path SR=... These addresses apply non-modally. Axial motion The axial feedrates are programmed under address FA and remain valid until an input signal is present.
  • Page 169 V1: Feedrates 5.4 Feedrate control Note POS instead of POSA If feedrates, sparking out time (dwell time) or return path are programmed for an axis on account of an external input, this axis must not be programmed as POSA axis (positioning axis over multiple blocks) in this block.
  • Page 170: Fixed Feedrate Values

    V1: Feedrates 5.4 Feedrate control Example Internal grinding of a conical ring, where the actual diameter is determined using calipers and, depending on the limits, the feedrate value required for roughing, finishing or fine finishing is activated. The position of the calipers also provides the end position. Thus, the block end criterion is determined not only by the programmed axis position of the infeed axis but also by the calipers.
  • Page 171 V1: Feedrates 5.4 Feedrate control Behavior in JOG mode The axis is traversed with the activated fixed feedrate instead of the configured JOG velocity / JOG rapid traverse velocity. The travel direction is specified via the interface signal. Parameterization The setting of the fixed feedrates is performed: ●...
  • Page 172: Programmable Feedrate Characteristics

    V1: Feedrates 5.4 Feedrate control DRF offset The DRF offset cannot be activated for a selected fixed feedrate. 5.4.7 Programmable feedrate characteristics Function To permit flexible definition of the feedrate characteristic, the feedrate programming according to DIN 66025 has been extended by linear and cubic characteristics. The cubic profiles can be programmed directly or as an interpolating spline.
  • Page 173: Feedrate For Chamfer/Rounding Frc, Frcm

    V1: Feedrates 5.4 Feedrate control Further information For further information on the programmable feedrate characteristics, see Programming Manual NC Programming. 5.4.8 Feedrate for chamfer/rounding FRC, FRCM The machining conditions can change significantly during surface transitions to chamfer/ rounding. Hence, the chamfer/rounding contour elements require dedicated, optimized feedrate values to achieve the desired surface quality.
  • Page 174 V1: Feedrates 5.4 Feedrate control MD20201 $MC_CHFRND_MODE_MASK (chamfer/rounding behavior) Value Meaning The technology of the chamfer/rounding (feedrate, feedrate type, M commands, etc.) is determined by the following block (default setting). The technology of the chamfer/rounding is determined by the previous block (recom‐ mended setting).
  • Page 175: Non-Modal Feedrate Fb

    V1: Feedrates 5.4 Feedrate control Program code Comment N120 X50 G95 F3 FRC=1 Example 2: MD20201 bit 0 = 1; take feedrate from previous block (recommended setting!) Program code Comment N10 G0 X0 Y0 G17 F100 G94 N20 G1 X10 CHF=2 ;...
  • Page 176: Influencing The Single Axis Dynamic Response

    V1: Feedrates 5.4 Feedrate control Note The feedrate programmed under FB must be greater than zero. If no traversing motion is programmed in the block (e.g. computation block), the FB has no effect. If no explicit feed for chamfering/rounding is programmed, then the value of FB also applies for any contour element chamfering/rounding in this block.
  • Page 177 V1: Feedrates 5.4 Feedrate control Dynamic response The dynamic response of an axis is influenced by: ● MD32060 $MA_POS_AX_VELO (positioning axis velocity) The effective positioning axis velocity can be changed: – Part program / synchronized action: Axial feedrate FA or percentage feedrate override OVRA –...
  • Page 178 V1: Feedrates 5.4 Feedrate control Percentage acceleration override (ACC) In a part program or synchronized action, the acceleration specified in machine data: MD32300 $MA_MAX_AX_ACCEL (maximum axis acceleration) can be changed in a range from 0% – 200% using the ACC command. Syntax: ACC[<axis>]=<value>...
  • Page 179 V1: Feedrates 5.4 Feedrate control Writing ACC and reading $AA_ACC in a part program: ACC[X]=50 ; writing RO=$AA_ACC[X] ; reading IF (RO <> $MA_MAX_AX_ACCEL[X] * 0.5) ; checking SETAL(61000) ENDIF Writing ACC and reading $AA_ACC in a synchronized action: WHEN TRUE DO ACC[X]=25 R0=$AA_ACC[X] ;...
  • Page 180 V1: Feedrates 5.4 Feedrate control Further information For further information on the block change and movement end criteria for FINEA, COARSEA and IPOENDA, see: Block change (Page 204) Programmable servo parameter set (SCPARA) In the part program / synchronized action, the servo parameter set can be specified using SCPARA.
  • Page 181: Boundary Conditions

    V1: Feedrates 5.5 Boundary conditions Mode change When the operating mode is changed from AUTOMATIC to JOG, the programmed dynamic response changes remain valid. Reset With reset, the last programmed value remains for the part program specifications. The settings for main-run interpolations do not change. Block search The last end-of-motion criterion programmed for an axis is collected and output in an action block.
  • Page 182: Data Lists

    V1: Feedrates 5.6 Data lists Data lists 5.6.1 Machine data 5.6.1.1 NC-specific machine data Number Identifier: $MN_ Description 10651 IPO_PARAM_THREAD_NAME_TAB Name of the interpolation parameters for convex threads 10704 DRYRUN_MASK Activation of dry run feedrate 10710 PROG_SD_RESET_SAVE_TAB Setting data to be updated 11410 SUPPRESS_ALARM_MASK Mask for suppressing special alarms...
  • Page 183: Axis/Spindle-Specific Machine Data

    V1: Feedrates 5.6 Data lists Number Identifier: $MC_ Description 21220 MULTFEED_ASSIGN_FASTIN Assignment of input bytes of NC I/O for "Multiple fee‐ drate values in one block" 21230 MULTFEED_STORE_MASK Storage behavior for the "Multiple feedrate values in one block" function 22240 AUXFU_F_SYNC_TYPE Output timing of F functions 22410...
  • Page 184: Axis/Spindle-Specific Setting Data

    V1: Feedrates 5.6 Data lists 5.6.2.2 Axis/spindle-specific setting data Number Identifier: $SA_ Description 43210 SPIND_MIN_VELO_G25 Programmed spindle speed limiting G25 43220 SPIND_MAX_VELO_G26 Programmed spindle speed limiting G26 43230 SPIND_MAX_VELO_LIMS Spindle speed limiting with G96 Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 185: P2: Positioning Axes

    P2: Positioning axes Brief description 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 186 P2: Positioning axes 6.1 Brief description the axis can be addressed by name in the part program and its actual position displayed on the screen. Note "Positioning axis/Auxiliary spindle" option Axes for auxiliary movements must not be interpolating ("full-value") NC axes. Auxiliary movements may also be carried out using special axes, which can be obtained using the "Positioning axis/Auxiliary spindle"...
  • Page 187: Own Channel, Positioning Axis Or Concurrent Positioning Axis

    P2: Positioning axes 6.2 Own channel, positioning axis or concurrent positioning axis Motions and interpolations Each channel has one path interpolator and at least one axis interpolator with the following interpolation functions: ● for path interpolator: Linear interpolation (G1), circular interpolation (G2 / G3), spline interpolation, etc. ●...
  • Page 188: Own Channel

    P2: Positioning axes 6.2 Own channel, positioning axis or concurrent positioning axis 6.2.1 Own channel A channel represents a self-contained NC which, with the aid of a part program, can be used to control the movement of axes, spindles and machine functions independently of other channels.
  • Page 189 P2: Positioning axes 6.2 Own channel, positioning axis or concurrent positioning axis together and do not reach their end point simultaneously (no direct time relationship, see also Section "Motion behavior and interpolation functions (Page 192)"). Positioning axis types and block change The block change time depends on the programmed positioning axis type (refer also to Section "Block change (Page 204)"): Type...
  • Page 190 P2: Positioning axes 6.2 Own channel, positioning axis or concurrent positioning axis ● Dedicated feedrate override for each positioning axis ● Dedicated programmable feedrate ● Dedicated "axis-specific delete distance-to-go" interface signal Dependencies Positioning axes are dependent in the following respects: ●...
  • Page 191: Concurrent Positioning Axis

    – "RELEASE (axis)" or WAITP(<axis>) is a channel axis that becomes a concurrent axis under PLC control. Activation from PLC For SINUMERIK 840D sl, the concurrent positioning axis is activated via FC 18 from the PLC. ● Feedrate For feedrate = 0, the feedrate is determined from the following machine data: MD32060 $MA_POS_AX_VELO (initial setting for positioning axis velocity) ●...
  • Page 192: Motion Behavior And Interpolation Functions

    P2: Positioning axes 6.3 Motion behavior and interpolation functions ● Exact stop (G9) ● Settable zero offsets currently selected are valid Applications Typical applications for concurrent positioning axes include: ● Tool magazines with manual loading and unloading during machining ● Tool magazines with tool preparation during machining Motion behavior and interpolation functions 6.3.1 Path interpolator and axis interpolator...
  • Page 193: Autonomous Singleaxis Operations

    P2: Positioning axes 6.3 Motion behavior and interpolation functions 6.3.2 Autonomous singleaxis operations Functionality Single PLC axes, command axes started via static synchronized actions or asynchronous reciprocating axes can be interpolated independently of the NC. An axis/spindle interpolated by the main run then reacts independently of the NC program with respect to: ●...
  • Page 194 P2: Positioning axes 6.3 Motion behavior and interpolation functions Alternatives Initial state: The axis is controlled by the PLC. As a result of a channel stop, the channel is in the "interrupted" state. ● Axis state "inactive" ⇒ – The stop state is canceled. –...
  • Page 195 P2: Positioning axes 6.3 Motion behavior and interpolation functions Boundary conditions The axis/spindle must be operating under PLC control. The NC confirms acceptance of an axis/spindle only if an axial alarm is not active. Description of the sequence based on use cases Requirement The axis/spindle is controlled by the PLC Relevant NC/PLC interface signals...
  • Page 196 P2: Positioning axes 6.3 Motion behavior and interpolation functions Description of the sequence: ● PLC → NC: Request to stop the axis/spindle DB31, ... DBX28.6 = 1 (stop along braking ramp) ● NC: Brakes the axis along a ramp. ● NC confirms the execution: –...
  • Page 197: Autonomous Single-Axis Functions With Nc-Controlled Esr

    P2: Positioning axes 6.3 Motion behavior and interpolation functions Boundary conditions In the following cases, the request to continue is ignored: ● The axis/spindle is not controlled by the PLC. ● The axis/spindle is not in the stopped state. ● An alarm is pending for the axis/spindle. Use case 4: Reset axis/spindle (reset) Description of the sequence: ●...
  • Page 198 P2: Positioning axes 6.3 Motion behavior and interpolation functions The NC-controlled extended stop and retract is activated by the axial trigger $AA_ESR_TRIGGER[axis]. It works analogously to $AC_ESR_TRIGGER and applies exclusively to single axes. Further information M3: Coupled axes (Page 419) Extended retract numerically controlled For retracting single axes, the value must have been programmed via POLFA(axis, type, value) and the following conditions must be met:...
  • Page 199: Positioning Axis Dynamic Response

    P2: Positioning axes 6.4 Positioning axis dynamic response POLFA(AX1, 1, 20.0); AX1 is assigned the axial retraction position 20.0 ; (absolute) $AA_ESR_TRIGGER[AX1]=1 ; AX1 begins to retract here POLFA(axis, type): permissible programming abbreviation POLFA(axis, 0/1/2) ; quick deactivation/activation WARNING No preprocessing limitation If abbreviated notation is used and only the type is changed, make sure that the value for the retraction position or retraction path in the application is meaningful! The abbreviated notation should only be used in exceptional circumstances.
  • Page 200 P2: Positioning axes 6.4 Positioning axis dynamic response Revolutional feedrate In JOG mode the behavior of the axis/spindle also depends on the setting of SD41100 JOG_REV_IS_ACTIVE (revolutional feedrate when JOG active). ● If this setting data is active, an axis/spindle is always moved with revolutional feedrate MD32050 $MA_JOG_REV_VELO (revolutional feedrate with JOG) or MD32040 $MA_JOG_REV_VELO_RAPID (revolutional feedrate with JOG with rapid traverse overlay) as a function of the master spindle.
  • Page 201: Programming

    P2: Positioning axes 6.5 Programming MD18960 $MN_POS_DYN_MODE = <mode> <mode> Meaning The following is effective as maximum axial jerk for positioning axis motions: MD32430 $MA_JOG_AND_POS_MAX_JERK With active G75 (fixed-point approach): MD32431 $MA_MAX_AX_JERK[0] MD32431 $MA_MAX_AX_JERK[1] Programming 6.5.1 General Note For programming positioning axes, please observe the following documentation: Further information See V1: Feedrates (Page 125) and S1: Spindles (Page 733) Note...
  • Page 202 P2: Positioning axes 6.5 Programming Note Within a part program, an axis can be a path axis or a positioning axis. Within a movement block, however, each axis must be assigned a unique axis type. Programming in synchronized action Axes can be positioned completely asynchronous to the part program from synchronized actions.
  • Page 203: Revolutional Feed Rate In External Programming

    P2: Positioning axes 6.5 Programming Reprogram type 2 positioning axes With type 2 positioning axes (motion across block limits), you need to be able to detect in the part program whether the positioning axis has reached its end position. Only then is it possible to reprogram this positioning axis (otherwise an alarm is issued).
  • Page 204: Block Change

    P2: Positioning axes 6.6 Block change The following settings are possible: Value Description No revolutional feed rate selected >0 The revolutional feed rate is derived from the round axis/spindle with the machine axis index specified here. The revolutional feed rate is derived from the master spindle of the channel in which the axis/ spindle is active.
  • Page 205 P2: Positioning axes 6.6 Block change Figure 6-1 Block change for path axis and positioning axis type 1 Note Continuous path mode Continuous path mode across block limits (G64) is only possible if the positioning axes reach their end-of-motion criterion before the path axes (in the diagram above, this is not the case). Type 2: Modal positioning axis (across blocks) Properties: ●...
  • Page 206: Settable Block Change Time

    P2: Positioning axes 6.6 Block change Figure 6-2 Block change for path axis and positioning axis type 2 6.6.1 Settable block change time Type 3: Conditional block-related positioning axis Properties: ● The block change is performed as soon as all path and positioning axes have reached their respective programmed end-of-motion criterion: –...
  • Page 207 P2: Positioning axes 6.6 Block change Figure 6-3 Block change for path axis and positioning axis type 3 Block change criterion: "Braking ramp" (IPOBRKA) If, when activating the block change criterion "brake ramp", a value is programmed for the optional parameter <instant in time>, then this becomes effective for the next positioning motion and is written into the setting data synchronized to the main run.
  • Page 208 P2: Positioning axes 6.6 Block change Time of the block change, referred to the braking ramp as a %: <instant in time>: ● 100% = start of the braking ramp ● 0% = end of the braking ramp, the same significance as IPOENDA Type: REAL...
  • Page 209 P2: Positioning axes 6.6 Block change Further information: Parameter Manual, Book 2 Note Information about other programmable end-of-motion criteria FINEA, COARESA, IPOENDA can be found in: Further information: Function Manual, Basic Functions ● Operating modes (Page 734) ● Influencing the single axis dynamic response (Page 176) Boundary conditions Premature block change A premature block change is not possible in the following cases:...
  • Page 210 P2: Positioning axes 6.6 Block change Program code Comment N10 POS[X]=100 ;Positioning motion from X to position 100. ;Block change criterion: "Exact stop fine" N20 IPOBRKA(X,100) ;Block change criterion: "Braking ramp", 100% = start of the braking ramp. N30 POS[X]=200 ;The block is changed as soon as axis X starts to brake.
  • Page 211: End Of Motion Criterion With Block Search

    P2: Positioning axes 6.6 Block change Program code Comment N50 POS[X]=0 ;Axis X brakes and returns to position 0, the block change is realized at position 0 and "exact stop fine". N60 X10 F100 N70 M30 Block change criterion "braking ramp" and "tolerance window" in synchronized action In the technology cycle: Program code Comment...
  • Page 212: Control By The Plc

    P2: Positioning axes 6.7 Control by the PLC Example For two action blocks with end-of-motion criteria for three axes: Program code Comment N01 G01 POS[X]=20 POS[Y]=30 IPOENDA[X] ;Last programmed IPOENDA end-of-mo- tion criterion N02 IPOBRKA(Y, 50) ;Second action block for Y axis IPOENDA N03 POS[Z]=55 FINEA[Z] ;Second action block for the Z axis FI- N04 $A_OUT[1]=1...
  • Page 213 P2: Positioning axes 6.7 Control by the PLC Only the following signals are an exception: ● NST DB21, ... DBB4 ("feedrate override") ● IS DB21, ... DBX6.2 ("Delete distance to go") Axisspecific signals Positioning axes have the following additional signals: ●...
  • Page 214: Starting Concurrent Positioning Axes From The Plc

    P2: Positioning axes 6.7 Control by the PLC Axis interchange via PLC The type of an axis for axis interchange is transferred to the PLC with axial interface byte NC→PLC NST DB31, ... DBB68 (see also Function Manual "Basic Functions" Section "K5: Cross-channel program coordination and channel-by-channel running-in"): ●...
  • Page 215 P2: Positioning axes 6.7 Control by the PLC Examples of NC responses PLC actions as response of the NC are listed in the table below. PLC actions NC response Machine axis AX1 is the channel axis in channel 1, start as PLC axis using FC18 Initiate NC stop axes and spindles AX1 is stopped.
  • Page 216: Control Response Of Plc-Controlled Axes

    P2: Positioning axes 6.7 Control by the PLC 6.7.3 Control response of PLC-controlled axes Response for a channel reset, activate machine data, block search and MD30460 Table 6-1 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 travers‐...
  • Page 217: Response With Special Functions

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

    P2: Positioning axes 6.10 Data lists Program code N30 POS[Q2]=80 N40 X200 POSA[Q1] = 300 POSA[Q2]=200] FA[Q1]=1500 N45 WAITP[Q2] N50 X300 POSA[Q2]=300 N55 WAITP[Q1] N60 POS[Q1]=350 N70 X400 N75 WAITP[Q1, Q2] N80 G91 X100 POS[Q1]=150 POS[Q2]=80 N90 M30 Figure 6-4 Timing of path axes and positioning axes 6.10 Data lists...
  • Page 219: Channelspecific Machine Data

    P2: Positioning axes 6.10 Data lists 6.10.1.2 Channelspecific 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 6.10.1.3 Axis/spindlespecific machine data Number Identifier: $MA_ Description 30450 IS_CONCURRENT_POS_AX...
  • Page 220 P2: Positioning axes 6.10 Data lists Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 221: R2: Rotary Axes

    R2: Rotary axes Brief description The following are typical applications for positioning axes: ● 5-axis machining (operating range limited or unlimited) ● Rotary axis for eccentric machining (unlimited operating range) ● Rotary axis for cylindrical or form grinding (unlimited operating range) ●...
  • Page 222 R2: Rotary axes 7.1 Brief description ● Assignment: A rotates about X, B rotates about Y and C rotates about Z ● Direction of rotation: The positive rotary-axis direction of a rotation corresponds to a clockwise rotation when looking in the positive axis direction of the corresponding linear axis. Figure 7-1 Axis identifiers and directions of movement for rotary axes Units of measurement...
  • Page 223: Modulo 360 Degrees

    R2: Rotary axes 7.2 Modulo 360 degrees 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/π...
  • Page 224 R2: Rotary axes 7.2 Modulo 360 degrees MD30310 $MA_ROT_IS_MODULO = 1 Note For a 360° modulo rotary axis, it is recommended that the position display is also set to 360° at the user interface. Modulo range For a 360° modulo rotary axis, the modulo range must be set to 360° using the axis-specific machine data: MD30330 $MA_MODULO_RANGE = 360.0 Starting position of the 360°...
  • Page 225 R2: Rotary axes 7.2 Modulo 360 degrees Note Modulo partition axes By aligning the two following machine data, indexing positions of 360° modulo indexing axes can be implemented in the same way as for the 360° modulo range: ● MD30503 $MA_INDEX_AX_OFFSET ●...
  • Page 226 R2: Rotary axes 7.2 Modulo 360 degrees Preconditions: ● The 360° modulo rotary axis must be referenced. ● Software limit switch Software limit switch 1 or 2 to be monitored must be active: – DB31, ..DBX12.2 / 3 (activation) –...
  • Page 227 R2: Rotary axes 7.2 Modulo 360 degrees ① Direction of rotation +/- ② Software limit switch +/- Figure 7-4 360° modulo rotary axis with software limit switch Feedback signal, activation of the traversing range limits The feedback signal that the traversing range limits of a 360° modulo rotary axis are active in the NC, is realized using the axis-specific NC/PLC interface signal: DB31, ...
  • Page 228: Programming Of Rotary Axes

    R2: Rotary axes 7.3 Programming of rotary axes Program code Comment M124 ; Insert pallet 2 with built-on axis ; PLC: activate traversing range limits of the ; B axis => DB35, DBX12.4=1 STOPRE ; Trigger a preprocessing stop B270 Programming of rotary axes 7.3.1 General information...
  • Page 229: Rotary Axis With Modulo Conversion (Continuously-Turning Rotary Axis)

    R2: Rotary axes 7.3 Programming of rotary axes 7.3.2 Rotary axis with modulo conversion (continuously-turning rotary axis). Absolute programming (AC, ACP, ACN, G90) Example of the absolute programming for a modulo rotary axis as positioning axis: POS[<axis name>] = ACP(<value>) ●...
  • Page 230 R2: Rotary axes 7.3 Programming of rotary axes ① POS[C] = ACP(100); Traverse in positive direction of rotation to position 100° ② POS[C] = ACN(300); Traverse in negative direction of rotation to position 300° ③ POS[C] = ACP(240); Traverse in positive direction of rotation to position 240°...
  • Page 231 R2: Rotary axes 7.3 Programming of rotary axes ① POS[C] = DC(100); Traverse by shortest path to position 100° ② POS[C] = DC(300); Traverse by shortest path to position 300° ③ POS[C] = DC(240); Traverse by shortest path to position 240° ④...
  • Page 232: Rotary Axis Without Modulo Conversion

    R2: Rotary axes 7.3 Programming of rotary axes Program example: Modulo rotary axes as endlessly rotating rotary axis Program code LOOP: POS[C] = IC(720) ; Traverse as positioning axis by 270° GOTOB LOOP ; Return to Label LOOP 7.3.3 Rotary axis without modulo conversion Deactivating modulo conversion →...
  • Page 233 R2: Rotary axes 7.3 Programming of rotary axes ● The value identifies the rotary axis target position in a range from 0° to 359.999° (modulo 360°). Alarm 16830, "Incorrect modulo position programmed", is output for values with a negative sign or ≥ 360º. ●...
  • Page 234: Other Programming Features Relating To Rotary Axes

    R2: Rotary axes 7.4 Activating rotary axes Limited traversing range The traversing range is limited just the same as for linear axes. The range limits are defined by the "plus" and "minus" software limit switches. 7.3.4 Other programming features relating to rotary axes Offsets TRANS (absolute) and ATRANS (additive) can be applied to rotary axes.
  • Page 235 R2: Rotary axes 7.4 Activating rotary axes Special machine data Special rotary-axis machine data may also have to be entered, depending on the application: MD30310 $MA_ROT_IS_MODULO Modulo conversion for positioning and program‐ ming MD30320 $MA_DISPLAY_IS_MODULO Modulo conversion for position display MD10210 $MN_INT_INCR_PER_DEG Computational resolution for angular positions The following overview lists the possible combinations of these machine data for a rotary axis:...
  • Page 236: Special Features Of Rotary Axes

    R2: Rotary axes 7.5 Special features of rotary axes If a value of 0 is entered in the setting data, the following axial machine data acts as JOG velocity for the rotary axis: MD21150 $MC_JOG_VELO (conventional axis velocity) 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.
  • Page 237: Examples

    R2: Rotary axes 7.7 Data lists 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.
  • Page 238: Setting Data

    R2: Rotary axes 7.7 Data lists Number Identifier: $MA_ Description 30320 DISPLAY_IS_MODULO Actual value display modulo 30330 MODULO_RANGE Modulo-range size 30340 MODULO_RANGE_START Modulo-range starting position 30455 MISC_FUNCTION_MASK Axis functions 36100 POS_LIMIT_MINUS Minus software limit switch 36110 POS_LIMIT_PLUS Plus software limit switch 7.7.2 Setting data 7.7.2.1...
  • Page 239: T1: Indexing Axes

    T1: Indexing axes Brief description When machine axes only traverse between a certain number of fixed positions, these positions can be parameterized as indexing positions. In NC programs, these machine axes, then known as indexing axes, can be traversed with reference to indexing positions using special commands.
  • Page 240 T1: Indexing axes 8.2 Detailed description Continuous traversing (JOG CONT) Jog mode In the jog mode (SD41050 $SN_JOG_CONT_MODE_LEVELTRIGGRD = 1) the indexing axis traverses in the selected direction after the traversing key has been actuated. The indexing axis is stopped at the next possible indexing position after releasing the traversing key. The indexing position where the axis stops is dependent on: ●...
  • Page 241: Traversing Of Indexing Axes By Plc

    T1: Indexing axes 8.2 Detailed description Continuous operation In continuous operation (SD41050 $SN_JOG_CONT_MODE_LEVELTRIGGRD = 0), after actuating the traversing key (first rising edge), the indexing axis is traversed as usual. The indexing axis is immediately stopped when the traversing key is actuated again (second rising edge).
  • Page 242: Commissioning

    T1: Indexing axes 8.3 Commissioning Commissioning 8.3.1 Machine data for indexing axes Indexing axis An axis is defined as indexing axis by assigning an indexing position table to this axis, using the following axis-specific machine data: MD30500 $MA_INDEX_AX_ASSIGN_POS_TAB = <value> <Value>...
  • Page 243 T1: Indexing axes 8.3 Commissioning Additional secondary conditions for modulo rotary axes ● Permissible range: 0° ≤ indexing position < 360° ● If the indexing axis is at the last indexing position in the indexing position table, when traversing to the next indexing position in the positive direction of rotation, the first indexing position is approached.
  • Page 244 T1: Indexing axes 8.3 Commissioning MD10940 $MN_INDEX_AX_MODE, bit 0 = <value> <Value> Meaning When traversing in the direction of ascending indexing positions, the displayed current indexing position changes in the system variable $AA_ACT_INDEX_AX_POS_NO upon reaching/overtraveling the "Exact stop fine" window (MD36010 $MA_STOP_LIMIT_FINE) of the next indexing position.
  • Page 245: Machine Data For Equidistant Indexing Intervals

    T1: Indexing axes 8.3 Commissioning Note With the system variables $AA_ACT_INDEX_AX_POS_NO it is not possible to determine whether an indexing position has been reached. To this end, one of the two following NC/PLC interface signals must also be evaluated: DB31, ... DBX76.6 (indexing position reached) DB31, ...
  • Page 246 T1: Indexing axes 8.3 Commissioning Linear axes Modulo rotary axes Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 247: Hirth Axis

    T1: Indexing axes 8.3 Commissioning 8.3.2.2 Hirth axis Function For a "Hirth axis", using a special gearing (Hirth gearing) the rotary axis is interlocked when reaching an indexing position. In this case, a locking bolt or a gearwheel is engaged using a linear axis.
  • Page 248: Nc/Plc Interface Signals

    T1: Indexing axes 8.4 Programming $AA_ACT_INDEX_AX_POS_NO Function The system variable includes the number of the indexing position last reached by the indexing axis, or indexing position that was passed by the indexing axis. Syntax $AA_ACT_INDEX_AX_POS_NO[<axis>] Meaning $AA_ACT_INDEX_AX_POS_NO The axis is not an indexing axis. >...
  • Page 249 T1: Indexing axes 8.4 Programming Examples Program code Comment POS[B]=CAC(20) Indexing axis B approaches the coded position (indexing) 20 in absolute mode. The direction of traversing depends on the current actual position. POS[B]=CACP(10) Indexing axis B approaches the coded position (index posi- tion ) 10 in absolute mode with positive direction of rota- tion (possible only for rotary axes).
  • Page 250: Supplementary Conditions

    T1: Indexing axes 8.5 Supplementary conditions System variables Information on the indexing positions can be read via the following system variables: ● $AA_PROG_INDEX_AX_POS_NO Number of the last programmed indexing position ● $AA_ACT_INDEX_AX_POS_NO Number of the last overtraveled indexing position The display depends on the setting in machine data MD10940 $MN_INDEX_AX_MODE. ●...
  • Page 251 T1: Indexing axes 8.5 Supplementary conditions Synchronized actions ● Stop (MOV=0) If an indexing axis is stopped with a synchronized action using MOV=0, then the axis stops in the traversing direction at the next possible indexing position ● Delete distance to go (DELDTG) If, for an indexing axis, the distance to go is deleted with a synchronized action using DELDTG, then the axis is immediately stopped without stopping at an indexing position Further information: Function Manual Synchronized Actions...
  • Page 252 T1: Indexing axes 8.5 Supplementary conditions Further information: Function Manual Basic Functions, emergency stop NOTICE Approaching the indexing position After an Emergency Stop, before the interlocking of the Hirth gearing at the machine is reactivated, either the PLC user program or the operator (manually) must first move the "Hirth axis"...
  • Page 253: Examples

    T1: Indexing axes 8.6 Examples Examples 8.6.1 Example 1: Rotary axis as indexing axis Machine axes AX5 is a tool revolver, with 8 revolver locations (endlessly rotating rotary axis). The distances between the revolver locations are constant (equidistant indexing positions). Figure 8-1 Tool turret with 8 locations Indexing position table 1...
  • Page 254: Example 2: Indexing Axis As Linear Axis

    T1: Indexing axes 8.6 Examples 8.6.2 Example 2: Indexing axis as linear axis Machine axis AX6 is a workholder with 10 locations. The distances between the 10 locations are different. The first location is at position -100 mm. Machine axis is AX6. Figure 8-2 Indexing positions for a workholder Indexing position table 2...
  • Page 255: Example 4: Rotary Axes As Equidistant Indexing Axis With Restricted Traversing Range

    T1: Indexing axes 8.6 Examples Indexing data MD30501 $MA_INDEX_AX_NUMERATOR[ AX4 ] ⇒ This value is ignored for rotary modulo axes, and MD30330 $MA_MODU‐ MD30330 $MA_MODULO_RANGE[ AX4 ] = 360.0 LO_RANGE (default value: 360°) is used instead. MD30502 $MA_INDEX_AX_DENOMINATOR[ AX4 ] = 18 Number of indexing positions = 360°...
  • Page 256: Example 6: "Hirth Axis

    T1: Indexing axes 8.6 Examples The following indexing positions are obtained: -200, -190, -180, ... 180, 190, 200 [mm] Indexing data MD30501 $MA_INDEX_AX_NUMERATOR[ AX4 ] = 10.0 Numerator = 10 MD30502 $MA_INDEX_AX_DENOMINATOR[ AX4 ] = 1 Denominator = 1 MD30503 $MA_INDEX_AX_OFFSET[ AX4 ] = -200.0 First indexing position = -200.0°...
  • Page 257: Data Lists

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

    T1: Indexing axes 8.7 Data lists 8.7.3 System variables Identifier Description $AA_ACT_INDEX_AX_POS_NO[axis] Number of last indexing position reached or overtraveled $AA_PROG_INDEX_AX_POS_NO[axis] Number of programmed indexing position Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 259: G1: Gantry Axes

    G1: Gantry axes Brief description For gantry machines, each of various machine elements, such as the gantry and the transverse beams, are moved by several axes that operate in parallel. The axes that together move a machine part, are designated as gantry axes or gantry grouping. Because of the mechanical structure, the gantry axes are rigidly connected with each other and so must always be traversed synchronously by the control.
  • Page 260: Gantry Axes" Function

    G1: Gantry axes 9.2 "Gantry axes" function "Gantry axes" function 9.2.1 Definition of a gantry grouping Definition The axes of a gantry grouping are specified via the following axial machine data: MD37100 $MA_GANTRY_AXIS_TYPE[AX1] = xy Tens decimal place: Type of gantry axis (guide or synchronous axis) Ones decimal place: ID of the gantry grouping A maximum of eight gantry groupings (gantry grouping ID: 1 - 8) can be defined.
  • Page 261: Monitoring The Synchronism Difference

    G1: Gantry axes 9.2 "Gantry axes" function 9.2.2 Monitoring the synchronism difference Limit values for monitoring 2 limit values can be specified for the synchronism difference. Gantry warning limit The gantry warning limit is set using the following machine data: MD37110 $MA_GANTRY_POS_TOL_WARNING (gantry warning limit) The "Alarm limit exceeded"...
  • Page 262: Extended Monitoring Of The Synchronism Difference

    G1: Gantry axes 9.2 "Gantry axes" function 9.2.3 Extended monitoring of the synchronism difference Activation of the extended monitoring An extended monitoring of the synchronism difference can be activated using the following machine data: MD37150 $MA_GANTRY_FUNCTION_MASK, Bit 0 = 1 For the extended monitoring, a synchronism difference between the leading and synchronous axis, obtained when tracking or when the gantry grouping is opened, is taken into account.
  • Page 263: Control Dynamics

    G1: Gantry axes 9.2 "Gantry axes" function 9.2.5 Control dynamics Use case From the user perspective, a gantry grouping is exclusively traversed via the leading axis. The NC generates the setpoints of the synchronous axes directly from the setpoints of the leading axis in time synchronism and outputs these to them.
  • Page 264: Referencing And Synchronization Of Gantry Axes

    G1: Gantry axes 9.3 Referencing and synchronization of gantry axes Referencing and synchronization of gantry axes 9.3.1 Introduction Misalignment after starting Immediately after the machine is switched on, the leading and synchronous axes may not be ideally positioned in relation to one another (e.g. misalignment of a gantry). Generally speaking, this misalignment is relatively small so that the gantry axes can still be referenced.
  • Page 265 G1: Gantry axes 9.3 Referencing and synchronization of gantry axes The appropriate synchronous axes traverse in synchronism with the leading axis. Interface signal "Referenced/synchronized" of the leading axis is output to indicate that the reference point has been reached. Section 2: Referencing of the synchronous axes As soon as the leading axis has approached its reference point, the synchronous axis is automatically referenced (as for reference point approach).
  • Page 266 G1: Gantry axes 9.3 Referencing and synchronization of gantry axes The next step in the operating sequence depends on the difference calculated between the actual values of the leading and synchronous axes: ● difference is smaller than the gantry warning limit: MD37110 $MA_GANTRY_POS_TOL_WARNING (gantry warning limit) The gantry synchronization process is started automatically.
  • Page 267 G1: Gantry axes 9.3 Referencing and synchronization of gantry axes Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 268 G1: Gantry axes 9.3 Referencing and synchronization of gantry axes Figure 9-2 Flowchart for referencing and synchronization of gantry axes Synchronization process A synchronization process is always required in the following cases: ● after the reference point approach of all axes included in a grouping, ●...
  • Page 269 G1: Gantry axes 9.3 Referencing and synchronization of gantry axes Instead, the actual position of the leading axis is specified as the target position and is approached in the uncoupled state. Note For the leading axis, automatic synchronization can be locked using the following NC/PLC interface signal: DB31, ...
  • Page 270: Automatic Synchronization

    G1: Gantry axes 9.3 Referencing and synchronization of gantry axes Selecting the reference point To ensure that the shortest possible paths are traversed when the gantry axes are referenced, the reference point values from leading and synchronous axes should be the same in the machine data: MD34100 $MA_REFP_SET_POS (reference point value/destination point for distancecoded system)
  • Page 271: Points To Note

    G1: Gantry axes 9.3 Referencing and synchronization of gantry axes difference between the positions of the leading and synchronized axes greater than the setting in the machine data: MD36030 $MA_STANDSTILL_POS_TOL (standstill tolerance) In this case, a new setpoint is specified for the synchronized axis (axes) without interpolation. The positional difference detected earlier is then corrected by the position controller.
  • Page 272 G1: Gantry axes 9.3 Referencing and synchronization of gantry axes MD36500 $MA_ENC_CHANGE_TOL (Max. tolerance for position actual value switchover) The two position measuring systems must, however, have been referenced beforehand. The relevant measuring system must be selected before referencing is initiated. The operational sequence is then the same as that described above.
  • Page 273 G1: Gantry axes 9.3 Referencing and synchronization of gantry axes Activation of axis compensations Compensation functions can be activated for both the leading axis and the synchronized axes. Compensation values are applied separately for each individual gantry axis. These values must therefore be defined and entered for the leading axis and the synchronized axes during start-up.
  • Page 274: Start-Up Of Gantry Axes

    G1: Gantry axes 9.4 Start-up of gantry axes Start-up of gantry axes General Owing to the forced coupling which is normally present between guide and synchronous gantry axes, the gantry grouping must be started up as if it were an axis unit. For this reason, the axial machine data for the guide and synchronous axes must always be defined and entered jointly.
  • Page 275 G1: Gantry axes 9.4 Start-up of gantry axes Axial optimization For symmetrically set up gantry axes, it is recommended that you set the K factors and precontrol settings for all of the axes of a group identically. The following control parameters must be set to the optimum axial value for both the guide axis and the synchronous axis: ●...
  • Page 276 G1: Gantry axes 9.4 Start-up of gantry axes Example When the speed feedforward control is active, the dynamic response is primarily determined by the equivalent time constant of the "slowest" speed control loop. Guide axis MD32810 $MA_EQUIV_SPEEDCTRL_TIME [n] = 5 ms (equivalent time constant speed control loop for feedforward control) Synchronous axis MD32810 $MA_EQUIV_SPEEDCTRL_TIME [n] = 3 ms...
  • Page 277 G1: Gantry axes 9.4 Start-up of gantry axes in such a way that the actual position values of the guide and synchronous axes are identical after execution of the compensatory motion: ● MD34080 $MA_REFP_MOVE_DIST (reference point distance) ● MD34090 $MA_REFP_MOVE_DIST_CORR (reference point offset /absolute offset) Synchronizing gantry axes The gantry synchronization is activated via the NC/PLC interface signal (see Section "Referencing and synchronization of gantry axes (Page 262)"):...
  • Page 278: Parameter Assignment: Response To Faults

    G1: Gantry axes 9.5 Parameter assignment: Response to faults Special cases If individual axes have to be activated, the gantry groups must be temporarily canceled. As the second axis no longer travels in synchronism with the first axis, the activated axis must not be allowed to traverse beyond the positional tolerance.
  • Page 279: Plc Interface Signals For Gantry Axes

    G1: Gantry axes 9.6 PLC interface signals for gantry axes MD30455 $MA_MISC_FUNCTION_MASK, bit 9 = <value> <Value> Meaning When a fault occurs that triggers the pulse suppression (e.g. measuring-circuit fault), the pulses in all other axes of the gantry grouping will also be suppressed. Result: Coast down of all axes of the gantry grouping.
  • Page 280 G1: Gantry axes 9.6 PLC interface signals for gantry axes For example, all axes in the gantry groupings will be simultaneously shut down when the following interface signal is set to "0" from the leading axis: DB31, ... DBX2.1 (servo enable) The following table shows the effect of individual interface signals (from PLC to axis) on gantry axes: NC/PLC interface signal...
  • Page 281: Miscellaneous Points Regarding Gantry Axes

    G1: Gantry axes 9.7 Miscellaneous points regarding gantry axes Miscellaneous points regarding gantry axes Manual traversing It is not possible to traverse a synchronous axis directly by hand in JOG mode. Traverse commands entered via the traversing keys of the synchronous axis are ignored internally in the control.
  • Page 282 G1: Gantry axes 9.7 Miscellaneous points regarding gantry axes Axis interchange All axes in the gantry grouping are released automatically in response to a RELEASE command (guide axis). An axis interchange of the guide axis of a closed gantry grouping is only possible, if all axes of the grouping are known in the channel in which they are to be transferred, otherwise alarm 10658 is signaled.
  • Page 283: Examples

    G1: Gantry axes 9.8 Examples Differences in comparison with the "Coupled motion" function The main differences between the "gantry axes" and "coupled motion" functions are listed below: ● The axis coupling between the gantry axes must always be active. Separation of the axis coupling via part program is therefore not possible for gantry axes.
  • Page 284 G1: Gantry axes 9.8 Examples Machine data The following machine data describes the original values at the beginning of the procedure. Individual settings must be corrected or added later according to the information below. Gantry machine data Axis 1 MD37100 $MA_GANTRY_AXIS_TYPE = 1 (gantry axis definition) MD37110 $MA_GANTRY_POS_TOL_WARNING =0 (gantry warning limit) MD37120 $MA_GANTRY_POS_TOL_ERROR = e.g.
  • Page 285: Setting The Nc-Plc Interface

    G1: Gantry axes 9.8 Examples 9.8.2 Setting the NC-PLC interface Introduction An automatic synchronization process when referencing axes must be disabled initially to prevent damaging/destroying grouping axes that are misaligned. Disabling of automatic synchronization The PLC user program sets the following for the axis data block of axis 1: DB31, ...
  • Page 286 G1: Gantry axes 9.8 Examples DB31, ... DBB101.7 = 1 (gantry axis) In addition, the following steps must be taken: ● RESET ● Read off values in machine coordinate system: e. g. X = 0.941 Y = 0.000 XF = 0.000 ●...
  • Page 287: Setting Warning And Trip Limits

    G1: Gantry axes 9.8 Examples If Case A applies, the synchronization process can be started immediately (see "start synchronization process" step). If Case B applies, the offset "diff" must be calculated and taken into account: ● Measuring of diff ● By using two appropriate, right-angled reference points R' and R" in the machine bed (right in picture), the difference in position in JOG can be traversed.
  • Page 288: Data Lists

    G1: Gantry axes 9.9 Data lists MD37110 $MA_GANTRY_POS_TOL_WARNING (gantry warning limit) MD37120 $MA_GANTRY_POS_TOL_ERROR (gantry trip limit) MD37130 $MA_GANTRY_POS_TOL_REF (gantry shutdown limit when referencing) These should have the following scales of magnitude at the end of the customizing process: Note The same procedure must be followed when starting up a gantry grouping in which the coupled axes are driven by linear motors and associated measuring systems.
  • Page 289 G1: Gantry axes 9.9 Data lists Number Identifier: $MA_ Description 32650 AX_INERTIA Moment of inertia for torque feedforward control 32800 EQUIV_CURRCTRL_TIME Equivalent time constant, current control loop for feed‐ forward control 32810 EQUIV_SPEEDCTRL_TIME Equivalent time constant, speed control loop for feed forward control 32900 DYN_MATCH_ENABLE...
  • Page 290 G1: Gantry axes 9.9 Data lists Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 291: R1: Referencing

    R1: Referencing 10.1 Brief Description Function When referencing a machine axis, the coordinate system of the machine axis is synchronized with the coordinate system of the machine. The machine axis is traversed to the machine zero and then the actual position of the machine axis is set to zero. If the machine zero cannot be directly approached as a result of the machine design, then a reference point is defined in the traversing range of the machine axis, which then used to synchronize the machine axis.
  • Page 292: Axisspecific Referencing

    R1: Referencing 10.2 Axisspecific referencing Start Referencing the machine axis can be manually started, or from the part program: ● Manual: Operation mode JOG and MDI, machine function REF ● Part program: Command G74 10.2 Axisspecific referencing For axis-specific referencing using the reference point approach, the operation must be individually started for each machine axis to be referenced.
  • Page 293 R1: Referencing 10.2 Axisspecific referencing If the machine operator releases the direction key, the machine axis is decelerated to zero speed. Reference point approach is not aborted. Reference point approach is continued the next time the direction key is pressed. Referencing status The referencing status of the machine axis is reset with the start of the reference point approach:...
  • Page 294: Channelspecific Referencing

    R1: Referencing 10.3 Channelspecific referencing DB11, ... DBX0.7 (mode group reset) DB21, ... DBX7.7 (channel reset) All machine axes that have not yet successfully completed reference point approach when the action is cancelled remain in status "Not referenced": DB31, ... DBX60.4 (referenced/synchronized 1) DB31, ...
  • Page 295: Reference Point Appraoch From Part Program (G74)

    R1: Referencing 10.4 Reference point appraoch from part program (G74) The status of channel-specific reference point approach is indicated by the channel with: DB21, ... DBX33.0 (referencing active) Referencing status The referencing status of the machine axis is reset with the start of the reference point approach: DB31, ...
  • Page 296: Referencing With Incremental Measurement Systems

    R1: Referencing 10.5 Referencing with incremental measurement systems Referencing must be repeated, for example, after: ● Actual value offset PRESETON Further information: Programming Guide Advanced; Coordinate transformations (frames) > Preset offset with PRESETON ● Function Manual Monitoring and Compensating, parking a machine axis ●...
  • Page 297 R1: Referencing 10.5 Referencing with incremental measurement systems Reference cam ● Connection The reference cam signal can be connected to a digital input of an external PLC I/O module or to a fast input on the NCU X142 interface. ● NC/PLC interface signal The reference cam signal must be transferred from the PLC user program to the axial NC/ PLC interface: DB31, ...
  • Page 298: Zero Mark Selection

    R1: Referencing 10.5 Referencing with incremental measurement systems 10.5.2 Zero mark selection Function Referencing of incremental measuring systems is based on the unique position of the encoder zero mark relative to the overall traversing range of the machine axis. If because of machine- specific conditions, several encoder zero marks are detected in the traversing range of the machine axis (for examples, see figure below), a proximity switch must be mounted on the machine for clear determination of the reference point.
  • Page 299: Time Sequence

    R1: Referencing 10.5 Referencing with incremental measurement systems 10.5.3 Time sequence Reference point approach with incremental measuring systems can be divided into three phases: ● Phase 1: "Phase 1: Traversing to the reference cam (Page 300)" ● Phase 2: "Phase 2: Synchronization with the zero mark (Page 302)" ●...
  • Page 300: Phase 1: Traversing To The Reference Cam

    R1: Referencing 10.5 Referencing with incremental measurement systems 10.5.4 Phase 1: Traversing to the reference cam Phase 1: Graphic representation Figure 10-3 Phase 1: Traversing to the reference cam Phase 1: Start To start the reference point approach, see Sections "Axisspecific referencing (Page 292)" and "Axisspecific referencing (Page 292)".
  • Page 301 R1: Referencing 10.5 Referencing with incremental measurement systems Case 1: The machine axis is positioned before the reference cam After the start of reference point approach, the machine axis is accelerated in the parameterized direction and to the parameterized reference point approach velocity : ●...
  • Page 302: Phase 2: Synchronization With The Zero Mark

    R1: Referencing 10.5 Referencing with incremental measurement systems Phase 1: Properties ● Feedrate override is active. ● Feed stop (channel-specific and axis-specific) is active. ● NC stop and NC start are active. ● The machine axis is stopped if the reference cam is not reached within the parameterized maximum distance: MD34030 $MA_REFP_MAX_CAM_DIST (max.
  • Page 303 R1: Referencing 10.5 Referencing with incremental measurement systems Initial situation: The machine axis is positioned on the reference cam. Zero mark search direction: The direction of the zero mark search results from the settings in the machine data: ● MD34010 $MA_REFP_CAM_DIR_IS_MINUS (reference point approach in minus direction) ●...
  • Page 304 R1: Referencing 10.5 Referencing with incremental measurement systems Figure 10-6 Synchronization with falling reference cam edge Case 2: Synchronization with rising reference cam edge During synchronization with rising reference cam signal edge, the machine axis accelerates to the parameterized reference point approach velocity against the parameterized reference point approach direction (traversing direction of the Phase 1): ●...
  • Page 305 R1: Referencing 10.5 Referencing with incremental measurement systems MD34092 $MA_ REFP_CAM_SHIFT (electronic reference cam shift for incremental measuring systems with equidistant zero marks) With the electronic reference cam shift, synchronization is not performed immediately to the next encoder zero mark after detection of the reference cam edge, but only after the parameterized offset distance has been traversed.
  • Page 306 R1: Referencing 10.5 Referencing with incremental measurement systems ● Cycle time for updating the NC/PLC interface ● Interpolator clock cycle ● Position control cycle Notes on setting ● Reference cam Aligning the signal edge of the reference cam directly between two zero marks has proven to be the most practical method.
  • Page 307: Phase 3: Traversing To The Reference Point

    R1: Referencing 10.5 Referencing with incremental measurement systems 10.5.6 Phase 3: Traversing to the reference point Phase 3: Graphic representation Figure 10-9 Phase 3: Traversing to the reference point Phase 3: Start At the end of Phase 2 the machine axis travels at reference point creep velocity. Therefore, as soon as Phase 2 is completed successfully without an alarm, Phase 3 is started without interruption.
  • Page 308 R1: Referencing 10.5 Referencing with incremental measurement systems Figure 10-10 Reference point position When the reference point is reached, the machine axis is stopped and the actual-value system is synchronized with the reference point value n specified by the NC/PLC interface. MD34100 $MA_ REFP_SET_POS[<n>] (reference point value) The selection of the reference point value is performed via the NC/PLC interface: DB31, ...
  • Page 309: Referencing With Distance-Coded Reference Marks

    R1: Referencing 10.6 Referencing with distance-coded reference marks Special feature of Phase 3 In the following cases, the machine axis stops first after detection of the zero mark and then traverses back to the reference point: ● Because of the reference point positioning velocity, the sum of reference point distance and reference point offset is less than the required braking distance: MD34080 + MD34090 <...
  • Page 310: Basic Parameter Assignment

    R1: Referencing 10.6 Referencing with distance-coded reference marks 10.6.2 Basic parameter assignment Linear measuring systems. Figure 10-12 Glass measuring scale with distance-coded reference marks, grid spacing: 20 mm The following data must be set to parameterize linear measuring systems: ● The absolute offset between the machine zero point and the position of the first reference mark of the linear measuring system: MD34090 $MA_REFP_MOVE_DIST_CORR (reference point/absolute offset) See also below: Determining the absolute offset...
  • Page 311 R1: Referencing 10.6 Referencing with distance-coded reference marks 4. Measure the actual position of the machine axes referred to the machine zero point. 5. Calculate the absolute offset and enter in MD34090. The absolute offset is calculated with respect to the machine coordinate system and depending on the orientation of the measuring system as: Orientation of the measuring system Absolute offset...
  • Page 312: Time Sequence

    R1: Referencing 10.6 Referencing with distance-coded reference marks 10.6.3 Time sequence Time sequence Referencing with distance-coded reference marks can be divided into two phases: ● Phase 1: Travel across the reference marks with synchronization ● Phase 2: Travel to a fixed destination point Figure 10-13 Distance-coded reference marks 10.6.4...
  • Page 313 R1: Referencing 10.6 Referencing with distance-coded reference marks Phase 1: Sequence Sequence without contact witha reference cam Once the reference point approaching process is started, the machine axis accelerates to the reference point shutdown speed set by means of parameter assignment: MD34040 $MA_REFP_VELO_SEARCH_MARKER (reference point creep velocity) Once the number of reference marks set by means of parameter assignment has been crossed, the machine axis is stopped again and the actual value system of the machine axis is...
  • Page 314: Phase 2: Traversing To The Target Point

    R1: Referencing 10.6 Referencing with distance-coded reference marks Abort criterion If the parameterized number of reference marks is not detected within the parameterized distance, the machine axis is stopped and reference point traversing is aborted. MD34060 $MA_REFP_MAX_ MARKER_DIST (max. distance to the reference mark) Features of Phase 1 After Phase 1 is successfully completed, the actual value system of the machine axis is synchronized.
  • Page 315 R1: Referencing 10.6 Referencing with distance-coded reference marks No travel to target position The machine axis is now referenced. To identify this, the NC sets an interface signal for the measuring system that is currently active: DB31, ... DBX60.4/60.5 (referenced/synchronized 1/2) = 1 Features of Phase 2 Phase 2 will display different characteristics, depending on whether a reference cam is parameterized for the machine axis.
  • Page 316: Referencing By Means Of Actual Value Adjustment

    R1: Referencing 10.7 Referencing by means of actual value adjustment MD30340 $MA_MODULO_RANGE_START (start position of the modulo range) Note The reference point position is mapped on the parameterized (fictive) modulo range even with axis function "Determination of reference point position rotary, distance-coded encoder within the configured modulo range": MD30455 $MA_MISC_FUNCTION_MASK (axis functions), BIT1 = 1 10.7...
  • Page 317: Actual Value Adjustment For Measuring Systems With Distance-Coded Reference Marks

    R1: Referencing 10.7 Referencing by means of actual value adjustment 10.7.2 Actual value adjustment for measuring systems with distance-coded reference marks Function In order to improve positioning precision by determining the measuring-system-specific encoder fine information, we recommend explicitly re-referencing the measuring system previously referenced by actual value adjustment after switching over the measuring system.
  • Page 318: Referencing In Follow-Up Mode

    R1: Referencing 10.8 Referencing in follow-up mode Sequence 1. Initial situation: Both measuring systems are not referenced: DB31, ... DBX60.4 = 0 (referenced/synchronized 1) DB31, ... DBX60.5 = 0 (referenced/synchronized 2) 2. Referencing of the indirect measuring system according to the measuring system type: DB31, ...
  • Page 319 R1: Referencing 10.8 Referencing in follow-up mode Zero mark selection when several zero mark signals occur If several encoder zero marks are detected in the traversing range of the machine axis due to machine-specific factors, e.g. reduction gear between encoder and load, a proximity switch must be mounted on the machine and connected via a digital input of the NCU interface in order to clearly determine the reference point.
  • Page 320 R1: Referencing 10.8 Referencing in follow-up mode Aborting the reference operation An active referencing operation can be aborted by: ● Deselecting follow-up mode ● NC reset Response when measuring systems are already referenced A measuring system that has already been referenced can only be re-referenced in AUTOMATIC mode using part program command G74.
  • Page 321: Referencing With Absolute Encoders

    R1: Referencing 10.9 Referencing with absolute encoders 10.9 Referencing with absolute encoders 10.9.1 Information about the adjustment Machine axes with absolute encoder The advantage of machine axes with absolute encoder is that after a one time adjustment procedure, the necessary reference point traversing with incremental measuring systems (e.g. build-up of control, de-selection of "Parking"...
  • Page 322: Calibration By Entering A Reference Point Offset

    R1: Referencing 10.9 Referencing with absolute encoders ● Battery failure ● Set actual value (PRESETON) WARNING Data backup During the back-up of machine data of a machine A, the encoder status of the machine axis (MD34210) is also backed up. During loading of this data record into a machine B of the same type, e.g.
  • Page 323: Adjustment By Entering A Reference Point Value

    R1: Referencing 10.9 Referencing with absolute encoders Procedure 1. Determining the position of the machine axis with reference to the machine zero point via e.g.: – position measurement (e.g. laser interferometer) – Moving the machine axis to a known position (e.g., fixed stop) 2.
  • Page 324 R1: Referencing 10.9 Referencing with absolute encoders This determined position value will be made known to the NC as the reference point value. The NC then calculates the reference point offset from the difference between the encoder absolute value and the reference point value. Procedure 1.
  • Page 325: Automatic Calibration With Probe

    R1: Referencing 10.9 Referencing with absolute encoders 7. Operate the travel key used for referencing in step 2. The machine axis does not move when the traversing key is actuated! The NC calculates the reference point offset from the entered reference point value and that given by the absolute encoder.
  • Page 326 R1: Referencing 10.9 Referencing with absolute encoders Part program The part program for automatic adjustment of absolute encoders with probe must perform the points listed below for each axis in the order indicated: 1. Approach the adjustment position of machine axis, which is detected from the probe response.
  • Page 327: Adjustment With Bero

    R1: Referencing 10.9 Referencing with absolute encoders 10.9.5 Adjustment with BERO Function For adjustment using proximity switch, a reference point approach to a defined machine position is performed the same as for incremental measuring systems. In this case, the proximity switch replaces the encoder zero mark that the absolute encoder does not have. After successful completion of reference point approach, the NC automatically calculates the reference point offset from the difference between the encoder absolute value and the parameterized reference point value.
  • Page 328: Reference Point Approach With Absolute Encoders

    R1: Referencing 10.9 Referencing with absolute encoders 10.9.6 Reference point approach with absolute encoders Parameter assignment Traversing movement release If for a machine axis with adjusted absolute value encoder as active measuring system, reference point traversing is activated (manually in the JOG-REF mode or automatically via the part program instruction G74), the machine axis travels depending on the parameterized traversing movement release.
  • Page 329 R1: Referencing 10.9 Referencing with absolute encoders Property Incremental encoder Absolute encoder Reference point offset MD34090 $MA_REFP_MOVE_DIST_CORR = Value input allowed Value is updated exclusively via control Supported referencing types MD34200 $MA_ENC_REFP_MODE = 1, 3, 4, 8 0, 1 Adjustment status MD34210 $MA_ENC_REFP_STATE = 0, 1, 2 Automatic encoder misalignment during Automatic encoder misalignment during pa‐...
  • Page 330: Enabling The Measurement System

    R1: Referencing 10.9 Referencing with absolute encoders Supplementary conditions ● A reference point offset (MD34090 $MA_REFP_MOVE_DIST_CORR) may not be parameterized. This MD describes, in connection with absolute encoders, the offset between machine and absolute encoder zero, and it therefore has a different meaning. ●...
  • Page 331 R1: Referencing 10.9 Referencing with absolute encoders Parameterizing the encoder limit frequency (spindles) The EQN 1325 absolute encoder made by Heidenhain has an incremental track and an absolute track. If a spindle is driven at a speed above the encoder limit frequency of the incremental track, the substantially lower limit frequency of absolute track must be parameterized as the encoder limit frequency.
  • Page 332: Referencing Variants Not Supported

    R1: Referencing 10.10 Automatic restoration of the machine reference 10.9.9 Referencing variants not supported The following referencing variants are not supported when used with absolute encoders: ● Referencing/calibrating with encoder zero mark ● Distance-coded reference marks ● Proximity switch with two-edge evaluation 10.10 Automatic restoration of the machine reference 10.10.1...
  • Page 333: Automatic Referencing

    R1: Referencing 10.10 Automatic restoration of the machine reference Note SMExx Sensor Modules Automatic referencing or restoration of the actual position to the last buffered position after restarting the control is only possible in conjunction with SMExx (externally mounted) Sensor Modules.
  • Page 334: Restoration Of The Actual Position

    R1: Referencing 10.10 Automatic restoration of the machine reference Boundary conditions Encoder activation with MD34210 $MA_ENC_REFP_STATE[<encoder>] == 1 An encoder state equal to "1" at the time of the encoder activation means that "Automatic referencing" has been enabled. However, the measuring system has either not been referenced yet or the machine axis was not switched off at standstill in the "Exact stop fine"...
  • Page 335 R1: Referencing 10.10 Automatic restoration of the machine reference Release: NC START for "MDI" and "Overstore" modes The enable of NC START for execution of part programs or part program blocks in the "MDI" and "Overstore" modes with the state "Position restored" is performed via: MD34110 $MA_REFP_CYCLE_NR ≠...
  • Page 336: Supplementary Conditions

    R1: Referencing 10.11 Supplementary conditions 10.11 Supplementary conditions 10.11.1 Large traverse range Linear axes with a traversing range > 4096 encoder revolutions, rotatory absolute encoder EQN 1325 and a parameterized absolute encoder range of MD34220 $MA_ENC_ABS_TURNS_MODULO = 4096: The maximum possible travel range corresponds to that of incremental encoders. Endlessly turning rotary axes with absolute encoders: ●...
  • Page 337: Data Lists

    R1: Referencing 10.12 Data lists 10.12 Data lists 10.12.1 Machine data 10.12.1.1 NC-specific machine data Number Identifier: $MN_ Description 11300 JOG_INC_MODE_LEVELTRIGGRD INC/REF in jog/continuous mode 10.12.1.2 Channelspecific machine data Number Identifier: $MC_ Description 20700 REFP_NC_START_LOCK NC start disable without reference point 10.12.1.3 Axis/spindlespecific machine data Number...
  • Page 338 R1: Referencing 10.12 Data lists Number Identifier: $MA_ Description 34080 REFP_MOVE_DIST Reference point distance / destination point for dis‐ tance-coded system 34090 REFP_MOVE_DIST_CORR Reference point offset / absolute offset, distance-coded 34092 REFP_CAM_SHIFT Electronic reference cam shift for incremental measur‐ ing systems with equidistant zero marks 34093 REFP_CAM_MARKER_DIST Reference cam / reference mark distance...
  • Page 339: S9: Setpoint Switchover

    S9: Setpoint switchover 11.1 Brief description Function The "Setpoint switchover" function is required if only one motor is to be used to drive several axes/spindles. For example, for milling heads, where the spindle motor is to be used to drive the tool as well as to orientate the milling head.
  • Page 340 S9: Setpoint switchover 11.1 Brief description Example ① Motor with encoder ② Mechanical switchover device ③ Gearbox 1 ④ Encoder 1 (e.g. for the milling head) ⑤ Gearbox 2 ⑥ Encoder 2 (e.g. for the spindle) Figure 11-1 Setpoint switchover with 2 axes Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 341: Startup

    S9: Setpoint switchover 11.2 Startup Replacing the technology function "setpoint changeover" (TE5) The "setpoint changeover" function replaces the technology function "setpoint changeover" (TE5). Migration of the technology function to the functionality of the "setpoint changeover" function means that you must make changes in the machine data and in the PLC user program: ●...
  • Page 342 S9: Setpoint switchover 11.2 Startup DB31, ... DBX24.5 (setpoint switchover: request drive control) Status of the drive control The current status of drive control is displayed via: DB31, ... DBX96.5 (setpoint switchover: drive control active) Status signals After drive control is assumed for the first time for one of the machine axes involved in the setpoint switchover (DB31, ...
  • Page 343 S9: Setpoint switchover 11.2 Startup MD30110 $MA_CTRLOUT_MODULE_NR[0,AX4] = 4 ; setpoint switchover: 1st axis MD30110 $MA_CTRLOUT_MODULE_NR[0,AX5] = 4 ; setpoint switchover: 2nd axis In order to be able to traverse the axis using the drive, the NC/PLC interface signal to request drive control (DB31, ...
  • Page 344: Flow Diagram

    S9: Setpoint switchover 11.3 Flow diagram 11.3 Flow diagram Figure 11-2 Sequence when switching over the setpoint from machine axes AX1 to AX2 Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 345: Boundary Conditions

    S9: Setpoint switchover 11.4 Boundary conditions 11.4 Boundary conditions Alarms Only axes with active drive control display drive alarms. Position control loop The drive train, and therefore also the position control loop, are disconnected while the setpoint is being switched over. In order to avoid instability, the setpoint is only switched over at standstill - and once all controller enable signals have been cleared (deleted).
  • Page 346: Data Lists

    S9: Setpoint switchover 11.5 Data lists Further information: SINUMERIK Safety Integrated manual 11.5 Data lists 11.5.1 Machine data 11.5.1.1 Axis/spindlespecific machine data Number Identifier: $MA_ Description 30130 CTRLOUT_TYPE Output type of setpoint 30200 NUM_ENCS Number of encoders 30220 ENC_MODULE_NR Actual-value assignment: Drive number / measurement circuit number 30230 ENC_INPUT_NR...
  • Page 347: B2: Acceleration And Jerk

    B2: Acceleration and jerk 12.1 Brief description 12.1.1 General information Scope of functions The Description of Functions covers the following sub-functions: ● Acceleration ● Jerk ● Kneeshaped acceleration characteristic Acceleration and jerk The effective acceleration and jerk can be optimally matched to the machine and machining situation concerned using axis- and channel-specific programmable maximum values, programmable acceleration profiles in part programs and synchronized actions, and dynamic adaptations and limitations.
  • Page 348 B2: Acceleration and jerk 12.1 Brief description Channel-specific functions: ● Acceleration profile that can be selected via part-program instruction: Acceleration without jerk limitation (BRISK) ● Programmable constant travel time for the purpose of avoiding extreme sudden acceleration ● Programmable acceleration margin for overlaid traversing ●...
  • Page 349: Functions

    B2: Acceleration and jerk 12.2 Functions 12.2 Functions 12.2.1 Acceleration without jerk limitation (BRISK/BRISKA) (channel/axis-specific) 12.2.1.1 General Information General Information In the case of acceleration without jerk limitation (jerk = infinite) the maximum value is applied for acceleration immediately. As regard to acceleration with jerk limitation, it differs in the following respects: ●...
  • Page 350: Parameterization

    B2: Acceleration and jerk 12.2 Functions ● Time: t Sudden acceleration from 2 * a with immediate switchover from acceleration to braking Note The sudden acceleration can normally be avoided by specifying a constant velocity time (see Section "Constant traversing time (channel-specific) (Page 352)"). ●...
  • Page 351: Programming

    B2: Acceleration and jerk 12.2 Functions Maximum axial acceleration for JOG motions See Section "Acceleration and jerk for JOG motions (Page 388)". 12.2.1.3 Programming Path acceleration without jerk limitation (BRISK) Syntax BRISK Functionality The BRISK part-program instruction is used to select the "without jerk limitation" acceleration profile for the purpose of path acceleration.
  • Page 352: Constant Traversing Time (Channel-Specific)

    B2: Acceleration and jerk 12.2 Functions Axis-specific initial setting Acceleration without jerk limitation can be set as the axis-specific initial setting for single-axis movements: MD32420 $MA_JOG_AND_POS_JERK_ENABLE = FALSE Reset behavior The axis-specific initial setting is activated via a reset: MD32420 $MA_JOG_AND_POS_ENABLE 12.2.2 Constant traversing time (channel-specific) 12.2.2.1...
  • Page 353: Parameterization

    B2: Acceleration and jerk 12.2 Functions Curve with constant traversing time Curve without constant traversing time Maximum acceleration value Maximum velocity value Time Figure 12-2 Principle characteristic for an abrupt acceleration The above figure shows the effect of the constant traversing time: ●...
  • Page 354: Acceleration Adaptation (Acc) (Axis-Specific)

    B2: Acceleration and jerk 12.2 Functions 12.2.3 Acceleration adaptation (ACC) (axis-specific) 12.2.3.1 General Information Function Using the ACC command, the currently effective maximum axis acceleration parameterized in the acceleration-specific machine data can be reduced for a specific axis. The reduction is in the form of a percentage factor, which is specified when programming the command.
  • Page 355: Acceleration Reserve (Channel-Specific)

    B2: Acceleration and jerk 12.2 Functions Further information System variable The acceleration reduction (set using ACC), currently active in the channel, can be read on an axis-for-axis basis using: $AA_ACC[<axis>] Reset response The acceleration reduction set using ACC can be kept after a channel reset or after the end of the program.
  • Page 356: Parameterization

    B2: Acceleration and jerk 12.2 Functions The value specified in the setting data is only taken into account if it is smaller than the path acceleration calculated during preprocessing. The limitation must be activated for specific channels using setting data: SD42502 $SC_IS_SD_MAX_PATH_ACCEL = TRUE 12.2.5.2 Parameterization...
  • Page 357: Path Acceleration For Real-Time Events (Channel-Specific)

    B2: Acceleration and jerk 12.2 Functions Value Parameter: ● Value range: TRUE, FALSE Application: ● Part program ● Static synchronized action 12.2.6 Path acceleration for real-time events (channel-specific) 12.2.6.1 General Information General Information So that no compromise has to be made between machining-optimized acceleration on the one hand and time-optimized acceleration in connection with the following real-time events on the other: ●...
  • Page 358: Programming

    B2: Acceleration and jerk 12.2 Functions Effectiveness Effective Real-time event acceleration is only enabled in AUTOMATIC and MDA operating modes in conjunction with the following real-time events: ● NC Stop / NC Start ● Override changes ● Changing the velocity default for "safely reduced velocity" within the context of the "Safety Integrated"...
  • Page 359: Acceleration With Programmed Rapid Traverse (G00) (Axis-Specific)

    B2: Acceleration and jerk 12.2 Functions 12.2.7 Acceleration with programmed rapid traverse (G00) (axis-specific) 12.2.7.1 General Information Frequently, the acceleration for the machine axes involved in the machining process must be set lower than the machine's performance capability officially allows because of the supplementary conditions associated with the specific process concerned.
  • Page 360: Acceleration With Active Jerk Limitation (Soft/Softa) (Axis-Specific)

    B2: Acceleration and jerk 12.2 Functions 12.2.8 Acceleration with active jerk limitation (SOFT/SOFTA) (axis-specific) 12.2.8.1 General Information Function Compared with acceleration without jerk limitation, acceleration with jerk limitation results in a certain degree of time loss, even when the same maximum acceleration value is used. To compensate for this time loss, a specific maximum value can be programmed for the axis- specific acceleration as far as traversing of the machine axes with active jerk limitation (SOFT/SOFTA) is concerned.
  • Page 361: Parameterization

    B2: Acceleration and jerk 12.2 Functions 12.2.9.2 Parameterization Excessive acceleration for non-tangential block transitions is parameterized using the axis- specific machine data: MD32310 $MA_MAX_ACCEL_OVL_FACTOR (overload factor for velocity jumps) 12.2.10 Acceleration reserve for the radial acceleration (channel-specific) 12.2.10.1 General Information Overview In addition to the path acceleration (tangential acceleration), radial acceleration also has an effect on curved contours.
  • Page 362: Parameterization

    B2: Acceleration and jerk 12.2 Functions Path acceleration = (1 - MD20602 $MC_CURV_EFFECT_ON_PATH_ACCEL) * MD32300 $MA_MAX_AX_AC‐ Example The following machine parameters apply: ● MD32300 $MA_MAX_AX_ACCEL for all geometry axes: 3 m/s ● Maximum path velocity with a path radius of 10 mm due to mechanical constraints of the machine: 5 m/min.
  • Page 363: Jerk Limitation With Path Interpolation (Soft) (Channel-Specific)

    B2: Acceleration and jerk 12.2 Functions 12.2.11 Jerk limitation with path interpolation (SOFT) (channel-specific) 12.2.11.1 General Information Overview As far as the functionality described in the rest of this document is concerned, constant acceleration, i.e., acceleration with jerk limitation (jerk = infinite value), is the assumed acceleration profile.
  • Page 364 B2: Acceleration and jerk 12.2 Functions Acceleration profile Maximum jerk value Maximum acceleration value Maximum velocity value Time Figure 12-4 Jerk, acceleration and velocity schematic with jerk limitation acceleration profile The following features of the acceleration profile can be identified from the figure above: ●...
  • Page 365: Parameterization

    B2: Acceleration and jerk 12.2 Functions 12.2.11.2 Parameterization Maximum jerk value for path motions (axis-specific) The maximum axial jerk for path motions can be set for the specific technology for each machine axis via the following machine data: MD32431 $MA_MAX_AX_JERK[<parameter set index>] With <parameter set index>...
  • Page 366: Jerk Limitation With Single-Axis Interpolation (Softa) (Axis-Specific)

    B2: Acceleration and jerk 12.2 Functions MD20150 $MC_GCODE_RESET_VALUES[20] Boundary conditions If the acceleration mode is changed in a part program during machining (BRISK ↔ SOFT), a block change is performed at the point of transition with an exact stop at the end of the block, even in continuous-path mode.
  • Page 367: Programming

    B2: Acceleration and jerk 12.2 Functions 12.2.12.2 Programming Syntax Axis { Axis }) SOFTA ( Functionality The SOFTA part-program command is used to select acceleration with jerk limitation for single- axis movements (positioning axis, reciprocating axis, etc.) G group: - Effectiveness: Modal Axis : ●...
  • Page 368: Parameterization

    B2: Acceleration and jerk 12.2 Functions 12.2.13.2 Parameterization Parameterization is carried out for specific channels using setting data: SD42510 $SC_SD_MAX_PATH_JERK (maximum path jerk) SD42512 $SC_IS_SD_MAX_PATH_JERK (activation of path-jerk limitation) 12.2.13.3 Programming Maximum path jerk Syntax jerk value $SC_SD_MAX_PATH_JERK = Functionality The path-jerk limitation can be adjusted for the situation by programming the setting data.
  • Page 369: Path Jerk For Real-Time Events (Channel-Specific)

    B2: Acceleration and jerk 12.2 Functions Application: ● Part program ● Static synchronized action 12.2.14 Path jerk for real-time events (channel-specific) 12.2.14.1 General Information Overview So that no compromise has to be made between machining-optimized jerk on the one hand and time-optimized jerk in connection with the following real-time events on the other: ●...
  • Page 370: Programming

    B2: Acceleration and jerk 12.2 Functions Programming For the purpose of setting the jerk for real-time events in accordance with the acceleration, the system variables can be set as follows: $AC_PATHJERK = $AC_PATHACC/smoothing time ● $AC_PATHACC: Path acceleration [m/s Smoothing time: Freely selectable, e.g. 0.02 s For information about programming system variables in the part program or synchronized actions, see Section "Programming (Page 370)".
  • Page 371: Jerk During Programmed Rapid Traverse (G00) (Axis-Specific)

    B2: Acceleration and jerk 12.2 Functions 12.2.15 Jerk during programmed rapid traverse (G00) (axis-specific) 12.2.15.1 General Information Overview Frequently, the maximum jerk for the machine axes involved in the machining process must be set lower than the machine's performance capability officially allows because of the supplementary conditions associated with the specific process concerned.
  • Page 372: Parameterization

    B2: Acceleration and jerk 12.2 Functions 12.2.16.2 Parameterization The excessive jerk for block transitions without constant curvature is parameterized using the axis-specific machine data: MD32432 $MA_PATH_TRANS_JERK_LIM (excessive jerk for block transitions without constant curvature) 12.2.17 Velocity-dependent jerk adaptation (axis-specific) Function The dynamic path response results from the parameterized, constant axial maximum values for velocity, acceleration and jerk of the axes involved in the path: ●...
  • Page 373 B2: Acceleration and jerk 12.2 Functions Parameterization The "Velocity-dependent jerk adaptation" function is parameterized with the following machine data: ● MD32437 $MA_AX_JERK_VEL0[<n>] = <threshold value > lower Lower velocity threshold of the jerk adaptation. Velocity-dependent jerk adaptation takes effective as of this velocity. The lower speed threshold can be set separately via the Index n, for each dynamic mode (see Function Manual "Basic Functions", Section "Dynamic mode for path interpolation"): ●...
  • Page 374: Jerk Filter (Position Setpoint Filter, Axis-Specific)

    B2: Acceleration and jerk 12.2 Functions Example Example of parameter assignment: ● MD32437 $MA_AX_JERK_VEL0 = 3000 mm/min ● MD32438 $MA_AX_JERK_VEL1 = 6000 mm/min ● MD32439 $MA_MAX_AX_JERK_FACTOR[AX1] = 2.0 ● MD32439 $MA_MAX_AX_JERK_FACTOR[AX2] = 3.0 ● MD32439 $MA_MAX_AX_JERK_FACTOR[AX3] = 1.0 Effect ● The speed-dependent jerk adaptation is active for the 1st and 2nd axis, whereas the function for the 3rd axis is not active.
  • Page 375 B2: Acceleration and jerk 12.2 Functions Various filter types are available to enable the jerk filter to be optimally matched to the specific machine characteristics: ● 2nd order filter (PT2) ● Moving average calculation ● Band-stop ● Double moving average calculation Filter type: 2nd order filter Because it is a simple low-pass filter, a "2nd order filter"...
  • Page 376 B2: Acceleration and jerk 12.2 Functions Since a vibration-capable filter setting is not expected to yield useful results in any case, as with the "2nd-order filter" (PT2) low-pass filter (PT2) mode of the jerk filter there is no setting option for the denominator damping D .
  • Page 377: Parameterization

    B2: Acceleration and jerk 12.2 Functions 12.2.18.2 Parameterization Activation The jerk filter is activated using machine data: MD32400 $MA_AX_JERK_ENABLE (axial jerk limitation) The jerk filter is active in all operating modes and with all types of interpolation. Filter type The filter type is selected via the machine data: MD32402 $MA_AX_JERK_MODE (filter type for axial jerk limitation) Value Filter type...
  • Page 378 B2: Acceleration and jerk 12.2 Functions FIR filter (5) A FIR lowpass filter requires that the following machine data are set: ● MD32407 $MA_AX_JERK_FIR_FREQ = (corner frequency (-6dB) of the axial FIR jerk filter smoothing) ● MD32408 $MA_AX_JERK_FIR_ORDER (order of the filter for the axial FIR jerk filter smoothing) ●...
  • Page 379: Knee-Shaped Acceleration Characteristic

    B2: Acceleration and jerk 12.2 Functions 12.2.19 Knee-shaped acceleration characteristic 12.2.19.1 Function: Adaptation to the motor characteristic curve Various motor types, particularly stepper motors, have a torque characteristic that is highly dependent on the speed with a steep decline in the torque in the upper speed range. For optimal utilization of the motor characteristic, the acceleration of the associated NC axis must be reduced as of a specific speed.
  • Page 380: Function: Substitute Curve

    B2: Acceleration and jerk 12.2 Functions 3. Acceleration reduction: 2 = linear characteristic 4. No acceleration reduction effective A situation where no acceleration reduction is active arises for example when: MD35220 $MA_ACCEL_REDUCTION_SPEED_POINT = 1 and / or MD35230 $MA_ACCEL_REDUCTION_FACTOR = 0 Note Machine axes featuring stepper motor and DC drive can be interpolated together.
  • Page 381 B2: Acceleration and jerk 12.2 Functions Substitute characteristic curve with linear path sections Limitation to this value is applied if the programmed path velocity is greater than that at which 15 % of the maximum acceleration capacity is still available (v ).
  • Page 382 B2: Acceleration and jerk 12.2 Functions Substitute characteristic curve with curved path sections In the case of curved path sections, normal and tangential acceleration are considered together. The path velocity is reduced so that only up to 25 % of the speed-dependent acceleration capacity of the axes is required for normal acceleration.
  • Page 383: Parameterization

    B2: Acceleration and jerk 12.2 Functions ① Normal range ⇒ a = a ② Reducing range ⇒ a < a ③ Constant travel range ⇒ a = 0 m/s ④ Brake application point Creep velocity Maximum velocity Traversing block with block number Nx Figure 12-8 Deceleration with LookAhead 12.2.19.4...
  • Page 384 B2: Acceleration and jerk 12.2 Functions Parameter assignment The following machine data is relevant for parameterizing the axis-specific acceleration characteristic curve above the configured velocity limit: ● MD32000 $MA_MAX_AX_VELO (maximum axis velocity) ● MD35220 $MA_ACCEL_REDUCTION_SPEED_POINT = <speed limit> From the parameterized velocity, the reduced acceleration is in effect> ●...
  • Page 385 B2: Acceleration and jerk 12.2 Functions The following figures show the principal velocity and acceleration characteristic curves for the respective types of characteristic curve: ● Constant torque characteristic (value = 0) ● Hyperbolic torque characteristic (value = 1) ● Linear torque characteristic (value = 2) Characteristic parameters The characteristic curve parameters result from the following machine data: ①...
  • Page 386: Programming: Channel-Specific Activation (Drive)

    B2: Acceleration and jerk 12.2 Functions 12.2.19.5 Programming: Channel-specific activation (DRIVE) Functionality The axis-specific velocity limit, above which the reduced acceleration acts as an axis for traversing movements, is activated with the command DRIVE. Syntax DRIVE Meaning Channel-specific switch-on of the reduced acceleration above the parameter‐ DRIVE: ized velocity limit G group:...
  • Page 387: Boundary Conditions

    B2: Acceleration and jerk 12.2 Functions Meaning Axis-specific activation of the parameterized knee-shaped acceleration char‐ DRIVEA: acteristic curve. Effectiveness: Modal Axis for which the parameterized knee-shaped acceleration characteristic <axis_x>: curve is to be activated. Data type: AXIS Value range: Channel axis names Supplementary conditions If the knee-shaped acceleration characteristic curve is parameterized for an axis, then this becomes the default acceleration profile for traversing operations.
  • Page 388: Acceleration And Jerk For Jog Motions

    B2: Acceleration and jerk 12.2 Functions 12.2.20 Acceleration and jerk for JOG motions The axis-specific acceleration and jerk limitation values also take effect in JOG mode. It is also possible to limit acceleration and jerk channel-specifically for manual traversing of geometry and orientation axes.
  • Page 389: Supplementary Conditions

    B2: Acceleration and jerk 12.2 Functions With <geometry axis> = 0, 1, 2 Note With MD21166 $MC_JOG_ACCEL_GEO [<geometry axis>], there is no direct limitation to MD32300 $MA_MAX_AX_ACCEL. Note When a transformation is active, MD32300 $MA_MAX_AX_ACCEL determines the maximum possible axis-specific acceleration. Maximum jerk when manually traversing geometry axes The maximum jerk when manually traversing geometry axes in the SOFT acceleration mode (acceleration with jerk limitation) can be specified for each channel via the machine data:...
  • Page 390: Examples

    B2: Acceleration and jerk 12.3 Examples Part program instruction SOFTA / BRISKA / DRIVEA The part program instruction SOFTA(<axis1>,<axis2>, ...) is also effective in JOG mode, i.e. the maximum axis-specific jerk from MD32430 $MA_JOG_AND_POS_MAX_JERK is effective for the specified axes when traversing in JOG mode (exactly as when setting MD32420 $MA_JOG_AND_POS_JERK_ENABLE [<axis>] == TRUE).
  • Page 391 B2: Acceleration and jerk 12.3 Examples Program code N1100 TRANS Y=-50 N1200 AROT Z=30 G642 ; Contour N2100 X0 Y0 N2200 X = 70 G1 F10000 RNDM=10 ACC[X]=30 ACC[Y]=30 N2300 Y = 70 N2400 X0 N2500 Y0 Path velocity characteristic Acceleration profile: BRISK Accelerate to 100% of path velocity (F10000) in accordance with acceleration default: ACC (N2200...) Brake to 10% of path velocity as a result of override modification ($AC_OVR) in accordance with real-time accel‐...
  • Page 392: Jerk

    B2: Acceleration and jerk 12.3 Examples 12.3.2 Jerk 12.3.2.1 Path velocity characteristic The following example shows the characteristic of path velocity and jerk based on programmed traversing motion and the actions initiated in a part program segment. Part program extract Program code ;...
  • Page 393: Acceleration And Jerk

    B2: Acceleration and jerk 12.3 Examples Characteristic of path velocity and jerk Acceleration profile: SOFT Jerk according to $MA_MAX_AX_JERK[..] Jerk according to $AC_PATHJERK Jerk according to $MA_MAX_AX_JERK[..] (approach block end velocity) Velocity limiting using arcs Jerk according to $AC_PATHJERK Figure 12-10 Switching between path jerk specified during preprocessing and $AC_PATHJERK 12.3.3 Acceleration and jerk...
  • Page 394 B2: Acceleration and jerk 12.3 Examples Contour Figure 12-11 Contour of the part program extract Velocity and acceleration characteristic Figure 12-12 Velocity and acceleration characteristic curves X axis Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 395: Knee-Shaped Acceleration Characteristic

    B2: Acceleration and jerk 12.3 Examples 12.3.4 Knee-shaped acceleration characteristic 12.3.4.1 Activation The example illustrates how the knee-shaped acceleration characteristic curve is activated on the basis of the machine data and a part program extract. Machine data Machine data Value = 0.4 MD35220 $MA_ACCEL_REDUCTION_SPEED_POINT[ = 0.85...
  • Page 396: Data Lists

    B2: Acceleration and jerk 12.4 Data lists 12.4 Data lists 12.4.1 Machine data 12.4.1.1 NC-specific machine data Number Identifier: $MN_ Description 18960 POS_DYN_MODE Type of positioning axis dynamic response 12.4.1.2 Channel-specific machine data Number Identifier: $MC_ Description 20150 GCODE_RESET_VALUES Initial setting of the G groups 20500 CONST_VELO_MIN_TIME Minimum time with constant velocity...
  • Page 397: Setting Data

    B2: Acceleration and jerk 12.4 Data lists Number Identifier: $MA_ Description 32412 AX_JERK_FREQ Blocking frequency of the axial jerk filter 32414 AX_JERK_DAMP Damping, axial jerk filter 32420 JOG_AND_POS_JERK_ENABLE Basic setting for axial jerk limitation 32430 JOG_AND_POS_MAX_JERK Axial jerk for single axis motion 32431 MAX_AX_JERK Maximum axial jerk at the block change in continuous-...
  • Page 398 B2: Acceleration and jerk 12.4 Data lists Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 399: N3: Software Cams, Position Switching Signals

    N3: Software cams, position switching signals 13.1 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 NC I/O. The cam positions at which signal outputs are set can be defined and altered via setting data.
  • Page 400: Cam Signals And Cam Positions

    N3: Software cams, position switching signals 13.2 Cam signals and cam positions 13.2 Cam signals and cam positions 13.2.1 Generation of cam signals for separate output Separate output of the plus and minus cam signals makes it easy to detect whether the axis is within or outside the plus or minus cam range.
  • Page 401 N3: Software cams, position switching signals 13.2 Cam signals and cam positions Linear axes The switching edges of the cam signals are generated as a function of the axis traversing direction: ● The minus cam signal switches from 1 to 0 when the axis traverses the minus cam in the positive axis direction.
  • Page 402 N3: Software cams, position switching signals 13.2 Cam signals and cam positions Figure 13-2 Software cams for linear axis (plus cam < minus cam) Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 403 N3: Software cams, position switching signals 13.2 Cam signals and cam positions Modulo rotary axes The switching edges of the cam signals are generated as a function of the rotary axis traversing direction: ● The plus cam signal switches from 0 to 1 when the axis traverses the minus cam in a positive axis direction and from 1 back to 0 when it traverses the plus cam.
  • Page 404: Generation Of Cam Signals With Gated Output

    N3: Software cams, position switching signals 13.2 Cam signals and cam positions Figure 13-4 Software cams for modulo rotary axis (plus cam - minus cam > 180 degrees) 13.2.2 Generation of cam signals with gated output The plus and minus cam output signals are gated in the case of: ●...
  • Page 405 N3: Software cams, position switching signals 13.2 Cam signals and cam positions Linear axes Figure 13-5 Position switching signals for linear axis (minus cam < plus cam) Figure 13-6 Position switching signals for linear axis (plus cam < minus cam) Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 406 N3: Software cams, position switching signals 13.2 Cam signals and cam positions Modulo rotary axis The default signal response for modulo rotary axes is dependent on the cam width: Figure 13-7 Software cams for modulo rotary axis (plus cam - minus cam < 180 degrees) Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 407 N3: Software cams, position switching signals 13.2 Cam signals and cam positions Figure 13-8 Software cams for modulo rotary axis (plus cam - minus cam > 180 degrees) Suppression of signal inversion With the following setting, selection of signal inversion for "plus cam - minus cam >...
  • Page 408: Cam Positions

    N3: Software cams, position switching signals 13.2 Cam signals and cam positions Figure 13-9 Software cams for modulo rotary axis (plus cam - minus cam > 180 degrees) and suppression of signal inversion 13.2.3 Cam positions Setting cam positions The positions of the plus and minus cams are defined using general setting data: ●...
  • Page 409 N3: Software cams, position switching signals 13.2 Cam signals and cam positions Dimension system metric/inch With the setting: MD10260 CONVERT_SCALING_SYSTEM = 1 , the cam positions no longer refer to the configured basic dimension system, but to the dimension system set in the following machine data: MD10270 POS_TAB_SCALING_SYSTEM (measuring system of position tables) Value Meaning...
  • Page 410: Lead/Delay Times (Dynamic Cam)

    N3: Software cams, position switching signals 13.2 Cam signals and cam positions 13.2.4 Lead/delay times (dynamic cam) Function 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.
  • Page 411: Output Of Cam Signals

    N3: Software cams, position switching signals 13.3 Output of cam signals ● SD41526 SW_CAM_MINUS_TIME_TAB_4[n] (lead or delay time at the minus cams 25 – 32) ● SD41527 SW_CAM_PLUS_TIME_TAB_4[n] (lead or delay time at the plus cams 25 – 32) Delay times which may change during machining must, for example, be entered in the setting data.
  • Page 412: Output Of Cam Signals To Nck I/Os In Position Control Cycle

    N3: Software cams, position switching signals 13.3 Output of cam signals Minus cam signals The status of the minus cam signals is entered into the following NC/PLC interface signals: DB10 DBX110.0 to 113.7 (minus cam signal 1 to 32) Plus cam signals The status of the plus cam signals is entered into the following NC/PLC interface signals: DB10 DBX114.0 to 117.7 (plus cam signals 1 to 32) Note...
  • Page 413: Timer-Controlled Cam Signal Output

    N3: Software cams, position switching signals 13.3 Output of cam signals Note It is possible to define one HW byte for the output of eight minus cam signals and one HW byte for the output of eight plus cam signals in each machine data. In addition, the output of the cam signals can be inverted with the two machine data.
  • Page 414 N3: Software cams, position switching signals 13.3 Output of cam signals In this case, the minus and plus signals of a cam pair are logically combined for output as one signal. Signal generation Previously, it had to be specified in which way the signals to be logically combined should be generated.
  • Page 415: Independent, Timer-Controlled Output Of Cam Signals

    N3: Software cams, position switching signals 13.3 Output of cam signals Further settings The following bit must be set to "0" if the behavior described here is to be activated: MD10485 SW_CAM_MODE bit 0 = 0 13.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 interpolator clock cycle) cam output.
  • Page 416: Position-Time Cams

    N3: Software cams, position switching signals 13.4 Position-time cams 13.4 Position-time cams Position-time cams The term "position-time cam" refers to a pair of software cams that can supply a pulse of a certain duration at a defined axis position. Solution The position is defined by a pair of software cams.
  • Page 417: Boundary Conditions

    N3: Software cams, position switching signals 13.6 Data lists ● 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]... SD41526 SW_CAM_MINUS_TIME_TAB_4[n] ● Mode MD10485 SW_CAM_MODE Bit 2 = 1 must be set in the machine data to ensure that all cam pairs with the same values for minus cam and plus cam positions are treated as position-time cams.
  • Page 418: Setting Data

    N3: Software cams, position switching signals 13.6 Data lists Number Identifier: $MN_ Description 10480 SW_CAM_TIMER_FASTOUT_MASK Screen form for the output of the cam signals via timer interrupts on the NCU 10485 SW_CAM_MODE Behavior of the software cams 13.6.2 Setting data 13.6.2.1 General setting data Number...
  • Page 419: M3: Coupled Axes

    M3: Coupled axes 14.1 Coupled motion 14.1.1 Brief description 14.1.1.1 Function The "coupled motion" function enables the definition of simple axis links between a master axis and a slave axis, taking into consideration a coupling factor. Coupled motion has the following features: ●...
  • Page 420: General Functionality

    M3: Coupled axes 14.1 Coupled motion However, for basic operation of generic coupling, the following restrictions apply: ● The maximum number of coupled motion groupings is limited to 4. ● Only 1 leading axes may be assigned to each coupled motion axis. ●...
  • Page 421 M3: Coupled axes 14.1 Coupled motion Figure 14-1 Application example: Two-sided machining Multiple couplings Up to 2 leading axes can be assigned to one coupled motion axis. The traversing movement of the coupled motion axis then results from the sum of the traversing movements of the leading axes.
  • Page 422 M3: Coupled axes 14.1 Coupled motion Activating/deactivating Coupled motion can be activated/deactivated via the part programs and synchronous actions. In this context please ensure activating/deactivating is undertaken with the same programming: ● Activate: Part program → Deactivate: Part program ● Activate: Synchronous action → Deactivate: Synchronized action Synchronization on-the-fly If switch on is performed while the leading axis is in motion, the coupled motion axis is first accelerated to the velocity corresponding to the coupling.
  • Page 423 M3: Coupled axes 14.1 Coupled motion Distance-to-go: Coupled motion axis The distance-to-go of a coupled motion axis refers to the total residual distance to be traversed from dependent and independent traversing. Delete distance-to-go: Coupled motion axis Delete distance-to-go for a coupled motion axis only results in aborting of the independent traversing movement of the leading axis.
  • Page 424: Programming

    M3: Coupled axes 14.1 Coupled motion 14.1.3 Programming 14.1.3.1 Definition and switch on of a coupled axis grouping (TRAILON) Definition and switch on of a coupled axis grouping take place simultaneously with the TRAILON part program command. Programming Syntax: TRAILON(<coupled motion axis>, <leading axis>, [<coupling factor>]) Effectiveness: modal...
  • Page 425: Effectiveness Of Plc Interface Signals

    M3: Coupled axes 14.1 Coupled motion Programming Syntax: TRAILON(<coupled motion axis>, <leading axis>) TRAILOF(<coupled-motion axis>) Effectiveness: modal Parameters: Coupled motion Type: AXIS axis: Range of val‐ All defined axis and spindle names in the channel ues: Leading axis: Type: AXIS Range of val‐...
  • Page 426: Status Of Coupling

    M3: Coupled axes 14.1 Coupled motion Leading axis When a coupled axis grouping is active, the interface signals (IS) of the leading axis are applied to the appropriate coupled motion axis via the axis coupling, i.e. ● A position offset or feed control action of the leading axis is applied via the coupling factor to effect an appropriate position offset or feed control action in the coupled motion axis.
  • Page 427: Dynamics Limit

    M3: Coupled axes 14.1 Coupled motion Value Meaning Master value coupling Following axis of electronic gearbox Note Only one coupling mode may be active at any given time. 14.1.6 Dynamics limit The dynamics limit is dependent on the type of activation of the coupled axis grouping: ●...
  • Page 428: Supplementary Conditions

    M3: Coupled axes 14.1 Coupled motion 14.1.7 Supplementary conditions Control system dynamics It is recommended to align the position control parameters of the leading axis and the coupled motion axis within a coupled axis group. Note Alignment of the position control parameters of the leading axis and the coupled motion axis can be performed via a parameter set changeover.
  • Page 429: Curve Tables

    M3: Coupled axes 14.2 Curve tables Program code Comment G0 Z10 ; Infeed Z and W axes in opposite axial directions G0 Y20 ; Infeed of Y and V axes in same axis direction G1 Y22 V25 ; Superimpose dependent and independent movement of coupled motion axis "V"...
  • Page 430: Preconditions

    M3: Coupled axes 14.2 Curve tables Curve tables can be saved in dynamic NC memory for faster access. Please note that tables need to be reloaded after run-up. Axis groupings with curve tables must be reactivated independently of the storage location of the curve table after POWER ON.
  • Page 431: Memory Organization

    M3: Coupled axes 14.2 Curve tables Further information Programming Manual Advanced Curve segments are used if: ● Polynomials or circles are programmed ● Spline is active ● Compressor is active ● Polynomials or circles are generated internally (chamfer/rounding, approximate positioning with G643, WRK etc.) Tool radius compensation Curve tables are available in which it is possible to specify the tool radius compensation in the...
  • Page 432 M3: Coupled axes 14.2 Curve tables Memory optimization In a curve table with linear segments, the linear segments can be stored efficiently in the memory only if the two following machine data items are > 0: MD18403 $MC_MM_NUM_CURVE_SEG_LIN (number of linear curve segments in the static NC memory) MD18409 $MC_MM_NUM_CURVE_SEG_LIN_DRAM (number of linear curve segments in the dynamic NC memory)
  • Page 433: Commissioning

    M3: Coupled axes 14.2 Curve tables Overwriting curve tables Curve tables that are not active in a master value coupling and are locked with CTABLOCK() may be overwritten. Deleting curve tables Curve tables that are not active in a master value coupling and are locked with CTABLOCK() may be overwritten.
  • Page 434: Tool Radius Compensation

    M3: Coupled axes 14.2 Curve tables 14.2.4.2 Tool radius compensation MD20900 Tool radius compensation can produce segments for which the following axis or leading axis have no movement. A missing movement of the following axis does not normally represent any problem.
  • Page 435: Programming

    M3: Coupled axes 14.2 Curve tables 14.2.5 Programming Definition The following modal language commands work with curve tables: (The parameters are explained at the end of the list of functions.) ● Beginning of definition of a curve table: CTABDEF(following axis, leading axis, n, applim, memType) ●...
  • Page 436 M3: Coupled axes 14.2 Curve tables Access to curve table segments ● Read start value (following axis value) of a table segment CTABSSV(leading value, n, degrees, [following axis, leading axis]) ● Read end value (following axis value) of a table segment CTABSEV(master value, n, degrees, [following axis, master axis]) Note If curve table functions such as CTAB(), CTABINV(), CTABSSV() etc., in synchronous actions...
  • Page 437 M3: Coupled axes 14.2 Curve tables All curve tables, irrespective of memory type CTABUNLOCK() All curve tables in the specified memory type CTABUNLOCK(, , memType) Other commands for calculating and differentiating between curve tables for applications for diagnosing and optimizing the use of resources: ●...
  • Page 438 M3: Coupled axes 14.2 Curve tables ● Maximum number of possible curve segments in memory memType. CTABMSEG(memType, segType) ● Number of polynomials already used in memory memType. CTABPOL(memType) ● Number of curve polynomials used by curve table number n. CTABPOLID(n) ●...
  • Page 439 M3: Coupled axes 14.2 Curve tables ● applim: Behavior at the curve table edges. – 0 non-periodic (table is processed only once, even for rotary axes). – 1 periodic, modulo (the modulo value corresponds to the LA table values). – 2 periodic, modulo (LA and FA are periodic). ●...
  • Page 440 M3: Coupled axes 14.2 Curve tables ● Axis names from gantry axis groups cannot be used to define a table (only leading axis are possible). ● Depending on the following machine data, jumps in the following axis may be tolerated if a movement is missing in the leading axis.
  • Page 441: Access To Table Positions And Table Segments

    M3: Coupled axes 14.2 Curve tables Example 2 Example of a curve table with active tool radius compensation: Prior to definition of a curve table with CTABDEF(), tool radius compensation must not be active; otherwise alarm 10942 is generated. This means that tool radius compensation must be activated within the definition of the curve table.
  • Page 442 M3: Coupled axes 14.2 Curve tables to the internal segments of the curve table. This is always the case if only G1 blocks or axis polynomials are used to define the curve tables and no other functions are active. Programmed sections may under certain circumstances not be transformed unchanged into internal curve segments if: 1.
  • Page 443 M3: Coupled axes 14.2 Curve tables Identifying the segment associated with master value X Example of reading the segment starting and end values for determining the curve segment associated with master value X = 30 using CTABSSV and CTABSEV: Program code Comment N10 DEF REAL STARTPOS ;...
  • Page 444 M3: Coupled axes 14.2 Curve tables R10 =CTABTEP(n, degrees, F axis), following value at the beginning of the curve table Value range of the following value The following example illustrates how the minimum and maximum values of the table are determined using CTABTMIN and CTABTMAX: Program code Comment...
  • Page 445: Activation/Deactivation

    M3: Coupled axes 14.2 Curve tables Figure 14-3 Determining the minimum and maximum values of the table 14.2.7 Activation/deactivation Activation The coupling of real axes to a curve table is activated through this command: LEADON (<Following axis>, <Leading axis>, <n>) with <n>...
  • Page 446: Modulo-Leading Axis Special Case

    M3: Coupled axes 14.2 Curve tables Deactivation is possible: ● In the part program ● in synchronized actions Note While programming LEADOF, the abbreviated form is also possible without specification of the leading axis. Example: N1010 LEADOF(A,X) ; The coupling of Axis A with its leading axis is canceled Multiple use A curve table can be used several times in a single part program to couple different channel axes.
  • Page 447: Effectiveness Of Plc Interface Signals

    M3: Coupled axes 14.2 Curve tables Basic setting after run-up No curve tables are active after run-up. 14.2.10 Effectiveness of PLC interface signals Dependent following axis With respect to the motion of a following axis that is dependent on the leading axis, only the following axis interface signals that effect termination of the motion (e.g.
  • Page 448 M3: Coupled axes 14.2 Curve tables a) Curve tables ● Determine total number of defined tables. The definition applies to all memory types (see also CTABNOMEM) CTABNO() ● Number of defined tables in SRAM or DRAM of NC memory. CTABNOMEM (memType) If memType is not specified, the memory type specified in the following machine data: MD20905 $MC_CTAB_DEFAULT_MEMORY_TYPE (default memory type for curve tables) Result:...
  • Page 449 M3: Coupled axes 14.2 Curve tables To prevent this from happening, the curve tables concerned can be locked, using the CTABLOCK(...) language command. In this case, it should be noted that the curve tables concerned are then unlocked with CTABUNLOCK(). ●...
  • Page 450 M3: Coupled axes 14.2 Curve tables ● Determine number of used curve segments of the type memType in the memory range CTABSEGID(n, segType) Result: >= 0: Number of curve segments -1: Curve table with number n does not exist -2: segType not equal "L" or "P" ●...
  • Page 451: Supplementary Conditions

    M3: Coupled axes 14.2 Curve tables 14.2.12 Supplementary conditions Transformations Transformations are not permissible in curve tables. TRAANG is an exception. TRAANG If TRAANG is programmed, the rule of motion programmed in the basic co-ordinate system is transformed to the associated machine co-ordinate system. In this way it is possible to program a curve table as Cartesian co-ordinates for a machine with inclined linear axes.
  • Page 452 M3: Coupled axes 14.2 Curve tables %_N_TAB_1_NOTPERI_MPF N22 PO[X]=(174.441,0.578,-0.206) PO[Y]=(0.123,1.925,0.188) N23 PO[X]=(185.598,-0.007,0.005) PO[Y]=(-0.123,0.430,-0.287) N24 PO[X]=(212.285,0.040,-0.206) PO[Y]=(-3.362,-2.491,0.190) N25 PO[X]=(227.395,-0.193,0.103) PO[Y]=(-6.818,-0.641,0.276) N26 PO[X]=(254.098,0.355,-0.053) PO[Y]=(-11.710,0.573,0.723) N26 PO[X]=(254.098,0.355,-0.053) PO[Y]=(-11.710,0.573,0.723) N27 PO[X]=(310.324,0.852,-0.937) PO[Y]=(-7.454,11.975,-1.720) N28 PO[X]=(328.299,-0.209,0.169) PO[Y]=(-3.197,0.726,-0.643) N29 PO[X]=(360.031,0.885,-0.413) PO[Y]=(0.000,-3.588,0.403) CTABEND N30 M30 Definition of a periodic curve table Table No: 2 Master value range: 0 - 360 The following axis traverses from N70 to N90, a movement from 0 to 45 and back to 0.
  • Page 453: Master Value Coupling

    M3: Coupled axes 14.3 Master value coupling 14.3 Master value coupling 14.3.1 Product brief 14.3.1.1 Function The "axial master value coupling" function can be used to process short programs cyclically with close coupling of the axes to one another and a master value that is either generated internally or input from an external source.
  • Page 454 M3: Coupled axes 14.3 Master value coupling MD30132 $MA_IS_VIRTUAL_AX[n] = 1 (axis is virtual axis) MD30130 $MA_CTRLOUT_TYPE[n] = 0 (simulation as output type of setpoint) Properties of master value simulation: ● Separation of IPO and servo. ● Actual values of the axis are recorded. ●...
  • Page 455 M3: Coupled axes 14.3 Master value coupling Figure 14-4 Master value coupling offset and scaling (multiplied) Figure 14-5 Master value coupling offset and scaling (with increment offset) Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 456 M3: Coupled axes 14.3 Master value coupling Reaction to Stop All leading value coupled following axes react to channel stop and MODE GROUP stop. Master value coupled following axes react to a stop due to end of program (M30, M02) if they have not been activated by static synchronized actions (IDS=...).
  • Page 457: Programming

    M3: Coupled axes 14.3 Master value coupling Example: Activation from synchronized action Program code Comment SPOS=0 B=IC(0) ; switch spindle to axis operation. RELEASE(Y) ; Enable for synchronized action. ID=1 WHEN ($AA_IM[X]<-50) DO LEADON(B,X,2) ; Y is coupled to X via curve table No. 14.3.3 Programming Definition and activation...
  • Page 458 M3: Coupled axes 14.3 Master value coupling Boundary conditions: ● No reference point is required to activate the coupling. ● A defined following axis cannot be traversed in the JOG mode (not even if the "Synchronized run fine" or. "synchronized run coarse" interface signal is not there). ●...
  • Page 459 M3: Coupled axes 14.3 Master value coupling Meaning: Following axis as geometry-, channel- or machine axis name (X, Y, Z,...) <FA> Leading axis as geometry-, channel- or machine axis name (X, Y, Z,...) <LA> Software axis is also possible: MD30130 $MA_CTRLOUT_TYPE=0 (setpoint output type) Example: Program code Comment...
  • Page 460 M3: Coupled axes 14.3 Master value coupling System variables of the master value The following master value system variables can only be read from part program and from synchronous actions: System variable Meaning $AA_LEAD_V[ax] Velocity of the leading axis $AA_LEAD_P[ax] Position of the leading axis $AA_LEAD_P_TURN Master value position...
  • Page 461: Behavior In Automatic, Mda And Jog Modes

    M3: Coupled axes 14.3 Master value coupling Note If the following axis is not enabled for travel, it is stopped and is no longer synchronous. 14.3.4 Behavior in AUTOMATIC, MDA and JOG modes Effectiveness A master value coupling is active depending on the settings in the part program and in the following machine data: MD20110 $MC_RESET_MODE_MASK (definition of initial control settings after RESET / TP End)
  • Page 462 M3: Coupled axes 14.3 Master value coupling MD20112 $MC_START_MODE_MASK (bit 13) (definition of initial control system settings with NC-START) ● MD20110 $MC_RESET_MODE_MASK=2001H && MD20112 $MC_START_MODE_MASK=0H → Master value coupling remains valid after RESET and START ● MD20110 $MC_RESET_MODE_MASK=2001H && MD20112 $MC_START_MODE_MASK=2000H →...
  • Page 463: Effectiveness Of Plc Interface Signals

    M3: Coupled axes 14.3 Master value coupling 14.3.5 Effectiveness of PLC interface signals Leading axis When a coupled axis group is active, the interface signals (IS) of the leading axis are applied to the appropriate following axis via axis coupling. i.e.: ●...
  • Page 464: Supplementary Conditions

    M3: Coupled axes 14.4 Electronic gear (EG) The curve tables are not lost when the control system is switched off. These functions have no effect on cyclic machines because they are performed without operator actions. Nor does it make sense to perform automatic (re-)positioning via the NC with external master values.
  • Page 465: Preconditions

    M3: Coupled axes 14.4 Electronic gear (EG) Curve tables Non-linear relationships between lead and following axes can also be implemented using curve tables. Cascading Electronic gearboxes can be cascaded, i.e. the following axis of an electronic gearbox can be the leading axis for a subsequent electronic gearbox. Synchronous position An additional function for synchronizing the following axis allows a synchronous position to be selected:...
  • Page 466 M3: Coupled axes 14.4 Electronic gear (EG) : Setpoint or actual value of the ith leading axis (depending on the type of coupling - see below) : Coupling factor of the ith leading axis (see below) All paths are referred to the basic co-ordinate system BCS. When an EG axis group is activated, it is possible to synchronize the leading axes and following axis in relation to a defined starting position.
  • Page 467 M3: Coupled axes 14.4 Electronic gear (EG) (see Section "Definition of an EG axis group (Page 473)") Coupling factor The coupling factor must be programmed for each leading axis in the group. It is defined by numerator/denominator. Coupling factor values numerator and denominator are entered per leading axis with the following activation calls: EGON EGONSYN...
  • Page 468 M3: Coupled axes 14.4 Electronic gear (EG) EG cascading The following axis of an EG can be the leading axis of another EG. For a sample configuration file, see Section "Examples". Figure 14-7 Block diagram of an electronic gearbox Synchronous positions To start up the EG axis group, an approach to defined positions for the following axis can first be requested.
  • Page 469 M3: Coupled axes 14.4 Electronic gear (EG) Activation response An electronic gearbox can be activated in two different ways: 1. On the basis of the axis positions that have been reached up to now in the course of processing the command to activate the EG axis group is issued without specifying the synchronizing positions for each individual axis.
  • Page 470 M3: Coupled axes 14.4 Electronic gear (EG) Synchronization abort with EGONSYN and EGONSYNE 1. The EGONSYN/EGONSYNE command is aborted under the following conditions and changed to an EGON command: ● RESET ● Axis switches to tracking The defined synchronization positions are ignored. Synchronous traverse monitoring still takes synchronized positions into account.
  • Page 471 M3: Coupled axes 14.4 Electronic gear (EG) Difference < .. TOL_COARSE As long as the synchronism difference is smaller than the following machine data, IS "Coarse synchronism" DB 31, ... DBX 98.1 is at the interface and IS "Fine synchronism" DB31, ... DBX99.4 is deleted: MD37200 $MN_COUPLE_POS_TOL_COARSE Difference >...
  • Page 472 M3: Coupled axes 14.4 Electronic gear (EG) IS "Enable following axis override" DB31, ... DBX26.4 In the case of the commands EGON() and EGONSYNE(), the "Enable following axis override" signal must be present for the gear to synchronize to the specified synchronization position for the following axis.
  • Page 473: Definition Of An Eg Axis Group

    M3: Coupled axes 14.4 Electronic gear (EG) Note When programmed in activation calls EGON, EGONSYN, EGONSYNE, each of the above strings can be abbreviated to the first two characters. If no block change has been defined for the EG axis group and none is currently specified, "FINE"...
  • Page 474: Activating An Eg Axis Group

    M3: Coupled axes 14.4 Electronic gear (EG) For an example of how to use the EG gearbox for gear hobbing, please see Chapter "Examples", "Electronic Gearbox for Gear Hobbing". EGDEF The gearbox definition with EGDEF should also be used unaltered when one or more leading axes affect the following axis via a curve table.
  • Page 475 M3: Coupled axes 14.4 Electronic gear (EG) With: FA: Following axis Block change mode: "NOC": Block change takes place immediately "FINE": Block change is performed in "Fine synchronism" "COARSE": Block change is performed in "Coarse synchronism" "IPOSTOP": Block change is performed for setpoint-based synchronism SynPosFA: Synchronized position of the following axis : Axis name of the leading axis i SynPosLAi: Synchronized position of leading axis i...
  • Page 476 M3: Coupled axes 14.4 Electronic gear (EG) with: "FA": Following axis Block change mode: "NOC": Block change takes place immediately "FINE": Block change is performed in "Fine synchronism" "COARSE": Block change is performed in "Coarse synchronism" "IPOSTOP": Block change is performed for setpoint-based synchronism SynPosFA: Synchronized position of the following axis Approach mode: "NTGT": NextToothGapTime-optimized, the next tooth gap is approached time-optimized...
  • Page 477 M3: Coupled axes 14.4 Electronic gear (EG) Approach response with FA at standstill In this case, the time-optimized and path-optimized traversing modes are identical. The table below shows the target positions and traversed paths with direction marker (in brackets) for the particular approach modes: Programmed Position of the fol‐...
  • Page 478: Deactivating An Eg Axis Group

    M3: Coupled axes 14.4 Electronic gear (EG) Sample notations EGONSYNE(A, "FINE", 110, "NTGT", B, 0, 2, 10) couple A to B, synchronized position A = 110, B = 0, coupling factor 2/10, approach mode = NTGT EGONSYNE(A, "FINE", 110, "DCT", B, 0, 2, 10) couple A to B, synchronized position A = 110, B = 0, coupling factor 2/10, approach mode = DCT EGONSYNE(A, "FINE", 110, "NTGT", B, 0, 2, 10, Y, 15, 1, 3) couple A to B, synchronized position A = 110, B = 0, Y = 15,...
  • Page 479: Deleting An Eg Axis Group

    M3: Coupled axes 14.4 Electronic gear (EG) The influence of the specified leading axes on the slave is selectively inhibited. This call triggers a preprocessing stop. If the call still includes active leading axes, then the slave continues to operate under their influence.
  • Page 480: Response To Power On, Reset, Operating Mode Change, Block Search

    M3: Coupled axes 14.4 Electronic gear (EG) 14.4.8 Response to POWER ON, RESET, operating mode change, block search Function Behavior regarding electronic gearbox Coupling state Configuration Mode change Is retained Is retained End of part program Is retained Is retained Reset Is retained Is retained...
  • Page 481: System Variables For Electronic Gearbox

    M3: Coupled axes 14.4 Electronic gear (EG) 14.4.9 System variables for electronic gearbox Application The following system variables can be used in the part program to scan the current states of an EG axis group and to initiate appropriate reactions if necessary: Table 14-1 System variables, R means: Read access possible Name...
  • Page 482: Examples

    M3: Coupled axes 14.4 Electronic gear (EG) Name Type Access Preprocessing Meaning, value Cond. Index stop part Sync part pro‐ Sync pro‐ act. gram act. gram $P_EG_BC[a] STRING Block change criterion for Axis name EG activation calls: EGON, a: Following axis EGONSYN: "NOC": immediately "FINE": Synchronoous tra‐...
  • Page 483 M3: Coupled axes 14.4 Electronic gear (EG) ● The radial axis (X) for infeeding the cutter to depth of tooth. ● The cutter swivel axis (A) for setting the hobbing cutter in relation to the workpiece as a function of cutter lead angle and angle of inclination of tooth. Figure 14-10 Definition of axes on a gear hobbing machine (example) The functional interrelationships on the gear hobbing machine are as follows:...
  • Page 484 M3: Coupled axes 14.4 Electronic gear (EG) The setpoint of the following axis is calculated cyclically with the following logic equation: * (z ) + v * (u ) + v * (u with: = Rotational speed of workpiece axis (C) = Rotational speed of milling spindle (B) = Number of gears of the hobbing machine = Number of teeth of the workpiece...
  • Page 485 M3: Coupled axes 14.4 Electronic gear (EG) Extract from part program: Program code Comment EGDEF(C,B,1,Z,1,Y,1) ; Definition of EG axis grouping with setpoint coupling (1) from B, Z, Y to C (following axis). EGON(C,"FINE",B,z0,z2,Z,udz,z2,Y,udy,z2) ; Activate coupling. … Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 486: Extended Example With Non-Linear Components

    M3: Coupled axes 14.4 Electronic gear (EG) 14.4.10.2 Extended example with non-linear components Introduction The following example extends the example (see "Figure 14-10 Definition of axes on a gear hobbing machine (example) (Page 483)") with the following: ● Machine error compensations which are not linearly dependent on the Z axis, and ●...
  • Page 487 M3: Coupled axes 14.4 Electronic gear (EG) The following section of a part program is intended to illustrate the general concept; supplementary curve tables and gear wheel/machine parameters are still to be added. Components to be added are marked with <...> . Stated parameters may also have to be modified, e.g.
  • Page 488 M3: Coupled axes 14.4 Electronic gear (EG) Z, <Syn- ; Switch-on of leading axis Z PosC99_Z>,10, 1) ; "&" character means: command continued in next line, no LF nor comment per- missible in program ; 2nd Gear stage N900 EGDEF(C, C99, 1, ;...
  • Page 489 M3: Coupled axes 14.4 Electronic gear (EG) $AA_EG_DENOM[X, Z] = 0 ; nominator = 0 → curve table applies $P_EG_BC[X] = "NOC" ; Block change criterion $AA_EG_NUM_LA[X] = 1 ; Number of leading axes $AA_EG_AX[0, X] = Z ; name of leading axis $AA_EG_SYN[X,Z] = <SynPosX_Z>...
  • Page 490 M3: Coupled axes 14.4 Electronic gear (EG) $AA_EG_SYNFA[C99] = <SynPosC99> ; Synchronized position of the following axis ; *************** Gear C (G5) $AA_EG_TYPE[C, Z] = 1 ; Setpoint value coupling $AA_EG_NUMERA[C, Z] = 4 ; curve table No. = 4 $AA_EG_DENOM[C, Z] = 0 ;...
  • Page 491 M3: Coupled axes 14.4 Electronic gear (EG) $MC_AXCONF_MACHAX_USED[2]=3 $MN_AXCONF_MACHAX_NAME_TAB[2] = "Z1" $MA_SPIND_ASSIGN_TO_MACHAX[AX3] = 0 $MA_IS_ROT_AX[AX3] = FALSE ; *************** Axis 4, "A" $MC_AXCONF_CHANAX_NAME_TAB[3] = "A" $MC_AXCONF_MACHAX_USED[3]=4 $MN_AXCONF_MACHAX_NAME_TAB[3] = "A1" $MA_SPIND_ASSIGN_TO_MACHAX[AX4]=0 $MA_IS_ROT_AX[AX4] = TRUE $MA_ROT_IS_MODULO[AX4] = TRUE ; *************** Axis 5, "B" $MC_AXCONF_CHANAX_NAME_TAB[4] = "B"...
  • Page 492: Generic Coupling

    M3: Coupled axes 14.5 Generic coupling 14.5 Generic coupling 14.5.1 Brief description 14.5.1.1 Function Function "Generic Coupling" is a general coupling function, combining all coupling characteristics of existing coupling types (coupled motion, master value coupling, electronic gearbox and synchronous spindle). The function allows flexible programming: ●...
  • Page 493 M3: Coupled axes 14.5 Generic coupling If sequential operation of 1 x synchronous spindle pair for part transfer from the main to the supplementary spindle and the 1 x multi-edge turning is required, then the CP-BASIC variant is suitable and sufficient. However, if it cannot be excluded that both operations can overlap (multi-edge turning running when part transfer is started), the CP-COMFORT variant would be required.
  • Page 494 M3: Coupled axes 14.5 Generic coupling Type A Type B Type C Type D Type E Maximum number of master values From part program and synchronous actions Superimposition / speed difference permitted Cascading permitted Coordinate reference fix (CPFRS="MCS") COUP - synchronous spindle/multi-edge turning Maximum number of synchronous spindles / multi-edge turning with the following properties: →...
  • Page 495: Fundamentals

    M3: Coupled axes 14.5 Generic coupling Type A Type B Type C Type D Type E BCS / BCS / Coordinate reference (default: CPFRS="BCS") Non-linear coupling law (CPLCTID) permitted Refer to " Coupling types (CPSETTYPE) ". Note Existing coupling options (Master value coupling, Electronic gearbox and Synchronous spindle) are not taken into consideration by generic coupling.
  • Page 496 M3: Coupled axes 14.5 Generic coupling Total setpoint value of the following axis Total Setpoint value set in part program = independent motion component of the following axis Dependent motion component of leading axis 1 DEP1 Dependent motion component of leading axis 2 DEP2 Setpoint or actual value of the 1st leading axis Setpoint or actual value of the 2nd leading axis...
  • Page 497: Keywords And Coupling Characteristics

    M3: Coupled axes 14.5 Generic coupling The independent motion component of the following axis can be programmed with the full range of available motion commands. 14.5.2.2 Keywords and coupling characteristics Keywords Programming is done via language commands, e.g. coupled motion with TRAILON(X,Y,2). Keywords replace the language commands in generic coupling.
  • Page 498 M3: Coupled axes 14.5 Generic coupling Overview of all keywords and coupling characteristics The following table gives an overview of all keywords of the generic coupling and the programmable coupling characteristics: Keyword Coupling characteristics / meaning Default setting (CPSET‐ TYPE="CP") Creating a coupling module CPDEF Deletion of a coupling module...
  • Page 499: System Variables

    M3: Coupled axes 14.5 Generic coupling Keyword Coupling characteristics / meaning Default setting (CPSET‐ TYPE="CP") Threshold value of position synchronism "Coarse" MD37200 CPSYNCOP Threshold value of position synchronism "Fine" MD37210 CPSYNFIP Second threshold value for the "Coarse" position MD37202 CPSYNCOP2 synchronism Second threshold value for the "Fine"...
  • Page 500: Creating/Deleting Coupling Modules

    M3: Coupled axes 14.5 Generic coupling The first letter of the prefix defines the access location when reading: System variable prefix Access location during read Features $PA_CP Reading of channel referenced axis Use in synchronous actions is not specific coupling characteristics in possible.
  • Page 501: Delete Coupling Module (Cpdel)

    M3: Coupled axes 14.5 Generic coupling Range of values: All defined axis and spindle names in the channel Example: Programming Comment CPDEF=(X2) ; A coupling module is created with axis X2 as following axis. Boundary conditions ● The maximum number of coupling modules is limited (see Section "Requirements"). ●...
  • Page 502: Defining Leading Axes (Cpldef Or Cpdef+Cpla)

    M3: Coupled axes 14.5 Generic coupling Boundary conditions ● The switch command CPDEL results in a preprocessing stop with active coupling. Exception: CPSETTYPE="COUP" does not result in a preprocessing stop. ● Applying CPDEL to a coupling module active in the block preparation results in implicit deactivation of this coupling.
  • Page 503: Delete Leading Axes (Cpldel Or Cpdel+Cpla)

    M3: Coupled axes 14.5 Generic coupling Range of values: All defined axis and spindle names in the channel Example: Programming Comment CPDEF=(X2) CPLA[X2]=(X1) ; Definition of leading axis X1 for following axis Boundary conditions ● CPLDEF is only allowed in blocks without CPDEF/CPON/CPOF/CPDEL. (This limitation applies to the case where the keywords refer to the same coupling module.) ●...
  • Page 504: Switching Coupling On/Off

    M3: Coupled axes 14.5 Generic coupling Example: Programming Comment CPLDEL[X2]=(X1) ; Deletion of leading axis X1 of the coupling to following axis X2. Programming with CPLA and CPDEL Syntax: CPLA[FAx]= (<leading axis/spindle>) Designation: Coupling Lead Axis Functionality: Deleting a leading axis/spindle: The leading axis/spindle module will be deleted and the corresponding memory will be released.
  • Page 505: Switch Off Coupling Module (Cpof)

    M3: Coupled axes 14.5 Generic coupling Without programming, a coupled motion group or a synchronous spindle pair becomes effective based on a setpoint coupling (default setting for CPLSETVAL) with the coupling rule 1:1 (default setting for CPLNUM/CPLDEN). Programming Syntax: CPON= (<following axis/spindle>) Designation: Coupling On Functionality:...
  • Page 506: Switching On Leading Axes Of A Coupling Module (Cplon)

    M3: Coupled axes 14.5 Generic coupling Range of values: All defined axis and spindle names in the channel Example: Programming Comment CPOF=(X2) ; Deactivation of coupling of following axis X2. Boundary conditions ● The switch command CPOF results in a preprocessing stop with active coupling. Exception: CPSETTYPE="COUP"...
  • Page 507: Switching Off Leading Axes Of A Coupling Module (Cplof)

    M3: Coupled axes 14.5 Generic coupling 14.5.4.4 Switching off leading axes of a coupling module (CPLOF) CPLOF deactivates the coupling of a leading axis to a following axis. If several leading axes are defined for a coupling module, they can be deactivated separately with CPLOF. Programming Syntax: CPLOF[FAx]= (<leading axis/spindle>)
  • Page 508: Programming Coupling Characteristics

    M3: Coupled axes 14.5 Generic coupling Constraints ● Implicitly created coupling modules (via switch-on commands) are deleted once they are completely deactivated (CPOF). Advantage: Deleting them with CPDEL/CPLDEL is not necessary. Disadvantage (possibly): All coupling properties which were set with CPOF are lost. ●...
  • Page 509 M3: Coupled axes 14.5 Generic coupling Example: Programming Comment CPLNUM[X2,X1]=1.3 ; The numerator of the coupling factor of the coupling of the following axis X2 to the leading axis X1 must be 1.3. Denominator of the coupling factor Syntax: CPLDEN[FAx,LAx]= <value> Designation: Coupling Lead Denominator Functionality:...
  • Page 510: Coupling Relationship (Cplsetval)

    M3: Coupled axes 14.5 Generic coupling Range of values: -2 to +2 Example: Programming Comment CPLCTID[X2,X1]=5 ; The leading axis specific coupling component of the cou- pling of the following axis X2 to the leading axis X1 is calculated with curve table No. 5. Supplementary conditions ●...
  • Page 511: Co-Ordinate Reference (Cpfrs)

    M3: Coupled axes 14.5 Generic coupling Coupling reference: Type: STRING Range of values: "CMDPOS" Commanded Position Setpoint value coupling "CMDVEL" Commanded Velocity Speed coupling "ACTPOS" Actual Value Actual value coupling Default value: "CMDPOS" Example: Programming Comment CPLSETVAL[X2,X1]="CMDPOS" ; The coupling of following axis X2 to leading ax- is X1 is deducted from the setpoint.
  • Page 512: Block Change Behavior (Cpbc)

    M3: Coupled axes 14.5 Generic coupling ”MCS” Machine Coordinate System Machine coordinate system Default value: ”BCS” Example: Programming Comment CPFRS[X2]="BCS" ; The base co-ordinate system is the co-ordinate reference for the coupling module with following axis X2. Constraints ● Co-ordinate reference has to be specified when creating a coupling module, else the default value is used.
  • Page 513 M3: Coupled axes 14.5 Generic coupling "IPOSTOP" Block change is performed with setpoint synchronism. "COARSE" Block change is performed with actual value syn‐ chronism “coarse”. "FINE" Block change is performed with actual value syn‐ chronism “fine”. Default value: "NOC" Example: Programming Comment CPBC[X2]="IPOSTOP"...
  • Page 514: Synchronized Position Of The Following Axis When Switching On (Cpfpos+Cpon)

    M3: Coupled axes 14.5 Generic coupling Example: Programming Comment WAITC(X2,"IPOSTOP") ; Block change during processing of the part program is done with setpoint synchronism (with active coupling to following axis X2). Constraints WAITC can only occur singularly in a block, contrary to the keyword CPBC. 14.5.5.5 Synchronized position of the following axis when switching on (CPFPOS+CPON) When switching on the coupling (CPON) approach of the following axis can be programmed for...
  • Page 515: Synchronized Position Of The Leading Axis When Switching On (Cplpos)

    M3: Coupled axes 14.5 Generic coupling ● If the synchronized position of the following axis is not set during switch on, then the current position of the following axis takes effect as synchronized position. The program instruction IC can be used to move the current position. ●...
  • Page 516: Synchronization Mode (Cpfmson)

    M3: Coupled axes 14.5 Generic coupling Constraints ● CPFPOS can only set with the switch-on command CPON / CPLON. CPFPOS without switch-on command results in an alarm. ● If the synchronized position of the leading axis is not set with the switch on command (CPON), then the current position of the leading axis takes effect as synchronized position and therefore as zero point of the input variable.
  • Page 517 M3: Coupled axes 14.5 Generic coupling "CCOARSE" Closed If Gab Coarse The coupling is only closed when the following axis posi‐ tion, required according to the coupling rule, is in the range of the current following axis position. "NTGT" Next Tooth Gap Time The next tooth gap is ap‐...
  • Page 518: Behavior Of The Following Axis At Switch-On (Cpfmon)

    M3: Coupled axes 14.5 Generic coupling Example: Programming Comment CPFMSON[X2]="CFAST" ; CFAST is taken as synchronization mode of the coupling to following axis X2. 14.5.5.8 Behavior of the following axis at switch-on (CPFMON) The behavior of the following axis/spindle during switch-on of the coupling can be programmed with the keyword CPFMON.
  • Page 519: Behavior Of The Following Axis At Switch-Off (Cpfmof)

    M3: Coupled axes 14.5 Generic coupling Example: Programming Comment CPFMON[X2]="CONT" ; The current motion of following axis X2 is taken over as start motion. 14.5.5.9 Behavior of the following axis at switch-off (CPFMOF) The behavior of the following axis/spindle during complete switch-off of an active coupling can be programmed with the keyword CPFMOF.
  • Page 520: Condition At Reset (Cpmreset)

    M3: Coupled axes 14.5 Generic coupling Programming Syntax: CPOF=(FAx) CPFPOS[FAx]= <value> Functionality: Defines the switch-off position of the following axis FAx. Value: Type: REAL Range of values: All positions within the traverse range boundaries Example: Programming Comment CPOF=(X2) CPFPOS[X2]=100 ; Deactivation of coupling to following axis X2. 100 is approached as switch-off position of the fol- lowing axis.
  • Page 521: Condition At Parts Program Start (Cpmstart)

    M3: Coupled axes 14.5 Generic coupling "ON" When the appropriate coupling module is created, the coupling is switched on. All defined leading axis rela‐ tionships are activated. This is also performed when all or parts of these leading axis relationships are active, i.e.
  • Page 522 M3: Coupled axes 14.5 Generic coupling Programming Syntax: CPMSTART[FAx]= <value> Identifiers: Coupling Mode Start Functionality: Defines the behavior of a coupling at part program start. Value: Type: STRING Range of values: "NONE" The current state of the coupling is retained. "ON"...
  • Page 523: Status During Part Program Start In Search Run Via Program Test (Cpmprt)

    M3: Coupled axes 14.5 Generic coupling 14.5.5.13 Status during part program start in search run via program test (CPMPRT) When starting the part program under block search run via program test (SERUPRO), the coupling can be activated, deactivated or the current status can be retained. The behavior can be set separately for each coupling module.
  • Page 524: Offset / Scaling (Cplintr, Cplinsc, Cplouttr, Cploutsc)

    M3: Coupled axes 14.5 Generic coupling Supplementary conditions ● The coupling characteristics set with CPMPRT is retained until the coupling module is deleted with (CPDEL). ● If CPMPRT="NONE" is set, then the response when the part program starts under block search run via program test (SERUPRO) is defined by CPMSTART.
  • Page 525 M3: Coupled axes 14.5 Generic coupling Functionality: Defines the offset value for the input value of the LAx leading axis. Value: Type: REAL Default value: Example: Programming Comment CPLINTR[X2,X1]=-50 ; The input value of the leading axis X1 is moved in the negative direction by the value 50.
  • Page 526 M3: Coupled axes 14.5 Generic coupling Scaling of the output value Syntax: CPLOUTSC[FAx,LAx]= <value> Designation: Coupling Lead Out Scale Factor Functionality: Defines the scaling factor for the output value of coupling the following axis FAx with leading axis LAx. Value: Type: REAL Default value:...
  • Page 527: Synchronism Monitoring Stage 1 (Cpsyncop, Cpsynfip, Cpsyncov, Cpsynfiv)

    M3: Coupled axes 14.5 Generic coupling 14.5.5.15 Synchronism monitoring stage 1 (CPSYNCOP, CPSYNFIP, CPSYNCOV, CPSYNFIV) Synchronism monitoring stage 1 In each interpolator clock cycle, the synchronous operation of the coupling group is monitored – both on the setpoint and actual value sides. The synchronous operation monitoring responds as soon as the synchronous operation difference (the difference between the setpoint or actual value of the following axis and the value calculated from the setpoints or actual values of the leading axes according to the coupling rule) reaches one of the following programmed...
  • Page 528 M3: Coupled axes 14.5 Generic coupling Status of the coupling during synchronous operation State Description Not synchronized Provided the synchronous operation difference is greater than the threshold value for position "coarse" synchronous operation or "coarse" speed synchronous operation, the coupled group is des‐ ignated as non-synchronous.
  • Page 529 M3: Coupled axes 14.5 Generic coupling Configuration The threshold values for the first stage of the synchronous operation monitoring will be adjusted: ● For setpoint / actual value coupling in the machine data: – MD37200 $MA_COUPLE_POS_TOL_COARSE (threshold value for "coarse synchronism") –...
  • Page 530 M3: Coupled axes 14.5 Generic coupling Threshold value of "Coarse" speed synchronous operation Syntax: CPSYNCOV[FAx]= <value> Designation: Coupling Synchronous Difference Coarse Velocity Functionality: Defines the threshold value for the "Coarse'' speed synchronous oper‐ ation. Value: Type: REAL The default value corresponds to the setting in the machine data: MD37220 $MA_COUPLE_VELO_TOL_COARSE [FAx] Threshold value of "Fine"...
  • Page 531: Synchronous Operation Monitoring Stage 2 (Cpsyncop2, Cpsynfip2)

    M3: Coupled axes 14.5 Generic coupling Supplementary conditions ● When considering the synchronous operation difference, an active coupling cascade is not taken into account. This means: if in the considered coupling module, the leading axis is a following axis in another coupling module, the current actual or setpoint position is still used as input variable for the calculation of the synchronous operation difference.
  • Page 532 M3: Coupled axes 14.5 Generic coupling MD37212 $MA_COUPLE_POS_TOL_FINE_2 (second threshold value for "fine synchronous operation") Note If the appropriate threshold value = 0, the associated monitoring is inactive. This is also the default value so that the compatibility with older software versions is retained. Programming CP keywords can also be used to program the threshold values for the second stage of the synchronous operation monitoring:...
  • Page 533 M3: Coupled axes 14.5 Generic coupling Sequence Starting The second stage of the synchronous operation monitoring function starts with active coupling as soon as the following conditions are fulfilled: ● The setpoint synchronous operation is reached: DB31, ... DBX99.4 (synchronization running) = 0 ●...
  • Page 534 M3: Coupled axes 14.5 Generic coupling ● For coupled block changes (CPLNUM, CPLDEN, CPLCTID) in synchronized actions ● Resetting the setpoint synchronous operation because of missing enable signals for the following spindle (emergency stop, alarm responses) The DB31, ... DBX103.4/5 signals are reset when the monitoring is ended. Boundary conditions Exclusion conditions No monitoring is performed in the following cases:...
  • Page 535: Reaction To Stop Signals And Commands (Cpmbrake)

    M3: Coupled axes 14.5 Generic coupling 14.5.5.17 Reaction to stop signals and commands (CPMBRAKE) The response of the following axis to certain stop signals and commands can be defined with the CP keyword CPMBRAKE. Programming Syntax: CPMBRAKE[FAx]= <value> Designation: Coupling Mode Brake Functionality: CPMBRAKE is a bit-coded CP keyword that defines the braking behavior of the following axis FAx for the following events:...
  • Page 536: Response To Certain Nc/Plc Interface Signals (Cpmvdi)

    M3: Coupled axes 14.5 Generic coupling Example 2: Programming Comment CPDEF=(S2) CPLA[S2]=(S1) Definition of a spindle coupling: Leading spindle S1 with following spindle S2 CPON=(S2) CPMBRAKE[S2]=1 Activation of the coupling with following spindle S2. NST "feed stop / spindle stop" or "CP SW limit stop"...
  • Page 537 M3: Coupled axes 14.5 Generic coupling Meaning Reserved. Reserved. Reserved. The effect of NC/PLC interface signal DB31, ... DBX1.3 (axis/spindle disable) on the following axis/spindle can be set via bit 3: Bit 3 = 0 DB31, ... DBX1.3 has no effect on the following axis/ spindle.
  • Page 538 M3: Coupled axes 14.5 Generic coupling the axis/spindle disable is not imposed on the following axis/spindle. Note: When bit 5 is set, the program test state still has an effect on the following axis/spindle, even if the leading axes/spindles have a dif‐ ferent state.
  • Page 539 M3: Coupled axes 14.5 Generic coupling A/S disable A/S disable A/S disable CPMVDI CPMVDI Meaning Total Bit 3/5 Bit 4/6 for FA Alarm 16773, different lead‐ ing axis states with ref. to the A/S disable Real move‐ ment, FA spin‐ DEP1 dle disable has DEP2...
  • Page 540: Alarm Suppression (Cpmalarm)

    M3: Coupled axes 14.5 Generic coupling Real movement: Real movement means that positioning movements are trans‐ ferred to the position control. Simulated movement: Simulated movement means that no positioning movements are transferred to the position control. The real machine axis re‐ mains stationary.
  • Page 541: Coupling Cascading

    M3: Coupled axes 14.5 Generic coupling Functionality: CPMALARM is a bit-coded CP keyword for suppressing special coupling- related alarm outputs. The bit combination operators B_OR, B_AND, B_NOT, and B_XOR can be used to set individual bits. Value Meaning Alarm 16772 is suppressed. Alarm 16773 is suppressed.
  • Page 542: Compatibility

    M3: Coupled axes 14.5 Generic coupling Multiple coupling cascades in series is also possible. The internal computation sequence of the individual coupling modules is performed so that there is no position offset in the coupling relationship. This also applies for a cross-channel cascading. Example: Two new coupling modules are created.
  • Page 543: Coupling Types (Cpsettype)

    M3: Coupled axes 14.5 Generic coupling Coupling commands Adaptive cycle LEADOF cycle703 COUPDEF cycle704 COUPON cycle705 COUPONC cycle706 COUPOF cycle707 COUPOFS cycle708 COUPDEL cycle709 COUPRES cycle710 EGDEF cycle711 EGON cycle712 EGONSYN cycle713 EGONSYNE cycle714 EGOFC cycle715 EGOFS cycle716 EGDEL cycle717 Storage location Adaptive cycles are stored in the directory "CST".
  • Page 544 M3: Coupled axes 14.5 Generic coupling Programming Syntax: CPSETTYPE[FAx]= <value> Designation: Coupling Set Type Functionality: Defines the presettings of coupling characteristics (coupling type). Value: Type: STRING Range of values: "CP" Freely programmable "TRAIL" Coupling type "Coupled motion" "LEAD" Coupling type "Master Value Coupling" "EG"...
  • Page 545 M3: Coupled axes 14.5 Generic coupling Keyword Coupling type Default Coupled motion Master value cou‐ Electronic gear Synchronous spin‐ (CP) (TRAIL) pling (EG) (LEAD) (COUP) CPLON CPLOF CPLNUM CPLDEN CPLCTID Not set Not set CPLSETVAL CMDPOS CMDPOS CMDPOS CMDPOS CMDPOS CPFRS CPBC FINE...
  • Page 546 M3: Coupled axes 14.5 Generic coupling Keyword Coupling type Default Coupled motion Master value cou‐ Electronic gear Synchronous spin‐ (CP) (TRAIL) pling (EG) (LEAD) (COUP) CPMVDI Bit 3 Bit 4 Bit 5 Bit 6 CPMALARM MD11410 MD11410 MD11410 MD11410 MD11410 MD11415 MD11415 MD11415...
  • Page 547 M3: Coupled axes 14.5 Generic coupling Default Coupled motion Master value cou‐ Electronic gear Synchronous spindle (CP) (TRAIL) pling ( (EG) (COUP) LEAD) Implicit selec‐ tion/deselection of state control Legend: also refer to: Function Manual, Extended Functions; Synchronous Spindle (S3) - not relevant or not allowed Availability of the specified characteristics depends on the available version (see Section "Requirements").
  • Page 548: Projected Coupling (Cpres)

    M3: Coupled axes 14.5 Generic coupling CPSETTYPE= TRAIL LEAD COUP CPFRS Alarm 16686 with BCS CPBC Alarm 16686 Alarm 16686 CPFPOS + CPON Alarm 16686 Alarm 16686 CPFPOS + CPOF Alarm 16686 Alarm 16686 Alarm 16686 CPFMSON Alarm 16686 Alarm 16686 Alarm 16686 CPFMON Alarm 16686...
  • Page 549: Cross-Channel Coupling, Axis Replacement

    M3: Coupled axes 14.5 Generic coupling Value range: All defined spindle names in the channel Example: Programming Comment CPLON[S2]=(S1) CPSETTYPE[S2]="COUP" ; Creates a coupling module for follow- ing spindle S2 with leading spindle S1 and activates the coupling module. Cou- pling properties are set such that they correspond to the existing synchronous spindle coupling type.
  • Page 550: Behavior With Rotary Axes

    M3: Coupled axes 14.5 Generic coupling 14.5.9 Behavior with rotary axes Rotary axes as leading or following axes It is possible to couple rotary axes to a linear axis and vice versa. Note that a direct assignment of degrees to mm must be performed using the coupling rule. Example: A = Rotary axis, X = Linear axis Programming...
  • Page 551: Behavior During Power On

    M3: Coupled axes 14.5 Generic coupling Programming Comment N60 A=ACP(80) ; A traverses in the positive di- rection to 50 degrees, the tra- versing path is 300 degrees in the positive direction. X traver- ses correspondingly by 150 mm in the positive direction.
  • Page 552: Cp Sw Limit Monitoring

    M3: Coupled axes 14.5 Generic coupling RESET The behavior on RESET can be set separately for each coupling module (see CPMRESET). The coupling can be activated, deactivated or the current state can be retained. Mode change The coupling remains active during a mode change. The coupling is suppressed (not deselected!) only in JOG-REF mode when referencing a following axis.
  • Page 553 M3: Coupled axes 14.5 Generic coupling Availability The "CP SW limit monitoring" function can only be activated for following axes from: ● Generic couplings, type "Freely programmable (CPSETTYPE[FAx] = "CP") ● Couplings (generic coupling with CPSETTYPE[FAx] not equal to "CP", coupled motion, electronic gearbox, master value coupling or synchronous spindle) with a maximum of one active leading axis/spindle In all other cases (and when "CP SW limit monitoring"...
  • Page 554: Parameterization

    M3: Coupled axes 14.5 Generic coupling When braking, the stop state 75 "brake request" and situation-dependent, the higher priority stop states 22 "wait: spindle enable missing", 12 "wait for axis/spindle release" or 71 "wait for enable, transformation axis" are displayed. If the following axis is stationary as result of the "CP-SW limit stop", and cannot approach the software limit switch any closer, then the following alarm is displayed: 10625 "%?C{channel %1: %}block %3 following axis/spindle %2 with CP-SW limit stop %4"...
  • Page 555: Programming

    M3: Coupled axes 14.5 Generic coupling MD30455 $MA_MISC_FUNCTION_MASK (axis functions) Value Meaning CP SW limit monitoring is not active. CP SW limit monitoring is active. 14.5.11.3 Programming Transferring the brake to the leading axes For generic couplings, type "freely programmable" (CPSETTYPE[FAx] = "CP"), by programming the coupling property CPMBRAKE (see "Reaction to stop signals and commands (CPMBRAKE) (Page 535)") it can be set as to whether the brake of the following axis, initiated using the "CP-SW limit monitoring"...
  • Page 556: Examples

    M3: Coupled axes 14.5 Generic coupling Braking response for transformations If the axis to be braked is the output of a transformation, and it has a (MCS) travel command in the collision direction, then the brake is transferred to all input axes of the transformation in both directions, and a path stop is executed for this transformation.
  • Page 557: Disturbance Characteristic

    M3: Coupled axes 14.5 Generic coupling Example 2: Couplings with a maximum of one active leading axis/spindle With the following calls, the CP-SW limit monitoring is executed – including the transfer of the brake to the leading axis – if MD30455 MA_MISC_FUNCTION_MASK[AX2] bit 11 is set: TRAILON(Y,X,0.5) ;...
  • Page 558: Tracking The Deviation From Synchronism

    M3: Coupled axes 14.5 Generic coupling Response of the following spindle If a rapid stop is detected for a leading spindle and the following spindle does not execute any rapid stop by itself, then the following spindle tries to follow the dynamics of the movement of the leading spindle defined within its framework.
  • Page 559: Measuring The Deviation From Synchronism

    M3: Coupled axes 14.5 Generic coupling Requirement A coupling closed via the part/chuck must be in place in order to use this function. Versions There are two different options for determining the deviation from synchronism: 1. The deviation from synchronous operation is determined by the NC (see "Measuring the deviation from synchronism (Page 559)").
  • Page 560 M3: Coupled axes 14.5 Generic coupling Requirements The following requirements must be met to enable the controller to calculate the correction value: ● Requirements if the set coupling type is "synchronous spindle" (CPSETTYPE="COUP"): – The coupling has precisely one leading spindle (requirement is met if CPSETTYPE="COUP").
  • Page 561 M3: Coupled axes 14.5 Generic coupling The signal only has an effect on the following spindle. Note In the following cases, signal DB31, ... DBX31.6 (track synchronism) is ignored: ● Axis/spindle disable is active (DB31, ... DBX1.3 = 1). ● Program test is selected. ●...
  • Page 562: Entering The Deviation From Synchronism Directly

    M3: Coupled axes 14.5 Generic coupling $AA_COUP_CORR[S<n>] (following spindle: correction value for synchronous spindle coupling) Note You must ensure that the velocity of the leading and following axes is kept as constant as possible and that no acceleration jump occurs for the duration of the measurement. Example When the coupling of the synchronous spindle [S2] is activated, a position offset of 77 degrees is also programmed:...
  • Page 563: Diagnostics For Synchronism Correction

    M3: Coupled axes 14.5 Generic coupling The correction value is incorporated into the setpoint value calculation for the following spindle, in the coupling module. Resetting the setpoint by the coupling offset relieves the tension between the leading and following spindles. The synchronism signals are produced by comparing the actual values with the corrected setpoints.
  • Page 564: Resetting Synchronism Correction

    M3: Coupled axes 14.5 Generic coupling 14.5.13.6 Resetting synchronism correction Versions Synchronism correction can be reset in the following ways: ● Writing value "0" to variable $AA_COUP_CORR[S<n>]. Synchronism correction is suppressed via a ramp with reduced accelerating power (just as when a correction value is implemented).
  • Page 565: Limitations And Constraints

    M3: Coupled axes 14.5 Generic coupling Figure 14-13 Time diagram for synchronizing and resetting synchronism correction Note If the correction path has not been traversed in full and the NC/PLC interface signal DB31, ... DBX31.7 (reset synchronism correction) has not been reset, writing to variable $AA_COUP_CORR[S<n>] will not have any effect.
  • Page 566 M3: Coupled axes 14.5 Generic coupling Correction value If the correction value $AA_COUP_CORR is being written via a part program/synchronized action, as well as being determined due to the "track the deviation from synchronism" function being activated (DB31, ... DBX31.6 = 1), the most recent event to occur is always the one that takes effect.
  • Page 567: Examples

    M3: Coupled axes 14.5 Generic coupling 14.5.14 Examples 14.5.14.1 Programming examples Direct switch on/off with one leading axis A coupling module is created and activated with following axis X2 and leading axis X1. The coupling factor is 2. CPON=(X2) CPLA[X2]=(X1) CPLNUM[X2,X1]=2 CPOF=(X2) ;...
  • Page 568: Adapt Adaptive Cycle

    M3: Coupled axes 14.5 Generic coupling N40 CPLON[X2]=(X1) ; Leading axis X1 is activated, only this axis supplies a coupling component. Leading axes Z and A remain deactivated. N50 CPLON[X2]=(A) ; Leading axis X1 remains active, leading axis A is deactivated, X1 and A contrib- ute coupling components (→...
  • Page 569: Dynamic Response Of Following Axis

    M3: Coupled axes 14.6 Dynamic response of following axis Figure 14-14 Cycle 700 after adaption. Changes are indicated by a colored bar. 14.6 Dynamic response of following axis 14.6.1 Parameterized dynamic limits The dynamics of the following axis is limited with the following machine data values: MD32000 $MA_MAX_AX_VELO (maximum axis velocity) MD32300 $MA_MAX_AX_ACCEL (Maximum axis acceleration) Axes and spindles...
  • Page 570: Programmed Dynamic Limits

    M3: Coupled axes 14.6 Dynamic response of following axis 14.6.2 Programmed dynamic limits 14.6.2.1 Programming (VELOLIMA, ACCLIMA) Reducing or increasing dynamics limits The dynamic limits of the following axis (FA) specified through MD32000 and MD32300 can be reduced or increased from the part program: Command Meaning Reducing or increasing the maximum Axis velocity...
  • Page 571 M3: Coupled axes 14.6 Dynamic response of following axis Synchronization between following and leading axes The acceleration characteristics set and the dynamics offsets set change the duration for synchronization between following and leading axes during acceleration operations as follows: Dynamic offset Effect Dynamic reduction Prolongs the synchronism difference.
  • Page 572: Examples

    M3: Coupled axes 14.6 Dynamic response of following axis MD22410 $MC_F_VALUES_ACTIVE_AFTER_RESET (F Function is active even after RESET) Value Meaning The values of VELOLIMA[FA] and ACCLIMA[FA] are set to 100% after RESET. The last programmed values of VELOLIMA[FA] and ACCLIMA[FA] are also active after RESET.
  • Page 573: System Variables

    M3: Coupled axes 14.7 General supplementary conditions Master value coupling with synchronized action Axis 4 is coupled to X via a master value coupling. The acceleration response is limited to position 80% by static synchronized action 2 from position 100. N120 IDS=2 WHENEVER $AA_IM[AX4] >...
  • Page 574: Data Lists

    M3: Coupled axes 14.8 Data lists 14.8 Data lists 14.8.1 Machine data 14.8.1.1 NC-specific machine data Number Identifier: $MN_ Description 11410 SUPPRESS_ALARM_MASK Screen form for suppressing special alarm outputs 11415 SUPPRESS_ALARM_MASK_2 Suppress alarm outputs 11660 NUM_EG Number of possible electronic gears 11750 NCK_LEAD_FUNCTION_MASK Functions for master value coupling...
  • Page 575: Axis/Spindlespecific Machine Data

    M3: Coupled axes 14.8 Data lists 14.8.1.3 Axis/spindlespecific machine data Number Identifier: $MA_ Description 30130 CTRLOUT_TYPE Setpoint output type 30132 IS_VIRTUAL_AX Axis is virtual axis 30455 MISC_FUNCTION_MASK Axis functions 35040 SPIND_ACTIVE_AFTER_RESET Own spindle RESET 37160 LEAD_FUNCTION_MASK Functions for master value coupling 37200 COUPLE_POS_TOL_COARSE Threshold value for "Coarse synchronous operation"...
  • Page 576 M3: Coupled axes 14.8 Data lists Identifier Meaning $AA_EG_DENOM Numerator of the coupling factor for leading axis b $AA_EG_NUMERA Numerator of the coupling factor for leading axis b $AA_EG_NUMLA Number of leading axes defined with EGDEF $AA_EG_SYN Synchronized position of leading axis b $AA_EG_SYNFA Synchronous position of following axis a $AA_EG_TYPE...
  • Page 577 M3: Coupled axes 14.8 Data lists Identifier Meaning $AA_CPLSETVAL Coupling reference of the leading axis $AA_CPLSTATE State of the coupling $AA_CPSYNCOP Threshold value of position synchronism "Coarse" (main run) $AA_CPSYNCOV Threshold value of velocity synchronism "Coarse" (main run) $AA_CPSYNFIP Threshold value of position synchronism "Fine" (main run) $AA_CPSYNFIV Threshold value of velocity synchronism "Fine"...
  • Page 578 M3: Coupled axes 14.8 Data lists Identifier Meaning $PA_CPSYNCOP Threshold value of position synchronism "Coarse" (pre-processing) $PA_CPSYNCOV Threshold value of velocity synchronism "Coarse" (pre-processing) $PA_CPSYNFIP Threshold value of position synchronism "Fine" (pre-processing) $PA_CPSYNFIV Threshold value of velocity synchronism "Fine" (pre-processing) $PA_CPLINSC Scaling factor of the input value of a leading axis (pre-processing) $PA_CPLINTR...
  • Page 579: P5: Oscillation

    P5: Oscillation 15.1 Brief description Definition When the "Oscillation" function is selected, an oscillation axis oscillates backwards and forwards at the programmed feedrate or a derived feedrate (revolutional feedrate) between two reversal points. Several oscillation axes can be active at the same time. Oscillation variants Oscillation functions can be classified according to the axis response at reversal points and with respect to infeed:...
  • Page 580: Asynchronous Oscillation

    P5: Oscillation 15.2 Asynchronous oscillation ● The feedrate velocity of the oscillation axis can be altered through a value input in the NC program, PLC, HMI or via an override. The feedrate can be programmed to be dependent on a master spindle, rotary axis or spindle (revolutional feedrate). Further information V1: Feedrates (Page 125) ●...
  • Page 581: Influences On Asynchronous Oscillation

    P5: Oscillation 15.2 Asynchronous oscillation ● The oscillating axis can be an input axis for transformations (e.g. inclined axis, see Function Manual "Transformations", Section "Kinematics transformation"). ● The oscillation axis can act as the master axis for gantry and coupled motion axes. Further information G1: Gantry axes (Page 259) ●...
  • Page 582 P5: Oscillation 15.2 Asynchronous oscillation Revolutional feedrate The reversal feed can also be used for oscillation axes. Reversal points The positions of the reversal points can be entered via setting data before an oscillation movement is started or while one is in progress. ●...
  • Page 583 P5: Oscillation 15.2 Asynchronous oscillation Deactivate oscillation One of the following options can be set for termination of the oscillation movement when oscillation mode is deactivated: ● Termination of oscillation movement at the next reversal point ● Termination of oscillation movement at reversal point 1 ●...
  • Page 584 P5: Oscillation 15.2 Asynchronous oscillation NC language The NC programming language allows asynchronous oscillation to be controlled from the part program. The following functions allow asynchronous oscillation to be activated and controlled as a function of NC program execution. Note If the setting data is directly written in the part program, then the data change takes effect prematurely with respect to processing of the part program (at the preprocessing time).
  • Page 585 P5: Oscillation 15.2 Asynchronous oscillation 4) Stopping times at reversal points: ● OST1[oscillation axis] = stop time at reversal point 1 in [s] ● OST2[oscillation axis] = stop time at reversal point 2 in [s] A stop time is entered into the appropriate setting data in synchronism with the block in the main run and thus remains effective until the setting data is next changed.
  • Page 586 P5: Oscillation 15.2 Asynchronous oscillation Example: The oscillation movement for axis Z must stop at reversal point 1 on deactivation; an end position must then be approached and a newly programmed feedrate take immediate effect; the axis must stop immediately after deletion of distance-to-go. OSCTRL[Z] = (1+4, 16+32+64) The set/reset options are entered into the appropriate setting data in synchronism with the block in the main run and thus remain effective until the setting data is next changed.
  • Page 587: Asynchronous Oscillation Under Plc Control

    P5: Oscillation 15.2 Asynchronous oscillation 15.2.3 Asynchronous oscillation under PLC control Activation The function can be selected from the PLC using the following setting data in all operating modes except for MDA Ref and JOG Ref.: SD43780 OSCILL_IS_ACTIVE (switch-on oscillation motion) Settings The following criteria can be controlled from the PLC via setting data: Activation and deactivation of oscillation movement, positions of reversal points, stop times at reversal points,...
  • Page 588 P5: Oscillation 15.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 ●...
  • Page 589 P5: Oscillation 15.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 590: Oscillation Controlled By Synchronized Actions

    P5: Oscillation 15.3 Oscillation controlled by synchronized actions Block search In Block Search the last valid oscillation function is registered and the machine data OSCILL_MODE_MASK is activated (default) accordingly, either directly after NC start (when approaching the start position after block search) or after reaching the start position after block search.
  • Page 591 P5: Oscillation 15.3 Oscillation controlled by synchronized actions 5. Enable oscillation movement (see Section "Oscillation movement restarting (Page 597)"). 6. Do not start partial infeed too early (see Section "Do not start partial infeed too early (Page 598)"). Reversal point 1 Reversal point 2 Reversal range 1 Reversal range 2...
  • Page 592 P5: Oscillation 15.3 Oscillation controlled by synchronized actions ● Conditions for motion-synchronized actions (frequency WHEN / WHENEVER) ● Activation through motion block – Assign oscillation axis and infeed axes to one another OSCILL – Specify infeed response POSP Note By setting the axial override in the action component of the motion-synchronized action to zero (DO $AA_OVR[<axis>]=0), then the oscillating/infeed axis can be stopped if the associated condition (frequency WHEN / WHENEVER) is fulfilled.
  • Page 593: Infeed At Reversal Point 1 Or 2

    P5: Oscillation 15.3 Oscillation controlled by synchronized actions Program code Comment OS[Z]=0 ; Deactivate oscillation Example 2: changing reversal positions For the motion-synchronized actions, as reversal position, main run variable $ $AA_OSCILL_REVERSE_POSx is used. If the corresponding setting data change, then the modified values are active in the program.
  • Page 594: Infeed In Reversal Point Range

    P5: Oscillation 15.3 Oscillation controlled by synchronized actions DO $AA_OVR[X] = 0 $AA_OVR[Z] = 100 Explanation of system variables ● $AA_IM[ Z ]: Current position of oscillating axis Z in the MCS ● $SA_OSCILL_REVERSE_POS1[ Z ]: Position of the reversal point1 of the oscillation axis ●...
  • Page 595: Infeed At Both Reversal Points

    P5: Oscillation 15.3 Oscillation controlled by synchronized actions Reversal range 2 Function The infeed axis stops until the current position (value) of the oscillation axis is lower than the position at reversal point2 minus the contents of variable ii2. This applies on condition that the setting for reversal point position 2 is higher than that for reversal point position 1.
  • Page 596: Stop Oscillation Movement At The Reversal Point

    P5: Oscillation 15.3 Oscillation controlled by synchronized actions Combinations Infeed at two sides ● Reversal point 1 - reversal point 2 ● Reversal point 1 - reversal range 2 ● Reversal range 1 - reversal point 2 ● Reversal range 1 - reversal range 2 One-sided infeed ●...
  • Page 597: Oscillation Movement Restarting

    P5: Oscillation 15.3 Oscillation controlled by synchronized actions $AA_OVR[infeed axis ]: Axial override of the infeed axis Function Reversal point 2: Every time the oscillation axis reaches reversal position 2, it must be stopped by means of the override 0 and the infeed movement started. Application The synchronized action is used to hold the oscillation axis stationary until partial infeed has been executed.
  • Page 598: Do Not Start Partial Infeed Too Early

    P5: Oscillation 15.3 Oscillation controlled by synchronized actions DO $AA_OVR[oscillation axis]=100 Explanation of system variables ● $AA_DTEPW[ infeed axis ]: axial remaining travel distance for the infeed axis in the workpiece coordinate system (WCS): Path distance of the infeed axis ●...
  • Page 599: Assignment Of Oscillation And Infeed Axes Oscill

    P5: Oscillation 15.3 Oscillation controlled by synchronized actions 15.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 NC/PLC interface. If the PLC is controlling the oscillation axis, it must now also monitor the infeed axes and use the signals for the infeed axes to generate the reactions on the oscillation axis via 2 stop bits of the interface.
  • Page 600: External Oscillation Reversal

    P5: Oscillation 15.3 Oscillation controlled by synchronized actions Mode 1: The part length is adjusted such that the total of all calculated part lengths corresponds exactly to the path up to the target point. 15.3.9 External oscillation reversal For example, keys on the PLC can be used to change the oscillation area or instantaneously reverse the direction of oscillation.
  • Page 601: Marginal Conditions

    P5: Oscillation 15.5 Examples Special cases If the PLC input signal "oscillation reversal" is activated as the axis is approaching the start position, the approach movement is aborted and the axis continues by approach interruption position 1. If the PLC input signal "oscillation reversal" is set during a stop period, the stop timer is deactivated;...
  • Page 602: Example 1 Of Oscillation With Synchronized Actions

    P5: Oscillation 15.5 Examples Program section Program code Comment OSP1[Z]=-10 ; Reversal point 1 OSP2[Z]=10 ; Reversal point 2 OST1[Z]=-1 ; Stop time at reversal point 1: Exact stop coarse OST2[Z]=-2 ; Stop time at reversal point 2: without exact stop FA[Z]=5000 ;...
  • Page 603 P5: Oscillation 15.5 Examples Program section Program code Comment ; Example 1: Oscillation with synchronized actions OSP1[Z]=10 OSP2[Z]=60 ; explain reversal points 1 and 2 OST1[Z]=-2 OST2[Z]=0 ; Reversal point 1: without exact stop ; Reversal point 2: Exact stop fine FA[Z]=5000 FA[X]=250 ;...
  • Page 604 P5: Oscillation 15.5 Examples Program code Comment ; then set the marker with index 2 to value 1 ; and set the marker with index 1 to value 1 WHENEVER $AA_DTEPW[X]==0 DO $AC_MARKER[2]=1 $AC_MARKER[1]=1 ; always, when the flag with index 2 is ;...
  • Page 605: Example 2 Of Oscillation With Synchronized Actions

    P5: Oscillation 15.5 Examples Figure 15-3 Sequences of oscillation movements and infeed, example 1 15.5.3 Example 2 of oscillation with synchronized actions Task No infeed must take place at reversal point 1. At reversal point 2, the infeed must take place at distance ii2 from reversal point 2;...
  • Page 606 P5: Oscillation 15.5 Examples Program code Comment ; motion-synchronous actions: ; always, when the current position of the oscillating axis in the Machine Coordinate System ; less than the start of reversal area 2 ; then set the axial override of the feed axis to 0% ;...
  • Page 607: Examples For Starting Position

    P5: Oscillation 15.5 Examples Figure 15-4 Sequences of oscillation movements and infeed, example 2 15.5.4 Examples for starting position 15.5.4.1 Define starting position via language command Program code Comment WAITP(Z) ; enable oscillation for the Z axis OSP1[Z]=10 OSP2[Z]=60 ; explain reversal points 1 and 2 OST1[Z]=-2 OST2[Z]=0 ;...
  • Page 608: Start Oscillation Via Setting Data

    P5: Oscillation 15.5 Examples Explanation When the Z axis starts oscillation, it first approaches the starting position (position = 0 in the example) and then begins the oscillation motion between the reversal points 10 and 60. When the X axis has reached its end position 15, the oscillation finishes with 3 sparking out strokes and approach of end position 0.
  • Page 609 P5: Oscillation 15.5 Examples Program code Comment N702 OSP1[Z]=10 OSP2[Z]=60 ; explain reversal points 1 and 2 N703 OST1[Z]=0 OST2[Z]=0 ; Reversal point 1: Exact stop coarse ; Reversal point 2: Exact stop fine N704 FA[Z]=5000 FA[X]=2000 ; Infeed for oscillating axis, ;...
  • Page 610 P5: Oscillation 15.5 Examples Program code Comment ; then Set the marker with index 0 to 1 and set the marker with index 1 to 1 and WHENEVER $AA_DTEPW[X]==0 DO $AC_MARKER[0]=1 $AC_MARKER[1]=1 ; always, when the marker with index 0 equals 1, ;...
  • Page 611: Example Of External Oscillation Reversal

    P5: Oscillation 15.6 Data lists 15.5.5 Example of external oscillation reversal 15.5.5.1 Change reversal position via synchronized action with "external oscillation reversal" Program code Comment DEFINE BREAKPZ AS $AA_OSCILL_BREAK_POS1[Z] DEFINE REVPZ AS $SA_OSCILL_REVERSE_POS1[Z] WAITP(Z) ; enable oscillation for the Z axis OSP1[Z]=10 OSP2[Z]=60 ;...
  • Page 612: Setting Data

    P5: Oscillation 15.6 Data lists 15.6.2 Setting data 15.6.2.1 Axis/spindle-specific setting data Number Identifier: $SA_ Description 43700 OSCILL_REVERSE_POS1 Position at reversal point 1 43710 OSCILL_REVERSE_POS2 Position at reversal point 2 43720 OSCILL_DWELL_TIME1 Stop time at reversal point 1 43730 OSCILL_DWELL_TIME2 Stop time at reversal point 2 43740 OSCILL_VELO...
  • Page 613 P5: Oscillation 15.6 Data lists $AC_TIME Time from the start of the block (real) in seconds (including the times for the internally generated in‐ termediate blocks) $AC_TIMES Time from the start of the block (real) in seconds (without times for the internally generated intermedi‐ ate blocks) $AC_TIMEC Time from the start of the block (real) in IPO steps...
  • Page 614 P5: Oscillation 15.6 Data lists $AC_PATHN (Path parameter normalized) (real) Normalized path parameter: 0 for beginning of block to 1 for end of block $AA_LOAD[<axial expression>] Drive utilization $AA_POWER[<axial expression>] Drive efficiency in W $AA_TORQUE[<axial expression>] Drive torque setpoint in Nm $AA_CURR[<axial expression>] Actual current value of axis $AC_MARKER[<arithmetic_expression>] (int)
  • Page 615: R3: Extended Stop And Retract

    R3: Extended stop and retract 16.1 Brief description The extended stop and retract function - subsequently called ESR - offers the possibility of flexibly responding when a fault situation occurs as a function of the process: ● Extended stop Assuming that the specific fault situation permits it, all of the axes, enabled for extended stopping, are stopped in an orderly fashion.
  • Page 616: Configuring Stopping In The Drive

    R3: Extended stop and retract 16.2 ESR executed autonomously in the drive The drive-autonomous responses are automatically initiated in error situations. The triggering of the drive-autonomous responses can also be realized user-specific via the part programs or synchronized actions from the higher-level control system. As the stopping and retraction motion of the drive-autonomous ESR are purely axis-specific, in contrast to control-managed ESR, couplings are not taken into account.
  • Page 617 R3: Extended stop and retract 16.2 ESR executed autonomously in the drive Parameter Description p0891 ESR: Off ramp Value Meaning OFF3 (default) The drive is braked along the OFF3 down ramp by immediately entering n_set = 0 (p1135: OFF3 ramp-down time). OFF1 By immediately entering n_set = 0, the drive is braked along the ramp gener‐...
  • Page 618: Configuring Retraction In The Drive

    R3: Extended stop and retract 16.2 ESR executed autonomously in the drive 16.2.3 Configuring retraction in the drive Drive integrated retraction is configured using the following drive parameters: Parameter Description p0888 ESR: Configuration Value Meaning Extended retraction (function integrated in the drive) Parameter Description p0891...
  • Page 619: Configuring Generator Operation In The Drive

    R3: Extended stop and retract 16.2 ESR executed autonomously in the drive Instant in time that retraction was initiated Instant in time when the retraction speed specified in p0893 is reached Instant in time after the time that was configured in p0892 has expired Figure 16-2 Behavior for drive-integrated retraction Feedback signal...
  • Page 620 R3: Extended stop and retract 16.2 ESR executed autonomously in the drive Parameter Description p1248 Lower DC link voltage threshold Setting the lower threshold for the DC link voltage. For p1240 = 2, this threshold is used as setpoint limit for the Vdc_min controller. p1244 Upper DC link voltage threshold p1248 Lower DC link voltage threshold r0208...
  • Page 621: Esr Is Enabled Via System Variable

    R3: Extended stop and retract 16.2 ESR executed autonomously in the drive 16.2.5 ESR is enabled via system variable The ESR response of an axis, configured via drive parameter, must be programmed on a user- specific basis in a part program/synchronized action using the following axis-specific system variable: $AA_ESR_ENABLE[<axis>] Value Meaning...
  • Page 622: Acknowledge Esr Reactions

    R3: Extended stop and retract 16.2 ESR executed autonomously in the drive System variable The system variables can be evaluated in the part program / synchronized action, for example, in order to trigger the drive-autonomous ESR (see Section "Triggering ESR via system variable (Page 621)") or to acknowledge the ESR reactions triggered in the drive (see Section "Acknowledge ESR reactions (Page 622)").
  • Page 623: Configuring Esr In The Part Program

    R3: Extended stop and retract 16.2 ESR executed autonomously in the drive System variable and drive parameters The following diagram shows the relationship between system variables and drive parameters when triggering and acknowledging ESR reactions. ① NC: Enabling the ESR reaction via $AA_ESR_ENABLE = 1 (axis-specific) ②...
  • Page 624: Stopping (Esrs)

    R3: Extended stop and retract 16.2 ESR executed autonomously in the drive 16.2.9.1 Stopping (ESRS) Syntax ESRS(<access_1>,<stopping time_1>[,...,<axis_n>,<stopping time_n>]) Meaning Using the function, drive parameters can be changed regarding the drive-au‐ ESRS: tonomous "stop" ESR function. Special situations: ● Must be alone in the block ●...
  • Page 625 R3: Extended stop and retract 16.2 ESR executed autonomously in the drive Meaning Using the function, drive parameters can be changed regarding the drive-au‐ ESRR: tonomous "retract" ESR function. Special situations: ● Must be alone in the block ● Triggers a preprocessing stop ●...
  • Page 626: Boundary Conditions

    R3: Extended stop and retract 16.2 ESR executed autonomously in the drive Dependencies The programmed values for the retraction path and the retraction velocity refer to the load side. Before writing to the drive parameters these are converted over to the motor side. The transmission ratio effective in the NC at the execution time is applicable for the conversion.
  • Page 627: Boundary Conditions

    R3: Extended stop and retract 16.3 Boundary conditions Block search with calculation During the block search with calculation, the functions ESRS(...) and ESRR( ... ) are collected and executed in the action block. Block search with calculation in "Program test" (SERUPRO) mode During SERUPRO, the functions ESRS(...) and ESRR( ...
  • Page 628: Examples

    R3: Extended stop and retract 16.4 Examples Motion-synchronous actions Motion-synchronous actions are executed in the interpolator clock cycle. Increasing the interpolator clock cycle, e.g. due to a high number of active motion-synchronous actions, results in a coarser time grid for evaluating trigger conditions and triggering responses for extended stopping and retraction.
  • Page 629: Retraction While Thread Cutting

    R3: Extended stop and retract 16.4 Examples Programming Program code Comment LFPOS Axis-specific lift to a position POLF[X]=IC(10) Retraction position, incremental POLFMASK(X) Enable retraction ; Enable "Extended stop and retract" $AA_ESR_ENABLE[X]=1 ; X axis $AA_ESR_ENABLE[Y]=1 ; Y axis $AA_ESR_ENABLE[Z]=1 ; Z axis Trigger conditions and static synchronized actions Example 1 Trigger condition is the occurrence of alarms, which activate the follow-up (tracking) mode:...
  • Page 630: Rapid Lift Using Asub And Fast Input

    R3: Extended stop and retract 16.4 Examples Program code Comment N130 POLFMASK() ; Disable retraction of all axes 16.4.3 Rapid lift using ASUB and fast input Activating ASUB using the LIFTFAST program command (rapid lift) via fast input 1: Program code Comment N10 SETINT (1) PRIO=1 ABHEB_Y LIFTFAST ;...
  • Page 631: Lift Fast With Linear Relation Of Axes

    R3: Extended stop and retract 16.5 Data lists 16.4.5 Lift fast with linear relation of axes Retracting in a linear relationship, absolute and incremental Program code Comment N10 $AA_ESR_ENABLE[X]=1 ; Enable retraction, axis X N20 $AA_ESR_ENABLE[Y]=1 ; Enable retraction, axis Y N30 $AA_ESR_ENABLE[Z]=1 ;...
  • Page 632: Axis/Spindlespecific Machine Data

    R3: Extended stop and retract 16.5 Data lists 16.5.1.2 Axis/spindlespecific machine data Number Identifier: $MA_ Description 37500 ESR_REACTION Reaction definition with extended stop and retract 16.5.2 System variables Identifier Meaning $A_DBB Read/write data byte from/to PLC $A_IN Digital input $A_OUT Digital output $AA_ESR_ENABLE[<axis>] Enable "Extended stop and retract"...
  • Page 633: H1: Manual Traversing

    H1: Manual traversing 17.1 Overview Application Even on modern, numerically controlled machine tools, a facility must be provided that allows the user to traverse the axes manually. Examples: ● Setting up the machine Especially when setting up a new machining program, a manual traversing of the machine axes is required.
  • Page 634 H1: Manual traversing 17.1 Overview Manual traversing in the BCS and WCS The user has the option of traversing axes in the basic coordinate system (BCS) or workpiece coordinate system (WCS). ● Manual traversing in the BCS Each axis can be traversed manually. ●...
  • Page 635 H1: Manual traversing 17.1 Overview Special features to be observed during manual traversing of spindles can be found in Section "Manual traversing of the spindle (Page 667)". Manual traversing of geometry axes Manual traversing of geometry axes is used for traversing for which transformations and frames have to be active.
  • Page 636: Control Via The Plc Interface

    H1: Manual traversing 17.2 Control via the PLC interface Switching from JOG mode to AUTOMATIC/MDI mode It is only possible to switch operating modes from JOG to AUTOMATIC or MDI if all axes in the channel have reached "coarse exact stop". Further information: Function Manual Basic Functions;...
  • Page 637: Parameter Assignment (General)

    H1: Manual traversing 17.3 Parameter assignment (general) ① The operator selects, for example, the "Continuous traversing" machine function on the machine control panel for a machine axis. The input signals of the MCP are transferred cyclically from the basic PLC program in the data blocks of the MCP input interface.
  • Page 638 H1: Manual traversing 17.3 Parameter assignment (general) SD41100 $SN_JOG_REV_IS_ACTIVE (JOG: revolutional/linear feedrate) Value Meaning The behavior of the axis/spindle depends on the setting data: SD43300 $SA_ASSIGN_FEED_PER_REV_SOURCE (revolutional feedrate for positioning axes/spindles) The behavior of a geometry axis on which a frame with rotation acts, or of an orientation axis, depends on the channel-specific setting data: SD42600 $SC_JOG_FEED_PER_REV_SOURCE (control of the revolutional fee‐...
  • Page 639 H1: Manual traversing 17.3 Parameter assignment (general) Linear feedrate (G94) active ● Machine axes The velocity is determined by the following setting data: – For linear axes: SD41110 $SN_JOG_SET_VELO (axis velocity for JOG) – For rotary axes: SD41130 $SN_JOG_ROT_AX_SET_VELO (JOG velocity for rotary axes) If "0"...
  • Page 640 H1: Manual traversing 17.3 Parameter assignment (general) Rapid traverse override If the traversing keys/handwheel are also actuated together with the rapid traverse override key, the movement will be made with the configured rapid traverse velocity: ● Machine axes – MD32010 $MA_JOG_VELO_RAPID (rapid traverse in jog mode) –...
  • Page 641 H1: Manual traversing 17.3 Parameter assignment (general) Maximum axis-specific acceleration for JOG motion The maximum acceleration for manual traversing of an axis is defined in machine data: MD32300 $MA_MAX_AX_ACCEL [0] (maximum axis-specific acceleration for path motions in the dynamic response mode DYNNORM) Note Only the dynamic response mode DYNNORM is always effective for JOG mode.
  • Page 642 H1: Manual traversing 17.3 Parameter assignment (general) Note When a transformation is active, MD32300 $MA_MAX_AX_ACCEL determines the maximum possible axis-specific acceleration. Maximum jerk when manually traversing geometry axes The maximum jerk when manually traversing geometry axes in the SOFT acceleration mode (acceleration with jerk limitation) can be specified for each channel via the machine data: MD21168 $MC_JOG_JERK_GEO [<geometry axis>] With <geometry axis>...
  • Page 643: Continuous Manual Traversing

    H1: Manual traversing 17.4 Continuous manual traversing 17.4 Continuous manual traversing 17.4.1 Function For continuous manual traversing, the plus and minus traversing keys are selected to move the relevant axis in the appropriate direction. If both traversing keys are pressed simultaneously, there is no traversing movement, or, if an axis is in motion, it is stopped.
  • Page 644 H1: Manual traversing 17.4 Continuous manual traversing Abort traversing movement The operator can cancel traversing via the operator controls of the machine control panel (MCP) in the following ways: ● Pressing the same traversing key again ● Pressing the traversing key for the opposite direction ●...
  • Page 645 H1: Manual traversing 17.4 Continuous manual traversing Feedback Once the continuous procedure takes effect, a feedback is sent to the PLC: ● Machine axes: – DB31, ... DBX65.6 (active machine function "Continuous manual traversing") ● Geometry axes: – DB21, ... DBX41.6 (geometry axis 1: Active machine function "Continuous manual traversing") –...
  • Page 646: Parameter Assignment

    H1: Manual traversing 17.5 Incremental manual traversing ● Orientation axis 2: – DB21, … DBX336.6 (orientation axis 2: Travel command "minus") or – DB21, … DBX336.7 (orientation axis 2: Travel command "plus") ● Orientation axis 3: – DB21, … DBX340.6 (orientation axis 3: Travel command "minus") or –...
  • Page 647 H1: Manual traversing 17.5 Incremental manual traversing In addition to five fixed increment sizes (default setting: INC1, INC10, INC100, INC1000 and INC10000), a variable increment size (INCvar) that can be set via the setting data is also available. Incremental travel in jogging mode If the traversing key for the required direction (e.g.
  • Page 648 H1: Manual traversing 17.5 Incremental manual traversing WARNING Risk of collision If "continuous" mode is selected, several axes can by started by pressing and releasing the relevant direction key. Any interlocks must be implemented via the PLC! Note While an axis is moving, a change of mode from JOG to AUTOMATIC or MDI is not permitted within the control.
  • Page 649 H1: Manual traversing 17.5 Incremental manual traversing Feedback Once the incremental procedure takes effect, a feedback is sent to the PLC: ● Machine axes: – DB31, ... DBX65.0 - 5 (active machine function "INC1" to "INCvar") ● Geometry axes: – DB21, ... DBX41.0 - 5 (geometry axis 1: Active machine function "INC1" to "INCvar") –...
  • Page 650: Parameter Assignment

    H1: Manual traversing 17.5 Incremental manual traversing ● Orientation axis 2: – DB21, … DBX336.6 (orientation axis 2: Travel command "minus") or – DB21, … DBX336.7 (orientation axis 2: Travel command "plus") ● Orientation axis 3: – DB21, … DBX340.6 (orientation axis 3: Travel command "minus") or –...
  • Page 651: Supplementary Conditions

    H1: Manual traversing 17.6 Manual traversing using a handwheel Jog or continuous mode The selection of jog or continuous mode is performed for the incremental procedure NC- specifically for all axes via the machine data: MD11300 $MN_JOG_INC_MODE_LEVELTRIGGRD (INC and REF in jog mode) Jogging mode is the default setting.
  • Page 652 H1: Manual traversing 17.6 Manual traversing using a handwheel Traversing distance The traversing distance produced by rotating the handwheel is dependent on the following factors: ● Number of handwheel pulses received at the interface ● Active increment (machine function INC1, INC10, INC100, ... INCvar) ●...
  • Page 653 H1: Manual traversing 17.6 Manual traversing using a handwheel Setting via the PLC user interface The assignment is made using one of the following interface signals: ● Machine axes: – DB31, ... DBX4.0 - 2 (activate handwheel) ● Geometry axes: –...
  • Page 654 H1: Manual traversing 17.6 Manual traversing using a handwheel ● Additional information on the machine or geometry axis: DB10 DBX100.7 (machine axis handwheel 1) DB10 DBX101.7 (machine axis handwheel 2) DB10 DBX102.7 (machine axis handwheel 3) ● The information that the handwheel is enabled or disabled: DB10 DBX100.6 (handwheel 1 selected) DB10 DBX101.6 (handwheel 2 selected) DB10 DBX102.6 (handwheel 3 selected)
  • Page 655 H1: Manual traversing 17.6 Manual traversing using a handwheel ● Orientation axis 1: – DB21, … DBX332.4 (orientation axis 1: Travel request "minus") or – DB21, … DBX332.5 (orientation axis 1: Travel request "plus") ● Orientation axis 2: – DB21, … DBX336.4 (orientation axis 2: Travel request "minus") or –...
  • Page 656 H1: Manual traversing 17.6 Manual traversing using a handwheel ● Orientation axis 2: – DB21, … DBX336.6 (orientation axis 2: Travel command "minus") or – DB21, … DBX336.7 (orientation axis 2: Travel command "plus") ● Orientation axis 3: – DB21, … DBX340.6 (orientation axis 3: Travel command "minus") or –...
  • Page 657 H1: Manual traversing 17.6 Manual traversing using a handwheel The acknowledgement that the handwheel direction of rotation has been inverted by the NC is realized for each axis using the IS "Handwheel direction of rotation inversion active": ● Machine axes: –...
  • Page 658: Parameter Assignment

    H1: Manual traversing 17.6 Manual traversing using a handwheel For other NC/PLC interface signals (hold signals), the influence of manually traversing using the handwheel (cancellation or interruption of traversing motion) can be set (see Chapter "Parameter assignment (Page 658)"). NC STOP only interrupts the traversing movement. Any setpoint/actual-value difference is retained.
  • Page 659 H1: Manual traversing 17.6 Manual traversing using a handwheel In addition to five fixed increment sizes (default setting: INC1, INC10, INC100, INC1000 and INC10000), a variable increment size (INCvar) that can be set via the setting data is also available. Fixed increments The parameter assignment of the fixed increment sizes is performed via NC-specific machine data:...
  • Page 660 H1: Manual traversing 17.6 Manual traversing using a handwheel MD11324 $MN_HANDWH_VDI_REPRESENTATION Value Meaning Bit-coded representation (basic setting) → Three handwheels can be represented. Binary-coded representation → Six handwheels can be represented. Output of the NC/PLC interface signals "travel command plus" / "travel command minus" The output behavior of the NC/PLC interface signals "travel command plus"...
  • Page 661 H1: Manual traversing 17.6 Manual traversing using a handwheel MD11310 $MN_HANDWH_REVERSE (threshold for direction change handwheel) Value Meaning If the handwheel is moved in the opposite direction, the resulting distance is computed and the calculated end point is approached as fast as possible. If this end point is located before the point where the moving axis can decelerate in the current direction of travel, the unit is decelerated and the end point is approached by moving in the opposite direction.
  • Page 662 H1: Manual traversing 17.6 Manual traversing using a handwheel SD41100 $SN_JOG_REV_IS_ACTIVE (JOG: Revolutional/linear feedrate) SD41100 $SN_JOG_REV_IS_ACTIVE Active An axis/spindle is always traversed with revolutional feedrate MD32050 $MA_JOG_REV_VELO (revolutional feedrate for JOG) MD32040 $MA_JOG_REV_VELO_RAPID (revolutional feedrate for JOG with rapid traverse override) depending on the master spindle.
  • Page 663 H1: Manual traversing 17.6 Manual traversing using a handwheel NC/PLC interface signal Scope MD32084 $MC_HANDWH_CHAN_STOP_COND Bit == 0 Bit == 1 DB31, ... DBB0 (feed rate Machine axis, not spindle Override == 0: Interruption Override == 0: Abort override, axial) DB31, ...
  • Page 664: Travel Request

    H1: Manual traversing 17.6 Manual traversing using a handwheel 17.6.3 Travel request The following examples are intended to illustrate the method of operation of the "Travel request" NC/PLC interface signal. Example 1: Manual traversing using handwheel with distance input, the stop condition is no criterion for cancellation If, for manual traversing using a handwheel with distance input (MD11346 $MN_HANDWH_TRUE_DISTANCE == 1 or == 3), an active stop condition is not a...
  • Page 665 H1: Manual traversing 17.6 Manual traversing using a handwheel Figure 17-2 Signal-time diagram:Manual traversing using the handwheel with distance input, stop condition is not a cancellation criterionMD17900 $MN_VDI_FUNCTION_MASK bit 0 = 1 Example 2: Manual traversing using a handwheel, stop condition is a cancellation criterion If a stop condition is selected as cancellation criterion via machine data MD32084 $MA_HANDWH_STOP_COND or MD20624 $MC_HANDWH_CHAN_STOP_COND during manual traversing using a...
  • Page 666 H1: Manual traversing 17.6 Manual traversing using a handwheel Figure 17-3 Signal-time diagram:Manual traversing using a handwheel, stop condition is a cancellation criterion If a stop condition is activated during the handwheel travel, the motion is aborted and the "Travel request" and "Travel command" NC/PLC interface signals are reset. Example 3: Manual traversing using a handwheel with velocity setpoint, stop condition is a cancellation criterion If the handwheel is no longer moved for velocity specification...
  • Page 667: Manual Traversing Of The Spindle

    H1: Manual traversing 17.7 Manual traversing of the spindle Figure 17-4 Signal-time diagram:Manual traversing using a handwheel with velocity setpoint, stop condition is a cancellation criterion Supplementary conditions NC stop With NC stop present, no travel command and, therefore, no travel request is output. There is an exception with DRF travel: If DRF travel is permitted in the NC stop state via machine data MD20624 $MC_HANDWH_CHAN_STOP_COND (bit 13 == 1), the behavior corresponds to that of manual traversing using a handwheel.
  • Page 668: Manual Traversing Of Geometry Axes/Orientation Axes

    H1: Manual traversing 17.8 Manual traversing of geometry axes/orientation axes Interface signals When manually traversing the spindles, the interface signals between NC and PLC have the same effect as for the machine axes. The interface signals DB31, ... DBX60.7 or DBX60.6 (position reached with fine or coarse exact stop) are only set if the spindle is in position control.
  • Page 669 H1: Manual traversing 17.8 Manual traversing of geometry axes/orientation axes PLC interface For geometry axes/orientation axes, there is a separate PLC interface that contains the same signals as the axis-specific PLC interface: ● Geometry axes: DB21, ... DBB12 - 23 and DB21, ...
  • Page 670 H1: Manual traversing 17.8 Manual traversing of geometry axes/orientation axes MD21166 $MC_JOG_ACCEL_GEO [<geometry axis>] With <geometry axis> = 0, 1, 2 The maximum jerk when manually traversing geometry axes in the SOFT acceleration mode (acceleration with jerk limitation) can be specified for each channel via the machine data: MD21168 $MC_JOG_JERK_GEO [<geometry axis>] With <geometry axis>...
  • Page 671: Approaching A Fixed Point In Jog

    H1: Manual traversing 17.9 Approaching a fixed point in JOG 17.9 Approaching a fixed point in JOG 17.9.1 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 panel.
  • Page 672 H1: Manual traversing 17.9 Approaching a fixed point in JOG Activation After selecting the "Approach fixed point in JOG" function, the PLC outputs the number of the fixed point to be approached binary coded to the NC using the following bits: DB31, ...
  • Page 673 H1: Manual traversing 17.9 Approaching a fixed point in JOG Approaching other fixed point The axis motion is cancelled and the following alarm is output if a different fixed point is selected while traversing to the fixed point: Alarm 17812 "Channel %1 Axis %2 fixed point approach in JOG: Fixed point changed" The message signal DB31, ...
  • Page 674: Parameterization

    H1: Manual traversing 17.9 Approaching a fixed point in JOG Features of spindles A spindle changes to the positioning mode on actuating the "Approaching fixed point in JOG" function. The closed loop position control is active and the axis can traverse to the fixed point. If no zero mark is detected the alarm message in the axis operation is output: Alarm 17810 "Channel %1 Axis %2 not referenced"...
  • Page 675 H1: Manual traversing 17.9 Approaching a fixed point in JOG Axis dynamics The axis-specific acceleration and the axis-specific jerk for "Approaching fixed point in JOG" are determined by the following machine data: ● When traversing with traverse keys or handwheel: –...
  • Page 676: Programming

    H1: Manual traversing 17.9 Approaching a fixed point in JOG 17.9.3 Programming System variables The following system variables that can be read in the part program and in the synchronous actions for the "Approach fixed point" function. System variable Description $AA_FIX_POINT_SELECTED [<Axis>] Number of fixed point to be approached $AA_FIX_POINT_ACT [<Axis>]...
  • Page 677: Application Example

    H1: Manual traversing 17.9 Approaching a fixed point in JOG 17.9.5 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 assignment The machine data for the "Approaching fixed point"...
  • Page 678: Position Travel In Jog

    H1: Manual traversing 17.10 Position travel in JOG 17.10 Position travel in JOG 17.10.1 Function The "Position travel in JOG" function allows the machine operator to specify, via the setting data, a position in the machine coordinate system, to which the selected machine axis can be traversed using the traverse keys or the handwheel.
  • Page 679 H1: Manual traversing 17.10 Position travel in JOG DB31, ... DBX75.6 (JOG JOG travel to position active) Note Activation is not possible: ● during an NC reset ● In case of impending emergency stop ● During processing of an ASUP ●...
  • Page 680 H1: Manual traversing 17.10 Position travel in JOG Retraction in the opposite direction The behavior when retracting from the position in the opposite direction depends on the setting of bit 2 in the machine data: MD10735 $MN_JOG_MODE_MASK (settings for the JOG mode) Retraction in the opposite direction is possible only if the bit is set.
  • Page 681: Parameter Setting

    H1: Manual traversing 17.10 Position travel in JOG 17.10.2 Parameter setting Consideration of axial frames and tool length compensation The consideration of axial frames and, if an axis is configured as geometry axis, the tool length compensation, depends on the setting of bit 1 in the machine data: MD10735 $MN_JOG_MODE_MASK (settings for the JOG mode) Value Meaning...
  • Page 682: Application Example

    H1: Manual traversing 17.10 Position travel in JOG position to be approached in the machine coordinate system is not reached; instead a position that would have been reached without active offset movement is reached. The NC/PLC interface signal DB31, ... DBX75.7 is not reported. Working area limits Working-area limitations (in BCS and WCS) are considered and the axis motion is stopped on reaching the limits.
  • Page 683: Circular Travel In Jog

    H1: Manual traversing 17.11 Circular travel in JOG 17.11 Circular travel in JOG 17.11.1 Function With the "Circular travel in JOG" function, the machine operator can simultaneously traverse the two geometry axes of the active plane along an arc using the traverse keys or handwheel. Applications This function is used for machine tools that are exclusively operated manually.
  • Page 684 H1: Manual traversing 17.11 Circular travel in JOG Specification of circle parameters At least the following data is required for circular travel in JOG: ● Coordinates of the circle center point ● The maximum circle radius for internal machining or minimum circle radius for external machining ●...
  • Page 685 H1: Manual traversing 17.11 Circular travel in JOG ● Only one movement at a time can be carried out in the active plane: either on the arc or perpendicular to it. ● Regardless of the movements in the active plane, the 3rd geometry axis can be traversed perpendicular to the active plane.
  • Page 686 H1: Manual traversing 17.11 Circular travel in JOG Figure 17-5 Circular travel in JOG: Internal/external machining Circle segment machining By specifying a start and end angle, the working area for the 1st and 2nd geometry axis can be limited to a circle segment: SD42693 $SC_JOG_CIRCLE_START_ANGLE (circle start angle) SD42694 $SC_JOG_CIRCLE_END_ANGLE (circle end angle) Furthermore, the direction from the start to the end angle must be specified to permit the unique...
  • Page 687 H1: Manual traversing 17.11 Circular travel in JOG Figure 17-6 Circular travel in JOG: Circle segment machining Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 688 H1: Manual traversing 17.11 Circular travel in JOG Allowance for tool radius If bit 1 is set in the setting data SD42692 $SC_JOG_CIRCLE_MODE, then the tool radius is considered when monitoring the operating range limits (define circular arc; for circle segment machining also the limits that arise due to the start and end angle): Figure 17-7 Circular travel in JOG: Circle segment internal machining with tool radius compensation...
  • Page 689: Parameter Setting

    H1: Manual traversing 17.11 Circular travel in JOG ● For active tool radius compensation and internal machining: Positions too close to center of circle ● For active tool radius compensation and circle segment machining: Positions too close to segment borders Changes to the setting data Changes in the function-relevant setting data SD42690 to SD42694 that are made during an active JOG motion only take effect after ending the active JOG motion by triggering a new JOG...
  • Page 690 H1: Manual traversing 17.11 Circular travel in JOG Value Meaning Traversing of the 2nd geometry axis of the active plane to plus always takes place in the direction of the limiting circle. I.e. the radius is increased for internal machining and decreased for external machining.
  • Page 691 H1: Manual traversing 17.11 Circular travel in JOG SD42692 $SC_JOG_CIRCLE_MODE (jog circle mode) Value Meaning Internal machining takes place. The circle radius in SD42691 is the maximum possible radius. External machining takes place. The circle radius in SD42691 is the minimum possible radius. Circle segment machining The start and end angles for defining a circle segment that limits the operating range are set in the setting data:...
  • Page 692: Supplementary Conditions

    H1: Manual traversing 17.11 Circular travel in JOG 17.11.3 Supplementary Conditions Diameter programming active During incremental traversing and handwheel traversing of the geometry axes of the active plane, traversing always takes place in the radius programming, even if diameter programming is active for one of the two involved geometry axes.
  • Page 693: Retraction In The Tool Direction (Jog Retract)

    H1: Manual traversing 17.12 Retraction in the tool direction (JOG retract) ● The current axis positions are: – X axis: 10 – Y axis: 10 ● The axes are homed. Parameter assignment SD42690 $SC_JOG_CIRCLE_CENTRE[AX1] = Center of circle X axis to position 10 mm SD42690 $SC_JOG_CIRCLE_CENTRE[AX2] = Center of circle Y axis to position 20 mm SD42691 $SC_JOG_CIRCLE_RADIUS = 20...
  • Page 694 H1: Manual traversing 17.12 Retraction in the tool direction (JOG retract) In particular, the specific features of the following functions are taken into account: ● Tapping with compensating chuck and speed-controlled spindle with encoder (G33) ● Tapping without compensating chuck and position-controlled spindle (G331, G332) ●...
  • Page 695: Parameterization

    H1: Manual traversing 17.12 Retraction in the tool direction (JOG retract) 17.12.2 Parameterization 17.12.2.1 Automatic selection of JOG retract after Power On After the control has run up (Power On), the channels of a BAG are as standard in the parameterized default mode: MD10720 $MN_OPERATING_MODE_DEFAULT[<mode group>] = <default mode>...
  • Page 696: Selection

    H1: Manual traversing 17.12 Retraction in the tool direction (JOG retract) 17.12.3 Selection Function Requirement The selection of JOG retract is only possible, if valid retraction data is available for the relevant channel, the channel is in JOG mode and in the "Reset" state: ●...
  • Page 697: Tool Retraction

    H1: Manual traversing 17.12 Retraction in the tool direction (JOG retract) "Machine operating area" > "ETC key (">")" > "Retract" Note The softkey "Retract" is only displayed if there is retraction data and an active tool. Selection by PLC user program The following actions must be performed to select JOG retract by the PLC user program: ●...
  • Page 698 H1: Manual traversing 17.12 Retraction in the tool direction (JOG retract) The axes and spindles not involved in the tool retraction can be manually traversed as required. Switching the coordinates systems is possible (MCS ⇔ WCS). Traversing direction The retraction movement is only enabled for the positive traversing direction by default. If traversing in the negative direction is also to be possible, this must be explicitly enabled: MD10735 $MN_JOG_MODE_MASK, bit 8 = 1 Retraction behavior dependent on processing type and tool type...
  • Page 699: Deselection

    H1: Manual traversing 17.12 Retraction in the tool direction (JOG retract) ● Changing a spindle or axis involved in the retraction to another channel ● Using a spindle or axis involved in the retraction as main run axis (command axis, oscillating axis, FC18 / concurrent axis) 17.12.5 Deselection...
  • Page 700: Continuing Machining

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

    H1: Manual traversing 17.12 Retraction in the tool direction (JOG retract) 17.12.8 State diagram Operating mode OMC Operating mode change Figure 17-8 State diagram: JOG retract 17.12.9 System data The following system data is available for JOG retract: Meaning System variable $VA_ NC/PLC interface OPI variable Retraction data available...
  • Page 702: Supplementary Conditions

    H1: Manual traversing 17.12 Retraction in the tool direction (JOG retract) 17.12.10 Supplementary conditions Incremental measuring systems The user must ensure that machine axes with incremental measuring systems are clamped with sufficient speed in the event of a power failure to prevent a change to the last position, known and saved by the control.
  • Page 703: Use Of Handwheels In Automatic Mode

    H1: Manual traversing 17.13 Use of handwheels in automatic mode 17.13 Use of handwheels in automatic mode 17.13.1 Handwheel override in automatic mode 17.13.1.1 General functionality Function With this function it is possible to traverse axes or to change their velocities directly with the handwheel in automatic mode (Automatic, MDA).
  • Page 704 H1: Manual traversing 17.13 Use of handwheels in automatic mode Path definition With axis feedrate = 0 (e.g. FDA[AXi] = 0), the traversing movement of the positioning axis towards the programmed target position is controlled entirely by the user rotating the assigned handwheel.
  • Page 705 H1: Manual traversing 17.13 Use of handwheels 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).
  • Page 706 H1: Manual traversing 17.13 Use of handwheels in automatic mode Handwheel weighting The travel path of the axis that is generated by rotating the handwheel by one detent position is dependent on several factors (see Section "Manual traversing using a handwheel (Page 651)"): ●...
  • Page 707: Programming And Activating Handwheel Override

    H1: Manual traversing 17.13 Use of handwheels in automatic mode For the path input, depending on the traversing direction, the appropriate interface signals are output to the PLC: ● Machine axes: – DB31, ... DBX64.6 / 7 (travel command "minus"/"plus") ●...
  • Page 708 H1: Manual traversing 17.13 Use of handwheels in automatic mode ● It is not possible to program FDA and FD or FA and F in the same NC block. ● The positioning axis must not be an indexing axis. Positioning axis Syntax for handwheel override: FDA[AXi] = [feedrate value] Example 1:...
  • Page 709: Special Features Of Handwheel Override In Automatic Mode

    H1: Manual traversing 17.13 Use of handwheels in automatic mode N10 G01 X10 Y100 Z200 FD=1500 . . . Target position of path axes X, Y and Z X10 Y100 Z200 Activate velocity override for path axes; path velocity = 1500 mm/ FD=1500 Concurrent positioning axis The handwheel override for concurrent positioning axes is activated from the PLC via FC18 by...
  • Page 710: Contour Handwheel/Path Input Using Handwheel (Option)

    H1: Manual traversing 17.13 Use of handwheels in automatic mode DRF active When "Handwheel override in automatic mode" is activated, it is important to check whether the "DRF" function is active (DB21, ... DBX0.3 = 1). If this were the case, the handwheel pulses would also cause a DRF offset of the axis. The user must, therefore, first deactivate DRF.
  • Page 711 H1: Manual traversing 17.13 Use of handwheels in automatic mode Path velocity The path velocity in mm/min depends on: ● Handwheel pulses in each IPO clock cycle ● Pulse evaluation of the handwheel using machine data: MD11322 $MN_CONTOURHANDWH_IMP_PER_LATCH ● Active increment (INC1, 10, 100, ...) ●...
  • Page 712 H1: Manual traversing 17.13 Use of handwheels in automatic mode Activation The function is activated via interface signal: DB21, ... DBX30.3 = 1 The feedrate is then no longer specified by the handwheel pulses, but by feedrate F... programmed in the NC program. Specifying the direction of rotation The direction of rotation of the simulated handwheel is specified using the interface signal: DB21, ...
  • Page 713: Drf Offset

    H1: Manual traversing 17.13 Use of handwheels in automatic mode ● Channel-specific delete distance-to-go Channel-specific delete distance-to-go (DB21, ... DBX6.2) causes the motion, initiated by the contour handwheel, to be canceled. The axes are braked and the program is restarted with the next NC block.
  • Page 714 H1: Manual traversing 17.13 Use of handwheels in automatic mode DRF active DRF must be active to allow the DRF offset to be modified by means of traversal with the handwheel. The following requirements must be fulfilled: ● AUTOMATIC mode ●...
  • Page 715 H1: Manual traversing 17.13 Use of handwheels in automatic mode Figure 17-9 Control of DRF offset Display The axis actual-position display (ACTUAL POSITION) does not change while an axis is being traversed with the handwheel via DRF. The current axis DRF offset can be displayed in the DRF window.
  • Page 716: Commissioning

    H1: Manual traversing 17.13 Use of handwheels in automatic mode 17.13.3.2 Commissioning Function The "DRF offset" function (differential resolver function) can be used to set an additive incremental zero offset in respect of geometry and auxiliary axes in the basic coordinate system in AUTOMATIC mode via an electronic handwheel.
  • Page 717 H1: Manual traversing 17.13 Use of handwheels in automatic mode The PLC program (basic PLC program or user program) transfers this interface signal to interface signal DB21, ... DBX0.3 (activate DRF) once the corresponding logic operation has been performed. Control of DRF offset The DRF offset can be modified, deleted or read: User: ●...
  • Page 718 H1: Manual traversing 17.13 Use of handwheels in automatic mode Figure 17-10 Control of DRF offset Display The axis actual-position display (ACTUAL POSITION) does not change while an axis is being traversed with the handwheel via DRF. The current axis DRF offset can be displayed in the DRF window.
  • Page 719: Programming: Deselecting Overlays Axis-Specifically (Corrof)

    H1: Manual traversing 17.13 Use of handwheels in automatic mode 17.13.3.3 Programming: Deselecting overlays axis-specifically (CORROF) The following axis-specific overlays (overrides) are deleted with the CORROF procedure: ● Additive work offsets (DRF offsets) set via handwheel traversal ● Position offsets programmed via the $AA_OFF system variable A preprocessing stop is initiated through the deletion of an overlay (override) value and the position component of the deselected overlaid movement is transferred to the position in the basic coordinate system.
  • Page 720 H1: Manual traversing 17.13 Use of handwheels in automatic mode Examples Example 1: Axis-specific deselection of a DRF offset (1) A DRF offset is generated in the X axis by DRF handwheel traversal. No DRF offsets are operative for any other axes in the channel. Program code Comment N10 CORROF(X,"DRF")
  • Page 721: Double Use Of The Handwheel

    H1: Manual traversing 17.13 Use of handwheels in automatic mode Example 5: Axis-specific deselection of a DRF offset and a $AA_OFF position offset (2) A DRF offset is generated in the X and Y axes by DRF handwheel traversal. No DRF offsets are operative for any other axes in the channel.
  • Page 722 H1: Manual traversing 17.13 Use of handwheels in automatic mode This means that an overlaid movement can only be executed when no DRF offset (triggered by the same handwheel) is active for the axes in the basic coordinate system that are involved in the movement, i.e., the DRF movement must have been terminated.
  • Page 723: Monitoring Functions

    H1: Manual traversing 17.14 Monitoring functions 17.14 Monitoring functions Limitations For manual traversing and manual traversing using a handwheel, the following limits apply: ● Working area limitation (the axis must be referenced). ● Software limit switches 1 and 2 (axis must be referenced) ●...
  • Page 724: Start-Up: Handwheels

    H1: Manual traversing 17.15 Start-up: Handwheels Further information B2: Acceleration and jerk (Page 347) G2: Velocities, setpoint / actual value systems, closed-loop control (Page 31) 17.15 Start-up: Handwheels 17.15.1 General information In order to operate handwheels of a SINUMERIK control system, they have to be parameterized via NC machine data.
  • Page 725: Connection Via Ethernet

    H1: Manual traversing 17.15 Start-up: Handwheels 17.15.2 Connection via Ethernet Parameter assignment The parameters for handwheels connected via Ethernet modules, e.g. machine control panel "MCP 483C IE", "HT 8", or "HT 2", are assigned in the following NC machine data: ●...
  • Page 726 H1: Manual traversing 17.15 Start-up: Handwheels Operator component interface -> MCP1 MCP2 Handwheel interface at the Ethernet bus (y) -> 1) Numbering of the handwheel interfaces within an operator component interface 2) Assignment of the operator component to the interface via the corresponding FB1 parameter 3) Assignment of the handwheels of the respective operator components to the handwheel interfaces 4) Numbering of the handwheel interfaces at the Ethernet bus ->...
  • Page 727 H1: Manual traversing 17.15 Start-up: Handwheels MCP2In // MCP2 parameters... MCP2BusAdr := 192 // Via switch S2 on the MCP 483C // Set "IP address" MCPBusType := b#16#55 // Bus type: Ethernet // HHU = HT 2 := 5 // Bus type: Ethernet BHGIn // HHU Parameter ...
  • Page 728: Data Lists

    H1: Manual traversing 17.16 Data lists By evaluating the signal, it is possible to reduce the overtravel of an axis traversed via the handwheel, due to the handwheel pulses that have been collected in the control but not yet transferred to the interpolator for traversing purposes. To do this, deletion of the distance-to-go must be triggered for the relevant axis or in the channel when a stationary state is detected: ●...
  • Page 729: Axis/Spindlespecific Machine Data

    H1: Manual traversing 17.16 Data lists Number Identifier: $MC_ Description 20110 RESET_MODE_MASK Initial setting after reset / program end 20150 GCODE_RESET_VALUES Reset position of the G groups 20151 GCODE_RESET_MODE Reset behavior of the G groups 20360 TOOL_PARAMETER_DEF_MASK Definition of the tool parameters 20620 HANDWH_GEOAX_MAX_INCR_SIZE Limitation of the geometry axes...
  • Page 730: Setting Data

    H1: Manual traversing 17.16 Data lists Number Identifier: $MA_ Description 32431 MAX_AX_JERK Maximum axis-specific jerk during path movements 34210 ENC_REFP_STATE Measuring system status 35130 GEAR_STEP_MAX_VELO_LIMIT[n] Maximum velocity for gear stage 17.16.2 Setting data 17.16.2.1 General setting data Number Identifier: $SN_ Description 41010 JOG_VAR_INCR_SIZE...
  • Page 731: System Variable

    H1: Manual traversing 17.16 Data lists 17.16.3 System variable 17.16.3.1 System variable Identifier Description $AA_POSRES Axis state "Position restored" 17.16.4 OPI variable 17.16.4.1 OPI variable Identifier Description retractState, bit 0 Retraction data available retractState, bit 1 JOG retract active retractState, bits 2 - 3 Retraction axis aaPosRes Axis state "Position restored".
  • Page 732 H1: Manual traversing 17.16 Data lists Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 733: S1: Spindles

    S1: Spindles 18.1 Brief Description The primary function of a spindle is to set a tool or workpiece in rotary motion in order to facilitate machining. Depending on the type of machine, the spindle must support the following functions in order to achieve this: ●...
  • Page 734: Operating Modes

    S1: Spindles 18.2 Operating modes 18.2 Operating modes 18.2.1 Overview A spindle is an endlessly rotating axis, which can be operated in either the closed-loop position control or closed-loop speed control modes. Operating modes ● Control operation (closed-loop speed control) ●...
  • Page 735: Mode Change

    S1: Spindles 18.2 Operating modes 18.2.2 Mode change Switching between spindle and axis operation can be done as follows: ● Control mode → Oscillation mode The spindle changes to oscillation mode if a new gear stage has been specified using automatic gear step selection (M40) in conjunction with a new S value or by M41 to M45.
  • Page 736: Control Mode

    S1: Spindles 18.2 Operating modes ● Positioning mode → Axis mode If a spindle was stopped with orientation, the assigned axis name is used to program a change to axis mode. The gear step is retained. ● Control mode → Axis mode Switching from control mode to axis mode can be also achieved by the programming of M70.
  • Page 737 S1: Spindles 18.2 Operating modes A spindle position actual value encoder is not required for M3/M4/M5 in connection with: ● Inverse-time feedrate coding (G93) ● Feedrate in mm/min or inch/min (G94) ● Tapping with compensating chuck (G63) Speed control mode Speed control mode is particularly suitable if a constant spindle speed is required, but the position of the spindle is not important (e.g.
  • Page 738 S1: Spindles 18.2 Operating modes MD35040 $MA_SPIND_ACTIVE_AFTER_RESET (individual spindle reset) Value Meaning When the spindle is reset or at the end of the program, the spindle immediately decelerates to a stop at the active acceleration rate. The last programmed spindle speed and direction of rotation are deleted.
  • Page 739: Oscillation Mode

    S1: Spindles 18.2 Operating modes ● If the speed drops below the minimum speed or when NC/PLC IS: DB31, ... DBX61.4 (axis/spindle stationary) is detected, NC/PLC IS: DB31, ... DBX83.5 (nact = nset) is reset (e.g. for an emergency machine strategy). ●...
  • Page 740 S1: Spindles 18.2 Operating modes For the following functions the spindle is in positioning mode: ● SPOS[<n>]=... ● SPOS[<n>]=ACP(...) ● SPOS[<n>]=ACN(...) ● SPOS[<n>]=AC(...) ● SPOS[<n>]=IC(...) ● SPOS[<n>]=DC(...) ● SPOSA[<n>]=ACP(...) ● SPOSA[<n>]=ACN(...) ● SPOSA[<n>]=AC(...) ● SPOSA[<n>]=IC(...) ● SPOSA[<n>]=DC(...) equal to SPOSA[<n>]=... ●...
  • Page 741 S1: Spindles 18.2 Operating modes SPOS[<n>]=ACN(...) Approaches the position from the negative direction. When positioning from a positive direction of rotation, the speed is decelerated to zero and accelerated in the opposite direction to execute the negative approach. M19 (DIN 66025) M19 can be used to position the spindle.
  • Page 742 S1: Spindles 18.2 Operating modes ● Spindle-specific and cross-channel activation via the machine data: MD35035 $MA_SPIND_FUNCTION_MASK (spindle functions) Value Meaning If bit 0 is also set to "0" in the MD20850 $MC_SPOS_TO_VDI, no auxiliary function M19 is generated in SPOS and SPOSA. This therefore eliminates the acknowledgment time for the auxiliary function.
  • Page 743 S1: Spindles 18.2 Operating modes SPOS, M19 and SPOSA have the same functionality but differ in their block change behavior: ● SPOS and M19 The block change is carried out if all functions programmed in the block have reached their end-of-block criterion (e.g.
  • Page 744 S1: Spindles 18.2 Operating modes Coordination actions in the part program have the following advantages: ● The part program author can decide at what point in the program the spindle needs to be up to speed, e.g. in order to start machining a workpiece. ●...
  • Page 745 S1: Spindles 18.2 Operating modes Special cases ● Tolerance for spindle speed: If the machine data setting is: MD35150 $MA_SPIND_DES_VELO_TOL = 0 the NC/PLC interface signal: DB31, ... DBX83.5 (spindle in setpoint range) is always set to 1. WAITS is terminated as soon as the spindle has reached the setpoint-side target after a change in speed or direction (M3/M4).
  • Page 746: Positioning From Rotation

    S1: Spindles 18.2 Operating modes With: Spindle number <n>: Acceleration as a percentage of the configured acceleration <value> With ACC[S<n>]=0, the configured acceleration takes effect. Aborting the positioning process The positioning action is aborted: ● By the NC/PLC interface signal: DB31, ...
  • Page 747 S1: Spindles 18.2 Operating modes Procedure Figure 18-1 Positioning from rotation Note The speed arising from the configuration of the encoder limit frequency for the resynchronization of the encoder (MD36302 $MA_ENC_FREQ_LOW) must be greater than the position-control activation speed (MD35300 $MA_SPIND_POSCTRL_VELO). Phase 1 Positioning from phase 1a: The spindle is rotating at a higher speed than the encoder limit frequency.
  • Page 748 S1: Spindles 18.2 Operating modes MD35300 $MA_SPIND_POSCTRL_VELO The spindle is synchronized. Phase 2 Spindle speed > Position-control activation speed When the SPOS, M19 or SPOSA command is activated, the spindle begins to slow down to the position-control activation speed with the configured acceleration: MD35200 $MA_GEAR_STEP_SPEEDCTL_ACCEL The spindle is synchronized once the encoder limit frequency threshold is crossed.
  • Page 749 S1: Spindles 18.2 Operating modes The spindle brakes from the calculated "braking point" with machine data: MD35210 $MA_GEAR_STEP_POSCTRL_ACCEL to the target position. Spindle speed < Position-control activation speed At the time identified by the braking start point calculation in phase 3, the spindle brakes to a standstill with the acceleration configured in position control mode (MD35210 $MA_GEAR_STEP_POSCTRL_ACCEL).
  • Page 750 S1: Spindles 18.2 Operating modes MD36000 $MA_STOP_LIMIT_COARSE (exact stop coarse) Note The positioning procedure is considered complete when the end-of-positioning criterion is reached and signaled. The condition is "Exact stop fine". This applies to SPOS, M19 or SPOSA from the part program, synchronized actions and spindle positioning by the PLC using FC 18.
  • Page 751: Positioning From Standstill

    S1: Spindles 18.2 Operating modes 18.2.5.3 Positioning from standstill Procedure A distinction is made between two cases with regard to positioning from standstill: ● Case 1: The spindle is not synchronized. This is the case if the spindle is to be positioned after switching on the control and drive or after a gear step change (e.g.
  • Page 752 S1: Spindles 18.2 Operating modes Figure 18-2 Positioning with stationary spindle Phase 1 Case 1: Spindle not synchronized With the programming of SPOS, M19 or SPOSA the spindle accelerates with the acceleration from the machine data: MD35200 $MA_GEAR_STEP_SPEEDCTRL_ACCEL (Acceleration in the speed control mode) This direction of rotation is defined by the machine data: Axes and spindles...
  • Page 753 S1: Spindles 18.2 Operating modes MD35350 $MA_SPIND_POSITIONING_DIR (Direction of rotation while positioning to standstill) Exception: If ACN, ACP, IC is used for positioning, the programmed direction of travel is activated. The spindle is synchronized at the next zero mark of the spindle position actual-value encoder and switches to the position control mode.
  • Page 754 S1: Spindles 18.2 Operating modes MD35210 $MA_GEAR_STEP_POSCTRL_ACCEL. At the point, which is determined by the braking start point calculation in Phase 1, the spindle decelerates to a standstill with the acceleration given in the following machine data: MD35210 $MA_GEAR_STEP_POSCTRL_ACCEL Phase 3 At the point, which is determined by the braking start point calculation in Phase 2, the spindle decelerates to a standstill with the acceleration given in the following machine data: MD35210 $MA_GEAR_STEP_POSCTRL_ACCEL...
  • Page 755: Spindle In Position" Signal For Tool Change

    S1: Spindles 18.2 Operating modes are set if the distance between the spindle actual position and the programmed position (spindle setpoint position) is less than the settings for the exact stop fine and coarse limits. This is defined in the machine data: MD36010 $MA_STOP_LIMIT_FINE MD36000 $MA_STOP_LIMIT_COARSE 18.2.5.4...
  • Page 756: Axis Mode

    S1: Spindles 18.2 Operating modes Setting the signal Requirements for output of signal DB31, ... DBX85.5 (spindle in position) are as follows: ● The referenced state of the spindle: DB31, ... DBX60.4/5 (referenced/synchronized 1/2) = 1 Note When positioning the spindle, the zero mark is automatically searched for. This is the reason that for an error-free sequence, the referenced signal is always available at the end of positioning movement.
  • Page 757 S1: Spindles 18.2 Operating modes ● Kinematic transformations (e.g. TRANSMIT) ● Path interpolation ● Traversing as positioning axis Further information R2: Rotary axes (Page 221) Requirements ● The same spindle motor is used for spindle mode and axis mode. ● The same position measurement system or separate position measurement systems can be used for spindle mode and axis mode.
  • Page 758 S1: Spindles 18.2 Operating modes ● Axis mode can be activated in all gear stages. If the actual position value encoder is installed on the motor (indirect measuring system), the positioning and contouring accuracy can vary for the different gear stages. ●...
  • Page 759: Implicit Transition To Axis Mode

    S1: Spindles 18.2 Operating modes Change to spindle mode The parameter set 1 ... 5 is selected for the active gear stage. The feedforward control is activated, except for tapping with compensating chuck, if the following applies: MD32620 $MA_FFW_MODE (feedforward control mode) ≠ 0 Parameter set Axis mode Spindle mode...
  • Page 760 S1: Spindles 18.2 Operating modes Output of auxiliary functions to PLC The implicit transition to axis mode can be notified to the PLC in the form of an auxiliary function output. Activation/deactivation The activation/deactivation of this functionality is performed via the machine data: MD35035 $MA_SPIND_FUNCTION_MASK (spindle functions) Value Meaning...
  • Page 761 S1: Spindles 18.2 Operating modes Configuration: MD35035 $MA_SPIND_FUNCTION_MASK, bit 20 = 1 Program code Comment N05 M3 S1000 N10 ... N15 POS[C]=77 : Before loading N15, an M70 intermediate block is generated in which the spindle is stopped, and M70 is output to the PLC. …...
  • Page 762: Initial Spindle State

    S1: Spindles 18.2 Operating modes Configuration: MD35035 $MA_SPIND_FUNCTION_MASK, bit 20 = 1 Program code Comment WHEN COND21==TRUE DO M3 S1000 WHEN COND22==TRUE DO POS[C]=270 ; Alarm 20141! 18.2.7 Initial spindle state Spindle basic setting The following machine data is used to specify a spindle mode as basic setting: MD35020 $MA_SPIND_DEFAULT_MODE Value Spindle basic setting...
  • Page 763: Tapping Without Compensating Chuck

    S1: Spindles 18.2 Operating modes 18.2.8 Tapping without compensating chuck 18.2.8.1 Function For tapping without compensating chuck, the traversing motion of the linear axis and the spindle are interpolated, closed-loop position controlled. This requires a position- controlled spindle with position measuring system. ①...
  • Page 764 S1: Spindles 18.2 Operating modes G332 <axis> <thread pitch> Meaning Tapping G331: The tapped hole is defined by the traversing motion of the axis (drilling depth) and the thread pitch. Effectiveness: Modal Retraction motion when tapping G332: Retraction motion must have the same pitch as when tapping (G331). The direction of rotation of the spindle is reversed automatically.
  • Page 765: Example: Tapping With G331 / G332

    S1: Spindles 18.2 Operating modes 18.2.8.3 Example: Tapping with G331 / G332 Program code Comment N10 SPOS[n]=0 ; Spindle: Position control mode ; Start position 0 degrees N20 G0 X0 Y0 Z2 ; Axes: Approach starting position N30 G331 Z-50 K-4 S200 ;...
  • Page 766: Example: Application Of The Second Gear-Stage Data Block

    S1: Spindles 18.2 Operating modes 18.2.8.5 Example: Application of the second gear-stage data block The switching thresholds of the second gear-stage data block for the maximum and minimum speed are evaluated for G331/G332 and when programming an S value for the active master spindle.
  • Page 767: Example: Programming Without Spos

    S1: Spindles 18.2 Operating modes Program code Comment N60 G331 Z-10 K5 S800 ; Tapping ; Gearbox stage cannot be changed, ; Monitoring the spindle speed, 800 rpm ; with gearbox stage data set 1: Gearbox stage 2 ; should be active => Alarm 16748 18.2.8.8 Example: Programming without SPOS Program code...
  • Page 768 S1: Spindles 18.2 Operating modes N113 SPOS=IC(0.001) Incrementally traverse the spindle in the closed-loop position controlled mode. By incrementally traversing the spindle in the closed-loop position controlled mode, the NC again evaluates interface signal DB31, ... DBX17.6 (invert M3/M4). From this block onward, when traversing the spindle, the direction of reversal based on the interface signal is active.
  • Page 769: Tapping With Compensating Chuck

    S1: Spindles 18.2 Operating modes 18.2.9 Tapping with compensating chuck 18.2.9.1 Function When tapping with compensating chuck (G63) the spindle is not interpolated with the linear axis, but is operated in the closed-loop speed controlled mode. The feedrate of the linear axis dependent on the spindle speed and the thread pitch must be calculated and explicitly programmed.
  • Page 770: Reference / Synchronize

    S1: Spindles 18.3 Reference / synchronize Syntax G63 <axis> <direction of rotation> <speed <feedrate> Meaning Tapping with compensating chuck G63: Effective: Non-modal Traversing distance/position of the geometry axis (X, Y or Z) at the end of the <Axis>: thread, e.g. Z50 Direction of spindle rotation: <Direction of rotation>:...
  • Page 771 S1: Spindles 18.3 Reference / synchronize The following functions are possible only with a synchronized spindle: ● Thread cutting ● Tapping without compensating chuck ● Axis programming For further information about synchronizing the spindle, see Section "R1: Referencing (Page 291)". Why reference? In order to ensure that the controller detects the exact machine zero when it is switched on, the controller must be synchronized with the position measurement system of the rotary axis.
  • Page 772 S1: Spindles 18.3 Reference / synchronize ● The spindle can be synchronized from the motion (after M3 or M4) using SPOS, M19 or SPOSA. The responses are as follows: – With SPOS=<Pos>, SPOS=DC(<Pos>) and SPOS=AC(<Pos>), the direction of motion is retained and the position is approached. –...
  • Page 773 S1: Spindles 18.3 Reference / synchronize MD34200 $MA_ENC_REFP_MODE = <value> <Value> Meaning The position is synchronized without entering a specific starting velocity/speed. As starting velocity to synchronize the position, the velocity from the following machine data is used: MD34040 $MA_REFP_VELO_SEARCH_MARKER (creep velocity) The zero mark is not automatically looked for, it has to be requested explicitly with the 0/1 edge of the NC/PLC interface signal: DB31, ...
  • Page 774 S1: Spindles 18.3 Reference / synchronize ● Constant cutting rate (G96, G961, G97, G971) ● Spindle actual speed display ● Axis mode ● Synchronous spindle setpoint coupling Resynchronizing the position measuring system for the spindle In the following cases, the spindle position measurement system must be resynchronized: ●...
  • Page 775: Configurable Gear Adaptations

    S1: Spindles 18.4 Configurable gear adaptations 18.4 Configurable gear adaptations 18.4.1 Gear stages for spindles and gear change change Why do we need gear stages? Gear stages are used on spindles to step down the speed of the motor in order to generate a high torque at low spindle speeds or to step up in order to maintain a high speed.
  • Page 776 S1: Spindles 18.4 Configurable gear adaptations MD35010 $MA_GEAR_STEP_CHANGE_ENABLE Value Meaning The spindle motor is attached to the spindle directly (1:1) or with a non-variable trans‐ mission ratio (basic setting). The machine data of the first gear stage is effective. Spindle motor with up to five gear stages. The gear stage change takes place: ●...
  • Page 777 S1: Spindles 18.4 Configurable gear adaptations Request gear stage change A gear stage change can be requested: ● In the part program using: – M40 S... Automatic gear stage selection to the programmed speed S... – M41 ... M45 Direct selection of gear stages 1 ... 5 –...
  • Page 778 S1: Spindles 18.4 Configurable gear adaptations Gear stage change Gear stage selection between two gear stages with specification of a maximum spindle speed is shown in the example below: Figure 18-3 Gear stage change with selection between two gear stages Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 779 S1: Spindles 18.4 Configurable gear adaptations Process sequence of the gear stage change If the new gear stage is preselected, the following sequence is implemented: 1. Changeover sequence The two following NC/PLC interface signals are set: DB31, ... DBX82.0-82.2 (setpoint gear stage A to C) DB31, ...
  • Page 780 S1: Spindles 18.4 Configurable gear adaptations Second gear stage data set The automatic gear stage change M40 can be extended by a second configurable gear stage data set. The second gear stage data set is used exclusively in connection with tapping without compensation chuck (G331, G332) so that an effective adjustment of spindle speed and motor torque can be achieved.
  • Page 781 S1: Spindles 18.4 Configurable gear adaptations The speed limitations are configured only once for each gear stage with the following machine data, independently of the different switching thresholds: Machine data Meaning MD35130 $MA_GEAR_STEP_MAX_VELO_LIMIT[n] Maximum speed of gear stage MD35140 $MA_GEAR_STEP_MIN_VELO_LIMIT[n] Minimum speed of gear stage For tapping without compensating chuck (G331, G332) the speed can be limited to the linear acceleration range of the motor additionally.
  • Page 782 S1: Spindles 18.4 Configurable gear adaptations Figure 18-4 Example for two gear stages with overlapping speed ranges for automatic gear stage change (M40) Note In the case of M40, the spindle must be in open-loop control mode for automatic gear stage selection with an S word.
  • Page 783 S1: Spindles 18.4 Configurable gear adaptations The programmed spindle speed (S...) then refers to this permanently defined gear stage: ● If a spindle speed is programmed and it is higher than the maximum speed of the permanently defined gear stage (MD35130 $MA_GEAR_STEP_MAX_VELO_LIMIT), then the speed is decreased to this limit and the following NC/PLC interface signal is set: DB31, ...
  • Page 784 S1: Spindles 18.4 Configurable gear adaptations The gear stage is not changed if: ● The spindle is positioned via synchronized actions. ● The spindle is traversed in the axis mode. Note For further details, please refer to the section "Specification of a gear stage in part program". Exception: The block change is not affected by the specification of a gear stage in synchronized actions.
  • Page 785 S1: Spindles 18.4 Configurable gear adaptations NC stop during gear stage change The spindle cannot be stopped with NC/PLC IS: DB21, ... DBX7.4 (NC stop) ● The spindle is not yet in oscillation mode for the gear stage change. ● NC/PLC IS: DB31, ...
  • Page 786: Spindle Gear Stage 0

    S1: Spindles 18.4 Configurable gear adaptations Special features The following points must be observed on gear stage change: ● The gear stage change is not terminated by selecting NC/PLC IS: DB31, ... DBX20.1 (run-up switchover to V/f mode). Setpoint 0 is output. The gear stage change is acknowledged as usual via the NC/PLC interface signal: DB31, ...
  • Page 787 S1: Spindles 18.4 Configurable gear adaptations Effects on the gear stage change Gear stage change in the part program The actual gear stage signaled from the PLC is read by the NC when starting a part program. If, at this instant in time, a value of "0" is read for the actual gear stage, then the next gear stage change is executed and the gear stage change dialog is performed by the PLC.
  • Page 788: Determining The Spindle Gear Stage

    S1: Spindles 18.4 Configurable gear adaptations 5. N05 (part program, refer below) is executed: The gear stage is changed to gear stage 1. From the NC: – the following NC/PLC-interface signal is set: DB31, ... DBX82.3 (change over gear stage) –...
  • Page 789: Parameter Set Selection During Gear Step Change

    S1: Spindles 18.4 Configurable gear adaptations $AC_SGEAR[<n>] Active spindle gear stage $AC_SGEAR reads the setpoint gear stage in the main run. Value range: 1 ... 5 The data set for the spindle is activated corresponding to this gear stage. Note For a block search, the actual gear stage ($VC_SGEAR[<n>]) can differ from the setpoint gear stage ($AC_SGEAR[<n>]) as, during the block search, no gear stage change takes place.
  • Page 790 S1: Spindles 18.4 Configurable gear adaptations MD35590 $MA_PARAMSET_CHANGE_ENABLE (parameter set change possible) Value Meaning In-system parameter set selection The parameter sets of the servo are assigned permanently. The following applies: ● For axes and spindles in the axis mode, the first parameter set is active in principle. Exception: For G33, G34, G35, G331 and G332, for the axes involved, the parameter set with the following number is activated:...
  • Page 791 S1: Spindles 18.4 Configurable gear adaptations Spindle in axis mode If the spindle is in axis mode, the parameter set index "0" is selected in the servo (note MD35590 $MA_PARAMSET_CHANGE_ENABLE!). The gear stage change behavior depends on the setting in the machine data: MD35014 $MA_GEAR_STEP_USED_IN_AXISMODE (gear stage for axis mode in M70) If there is no gear stage configured for axis mode (MD35014 = 0), no implicit gear stage change takes place in M70 (default setting!).
  • Page 792: Intermediate Gear

    S1: Spindles 18.4 Configurable gear adaptations 18.4.5 Intermediate gear Application and functions A configured intermediate gear can be used to adapt a variety of rotating tools. The intermediate gear on the tool side has a multiplicative effect on the motor/load gearbox. It is set via machine data: MD31066 $MA_DRIVE_AX_RATIO2_NUMERA (intermediate gear numerator) MD31064 $MA_DRIVE_AX_RATIO2_DENOM (intermediate gear denominator)
  • Page 793: Nonacknowledged Gear Step Change

    S1: Spindles 18.4 Configurable gear adaptations Changeover Changeover to a new transmission ratio is performed immediately with the aid of the "Activate machine data" function. From a technological viewpoint, the associated mechanical changeover process takes some time, since, in mechanical terms, a different intermediate gear with rotating tool is being installed.
  • Page 794: Gear Step Change With Oscillation Mode

    S1: Spindles 18.4 Configurable gear adaptations ● Switch over skip block, switch over Dry Run ● Editing in the modes ● Compensation block alarms ● Overstore ● Rapid retraction with G33, G34, G35 ● Subprogram level abort, subprogram abort Response after POWER ON The active gear stage on the machine can be specified by the PLC after POWER ON and in the RESET state of the NC.
  • Page 795 S1: Spindles 18.4 Configurable gear adaptations Commissioning: NC/PLC interface signals ● DB31, ... DBX16.0 - 2 (actual gear stage) ● DB31, ... DBX16.3 (gear is changed) ● DB31, ... DBX18.4 (oscillation controlled by the PLC) ● DB31, ... DBX18.5 (oscillation enable) ●...
  • Page 796 S1: Spindles 18.4 Configurable gear adaptations Status feedback signals ● DB31, ... DBX84.6 == 1 (oscillation mode) ● DB31, ... DBX82.3 == 1 (changeover gear stage) ● DB31, ... DBX82.0 - 2 == <set gear stage> ● DB31, ... DBX61.5 == 0 (position controller active) The load gear can now "disengage".
  • Page 797 S1: Spindles 18.4 Configurable gear adaptations The motor accelerates with the oscillation acceleration to the oscillation speed in the specified setpoint direction of rotation: ● MD35410 $MA_SPIND_OSCILL_ACCEL (acceleration when oscillating) ● MD35400 $MA_SPIND_OSCILL_DES_VELO (oscillation speed) Reversing the direction of rotation The oscillation times and switching over the direction of rotation must be realized in the PLC user program.
  • Page 798 S1: Spindles 18.4 Configurable gear adaptations Example of the signal flow As a result of the newly programmed S value S1300 in the NC program, the NC identifies the necessity to switch over the gear stage (1st → 2nd gear stage), and requests the enable from the PLC: ●...
  • Page 799: Gear Stage Change At Fixed Position

    S1: Spindles 18.4 Configurable gear adaptations The gear stage at the machine was switched over. The PLC user program signals the switchover to the NC and deletes the oscillation mode enable: ● PLC → NC: DB31, ... DBX16.0 - 2 = 2 (actual gear stage) ●...
  • Page 800 S1: Spindles 18.4 Configurable gear adaptations The "Gear stage change at fixed position" function supports the "directed gear stage change" of load gearboxes that need to be activated in a different way than the NC. The gear stage change can in this case only be performed at a defined spindle position. An oscillation movement as required by conventional load gearboxes is thus no longer necessary.
  • Page 801 S1: Spindles 18.4 Configurable gear adaptations ● Mechanical switchover of the gear stage on the machine. No oscillation movement is required from the drive. NC/PLC IS: DB31, ... DBX18.5 (oscillation enable) DB31, ... DBX18.4 (oscillation via PLC) should not be set. In principle, oscillation movement is still possible at this point.
  • Page 802 S1: Spindles 18.4 Configurable gear adaptations GSC at fixed position Typical time sequence for the gear stage change at fixed position: With the programming of S1300, NC detects a new gear stage (second gear stage), sets IS DB31, ... DBX84.5 (positioning mode) and blocks processing for the next part program block (= internal feed disable*).
  • Page 803 S1: Spindles 18.4 Configurable gear adaptations The new gear stage is engaged. The PLC user transfers the new (actual) gear stage to the NC and sets IS DB31, ... DBX16.3 (gear is changed). The NC then retracts IS DB31, ... DBX82.3 (change gear), releases the next part program block for processing, and accelerates the spindle to the new S value (S1300).
  • Page 804 S1: Spindles 18.4 Configurable gear adaptations MD35300 $MA_SPIND_POSCTRL_VELO The NC/PLC interface signals "Spindle override"/"Feedrate override" at DB31, ... DBX17.0=0: DB31, ... DBB19) as well as: DB31, ... DBX17.0=1: DB31, ... DBB0 are effective as normal for positioning. The positioning speed can be changed proportionally through the program statement OVRA[Sn].
  • Page 805: Configurable Gear Step In M70

    S1: Spindles 18.4 Configurable gear adaptations The determination of the transition condition has an effect firstly on the gear stage change time and secondly on the accuracy of the approach to the preset gear stage change position. Block change The block change is stopped and the machining blocks are not started until the gear stage has been changed by the PLC (DB31, ...
  • Page 806 S1: Spindles 18.4 Configurable gear adaptations Function If the function is activated, a predefined gear stage is loaded automatically during transition to axis mode. The gear stage change is integrated into the M70 process and occurs after spindle deceleration and before the loading of the servo parameter set with index 0 (note MD35590 $MA_PARAMSET_CHANGE_ENABLE!).
  • Page 807: Suppression Of The Gear Stage Change For Dryrun, Program Test And Serupro

    S1: Spindles 18.4 Configurable gear adaptations When changing from axis mode to spindle mode, the gear stage loaded with M70 remains activated. The gear stage which is activated in spindle mode prior to M70 is not automatically loaded again. The servo parameter set is changed from parameter set 1 (index 0) to parameter sets 2 ...
  • Page 808 S1: Spindles 18.4 Configurable gear adaptations Bit 1 = 1 For active program test / SERUPRO function - for part program blocks - a gear stage change is suppressed with M40, M41 to M45, programming via FC18 and synchronized actions. DryRun, program testing and SERUPRO Bit 2 = 0 Gear stage change for programmed gear stage is not performed subsequently on REPOS...
  • Page 809: Additional Adaptations To The Spindle Functionality That Can Be Configured

    S1: Spindles 18.5 Additional adaptations to the spindle functionality that can be configured Boundary conditions If the gear stage change is suppressed, the output spindle speed moves within the speed range specified by the current gear stage. The following restrictions apply to the subsequent activation of a gear stage change with REPOS: ●...
  • Page 810 S1: Spindles 18.5 Additional adaptations to the spindle functionality that can be configured MD35035 $MA_SPIND_FUNCTION_MASK, <bit> = <value> <Bit> <Val‐ Meaning ue> 0 ... 2 Activation: Gear stage change behavior for test feedrate (DryRun), program test and SERUPRO See "Suppression of the gear stage change for DryRun, program test and SERU‐ PRO (Page 807)".
  • Page 811: Selectable Spindles

    S1: Spindles 18.6 Selectable spindles <Bit> <Val‐ Meaning ue> Deactivating the axis-specific NC/PLC interface signal DB31, ... DBX17.6 (invert M3/M4) to reverse the direction of rotation of the spindle for tapping without compensating check (G331, G332). Interface signal DB31, ... DBX17.6 active. Note ●...
  • Page 812 S1: Spindles 18.6 Selectable spindles Setting data Spindle number converter To parameterize the channel-specific spindle number converter, each logical spindle number or programmed address extension - with which a spindle (channel spindle) is addressed in the NC program - is assigned a physical spindle number (machine axis). SD42800 $SC_SPIND_ASSIGN_TAB[<logical spindle number>] = <physical spindle number>...
  • Page 813 S1: Spindles 18.6 Selectable spindles Example Assignment, spindle number and machine axis: MD35000 $MA_SPIND_ASSIGN_TO_MACHAX [AX4] = 1 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX [AX5] = 2 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX [AX6] = 3 MD35000 $MA_SPIND_ASSIGN_TO_MACHAX [AX7] = 5 Accepting a machine axis in a channel: MD20070 $MC_AXCONF_MACHAX_USED[0] = 4 MD20070 $MC_AXCONF_MACHAX_USED[1] = 5 MD20070 $MC_AXCONF_MACHAX_USED[2] = 6 MD20070 $MC_AXCONF_MACHAX_USED[3] = 7...
  • Page 814 S1: Spindles 18.6 Selectable spindles ; Notice: physical spindle 3 has now been assigned twice. ; When programming logical spindles 2 and 3, physical spindle 3 ; is always addressed. ; In the basic machine displays, both spindles rotate. SETMS(2) ;...
  • Page 815: Programming

    S1: Spindles 18.7 Programming 18.7 Programming 18.7.1 Programming from the part program Programming statements Statement Description Master spindle is the spindle specified in the following machine data: SETMS: MD20090 $MC_SPIND_DEF_MASTER_SPIND (position of deletion of the master spin‐ dle in the channel) The spindle with the number <n>...
  • Page 816 S1: Spindles 18.7 Programming Statement Description Spindle positioning for the master spindle SPOSA=...: Spindle positioning for spindle number <n> SPOSA[<n>]=...: The block change is executed immediately. Spindle positioning continues, regardless of further part program processing, until the spindle has reached its position. The direction of motion is retained for positioning while in motion and the position ap‐...
  • Page 817 S1: Spindles 18.7 Programming Statement Description Programmable minimum spindle speed limitation for the master spindle G25 S...: for spindle number <n> G25 S<n>: Programmable maximum spindle speed limitation for the master spindle G26 S...: for spindle number <n> G26 S<n>: Programmable maximum spindle speed limitation with G96, G961, G97 for the master spindle LIMS=...:...
  • Page 818 S1: Spindles 18.7 Programming Statement Description With SPI(<n>) a spindle number is converted into the data type AXIS according to SPI(<n>): machine data MD35000 $MA_SPIND_ASSIGN_TO_MACHAX[ ] SPI is used if axis functions are to be programmed with the spindle. The following commands are possible with SPI: ●...
  • Page 819: Programming Via Synchronized Actions

    S1: Spindles 18.7 Programming 18.7.2 Programming via synchronized actions Description M functions M40 to M45 can also be programmed in synchronized actions. The following must be observed: ● Programming of M40 ... M45 in the part program has no effect on the current status of the automatic gear step change of synchronized actions, and vice versa.
  • Page 820: Programming Using Nc/Plc Interface Signals

    S1: Spindles 18.7 Programming 18.7.4 Programming using NC/PLC interface signals 18.7.4.1 Function Note The function is only available when using SINUMERIK Operate! The following jobs/tasks can be issued to a spindle from the PLC user program using the job interface DB31, … DBX30.0 - 4: ●...
  • Page 821: Commissioning: Machine Data

    S1: Spindles 18.7 Programming Channel assignment A spindle job is processed in that particular channel, which is assigned to the spindle at the instant of the job. The channel, which is assigned to the spindle, can be determined using the following NC/PLC interface signal: DB31, ...
  • Page 822: Commissioning: Nc/Plc Interface Signals

    S1: Spindles 18.7 Programming Value Meaning A cutting rate is entered as setpoint in the following spindle-specific setting data via the NC program, synchronized actions or FC18 if the "Constant cutting rate" func‐ tion is active (G96, G961, G962): SD43202 $SA_SPIND_CONSTCUT_S[<spindle>] Note S values that are not programmed cutting rate values are not transferred.
  • Page 823: Entering A Constant Cutting Rate (Sd43202)

    S1: Spindles 18.7 Programming SD43200 $SA_SPIND_S[<spindle>] (speed when the spindle is started via the PLC job interface) Writing a new speed value In the following situations, a new speed value is written to the setting data: ● A speed setpoint is entered via NC program, synchronized action or FC18 Supplementary conditions: –...
  • Page 824: Entering The Spindle Speed Type For The Master Spindle (Sd43206)

    S1: Spindles 18.7 Programming System of units When writing the setting data, the value is interpreted corresponding to the following secondary conditions: ● Writing via NC program or synchronized action: – G700 active: feet/min – G710 active: m/min – G70, G71 active: Depending on the setting in MD10240 $MN_SCALING_SYSTEM_IS_METRIC ●...
  • Page 825: External Programming (Plc, Hmi)

    S1: Spindles 18.7 Programming 18.7.5 External programming (PLC, HMI) SD43300 and SD42600 The revolutional feedrate behaviour can be selected externally via the axial setting data: SD43300 $SA_ASSIGN_FEED_PER_REV_SOURCE (Rotational feedrate for spindles) in JOG operating mode using the channel-specific setting data SD42600 $SC_JOG_FEED_PER_REV_SOURCE (Revolutional fedrate control in JOG mode) The following settings can be made via the setting data: >0:...
  • Page 826: Spindle Monitoring

    S1: Spindles 18.8 Spindle monitoring 18.8 Spindle monitoring 18.8.1 Permissible speed ranges The permissible speed range of a spindle results from the parameterized or programmed speed limit values and the active spindle function (G94, G95, G96, G961, G97, G971, G33, G34, G35, G331, G332, etc.).
  • Page 827: Axis/Spindle Stationary

    S1: Spindles 18.8 Spindle monitoring 18.8.2 Axis/spindle stationary Functions such as tool change, open machine doors, path feedrate enable, etc. are only possible at the machine when the spindle is stationary. Function The "axis/spindle stationary" state is reached if a setpoint is no longer generated and the spindle actual speed falls below the configured threshold value for "axis/spindle stationary": MD36060 $MA_STANDSTILL_VELO_TOL (max.
  • Page 828: Minimum / Maximum Speed Of The Gear Stage

    S1: Spindles 18.8 Spindle monitoring Spindle setpoint speed The spindle speed setpoint is derived from the programmed speed taking into account the spindle override and the active limits. If the programmed speed is limited or increased, this is displayed using DB31, ... DBX83.1 (speed setpoint limited) or DB31, ...
  • Page 829: Diagnosis Of Spindle Speed Limitation

    S1: Spindles 18.8 Spindle monitoring The minimum gear stage speed is effective only in speed mode and can only be undershot by: ● Spindle override 0% ● M5 ● S0 ● DB31, ... DBX4.3 (spindle stop) ● DB31, ... DBX2.1 (withdraw controller enable) ●...
  • Page 830 S1: Spindles 18.8 Spindle monitoring Further information The detailed description of the system variables can be found in: List Manual, System Variables NC/PLC interface signals The limit or increase of the spindle speed is signaled with the following NC/PLC interface signals: ●...
  • Page 831: Maximum Spindle Speed

    S1: Spindles 18.8 Spindle monitoring Program code N10 IDS=2 WHENEVER TRUE DO $R11=$AC_SMAXVELO_INFO[1] N15 IDS=3 WHENEVER TRUE DO $R12=$AC_SMINVELO[1] N20 IDS=4 WHENEVER TRUE DO $R13=$AC_SMINVELO_INFO[1] N25 IDS=5 WHENEVER TRUE DO $R14=$AC_SPIND_STATE[1] See also Spindle in setpoint range (Page 827) 18.8.6 Maximum spindle speed Maximum spindle speed: parameterizable machine-related limit value The maximum machine-dependent spindle speed –...
  • Page 832: Maximum Encoder Limit Frequency

    S1: Spindles 18.8 Spindle monitoring Note Rotary axis / spindle If a spindle is also temporarily operated as a rotary axis, alarm 22100 "Chuck speed exceeded" is displayed if: "Actual speed of the rotary axis" > MD35100 $MA_SPIND_VELO_LIMIT (maximum spindle speed) + MD35150 $MA_SPIND_DES_VELO_TOL (spindle speed tolerance value) Remedy: Adjust the maximum spindle speed to the maximum rotary axis speed during rotary operation:...
  • Page 833 S1: Spindles 18.8 Spindle monitoring Maximum encoder frequency exceeded. If the spindle speed reaches a speed (large S value programmed), which exceeds the maximum encoder limit frequency (the maximum mechanical speed limit of the encoder must not be exceeded), the synchronization is lost. The spindle continues to rotate, but with reduced functionality.
  • Page 834: End Point Monitoring

    S1: Spindles 18.8 Spindle monitoring 18.8.8 End point monitoring End point monitoring During positioning (the spindle is in positioning mode), the system monitors the distance from the spindle (with reference to the actual position) to the programmed spindle position setpoint (end point).
  • Page 835: M40: Automatic Gear Stage Selection For Speeds Outside The Configured Switching Thresholds

    S1: Spindles 18.8 Spindle monitoring DB31, ... DBX60.7 and DB31, ... DBX60.6 (position reached with exact stop coarse / fine) The two limit values defined by machine data: MD36000 $MA_STOP_LIMIT_COARSE (Exact stop limit coarse) MD36010 $MA_STOP_LIMIT_FINE (Exact stop limit fine) are output to the PLC using NC/PLC IS: DB31, ...
  • Page 836 S1: Spindles 18.8 Spindle monitoring In this case, a distinction is made between the following cases: ● Programmed speed too high The programmed speed is higher than the configured maximum speed of the numerically largest gear stage: S... > MD35110 $MA_GEAR_STEP_MAX_VELO[<n>] In this case, the highest gear stage is selected (according to MD35090 $MA_NUM_GEAR_STEPS).
  • Page 837: Spindle With Smi 24 (Weiss Spindle)

    S1: Spindles 18.9 Spindle with SMI 24 (Weiss spindle) Part program: Program code Comment N15 S3500 M3 ; S3500 is greater than MD35110 of the 2nd gear stage. The 2nd gear stage is selected. N50 S0 M3 ; Spindle is stopped, S0 does not request a gear stage change (special handling, S0).
  • Page 838: Sensor Data

    S1: Spindles 18.9 Spindle with SMI 24 (Weiss spindle) Requirement ● The spindle is connected to the drive via Sensor Module SMI 24 using DRIVE-CLiQ. ● Drive telegram 139 is configured for the spindle. Note Drive telegram 139 In principle, a spindle with Sensor Module SMI 24 can also be operated with another drive telegram.
  • Page 839 S1: Spindles 18.9 Spindle with SMI 24 (Weiss spindle) System data: Sensor data Sensor data can be read into the control via the following system data: Meaning System variable NC/PLC inter‐ OPI variables Drive param‐ $VA_ face eters DB31, ... Sensor configuration MOT_SENSOR_CONF[<axis>] DBB132,...
  • Page 840: Clamped State

    S1: Spindles 18.9 Spindle with SMI 24 (Weiss spindle) 18.9.3 Clamped state Sensor S1 supplies an analog voltage value 0 V - 10 V depending on the position of the clamping device. The voltage value is available in the system data for evaluation of the clamped state on the user side.
  • Page 841: Additional Drive Parameters

    S1: Spindles 18.9 Spindle with SMI 24 (Weiss spindle) Context: State value, voltage range and speed limit State value Clamped state Voltage range Speed limit Upper limit Lower limit Sensor S1 not available or state values inac‐ tive State initialization running Released with signal (error state) p5041[0] + p5040 Released...
  • Page 842: Boundary Conditions

    S1: Spindles 18.11 Examples 18.10 Boundary conditions 18.10.1 Changing control parameters For spindles that are not in position-controlled mode, machine data changes also take effect when the spindle is not stationary with the NEWCONF command. In the case of changes to control parameters, speed setpoint jumps may occur when the new values take effect.
  • Page 843: Data Lists

    S1: Spindles 18.12 Data lists N50 M19** ; 1500 N60 G94 G331 Z10 S300 ; 300 N70 M42 ; 300 N80 M4 ; 300 N90 M70 ; 300 N100 M3 M40 ; 300 N999 M30 f (PlanAxPosPCS): The speed depends on the current position of the transverse axis in the workpiece coordinate system.
  • Page 844: Axis/Spindlespecific Machine Data

    S1: Spindles 18.12 Data lists 18.12.1.3 Axis/spindlespecific machine data Number Identifier: $MA_ Description 30300 IS_ROT_AX Rotary axis 30310 ROT_IS_MODULO Modulo conversion 31044 ENC_IS_DIRECT2 Encoder on intermediate gear 31050 DRIVE_AX_RATIO_DENOM Load gear denominator 31060 DRIVE_AX_RATIO_NUMERA Load gear numerator 31064 DRIVE_AX_RATIO2_DENOM Intermediate gear denominator 31066 DRIVE_AX_RATIO2_NUMERA Intermediate gear numerator...
  • Page 845: Setting Data

    S1: Spindles 18.12 Data lists Number Identifier: $MA_ Description 35122 GEAR_STEP_MIN_VELO2[n] 2nd gear stage data set: Minimum speed for automatic gear stage change 35130 GEAR_STEP_MAX_VELO_LIMIT[n] Maximum speed of gear stage 35135 GEAR_STEP_PC_MAX_VELO_LIMIT[n] Maximum speed of gear stage in position control 35140 GEAR_STEP_MIN_VELO_LIMIT[n] Minimum speed of gear stage...
  • Page 846: Axis/Spindle-Specific Setting Data

    S1: Spindles 18.12 Data lists Number Identifier: $SC_ Description 42930 WEAR_SIGN Invert sign of all wear values 42940 TOOL_LENGTH_CONST Retain the assignment of tool length components when changing the machining plane (G17 to G19) 18.12.2.2 Axis/spindle-specific setting data Number Identifier: $SA_ Description 43200 SPIND_S...
  • Page 847: S3: Synchronous Spindle

    S3: Synchronous spindle 19.1 Brief description 19.1.1 Function The "Synchronous spindle" function can be used to couple two spindles with synchronous position or speed. One spindle is defined as leading spindle (LS), the second spindle is then the following spindle (FS). Speed synchronism: with k = 1, 2, 3, ...
  • Page 848 S3: Synchronous spindle 19.1 Brief description Selecting/de-selecting Part program commands are used to select/deselect the synchronous operation of a pair of synchronous spindles. Figure 19-1 Synchronous operation: On-the-fly workpiece transfer from spindle 1 to spindle 2 Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 849: Synchronous Mode

    S3: Synchronous spindle 19.1 Brief description Figure 19-2 Synchronous operation: Polygonal turning 19.1.2 Synchronous mode Description <axial expression>: can be: - Axis name - Spindle name <Axis name>: C (if spindle has the name "C" in axis operation.) <spindle name>: Sn, SPI(n) where n = spindle number <Spindle number>: 1, 2, ...
  • Page 850 S3: Synchronous spindle 19.1 Brief description Note that one spindle is always the master and the number of couplings results from the number of axes less the master. Options in synchronous mode The following functions are available for synchronous mode: ●...
  • Page 851 S3: Synchronous spindle 19.1 Brief description Separate following spindle interpolator The separate following spindle interpolator allows a number of following spindles from different channels or from another NCU to be coupled as defined by the user to a single leading spindle. The following spindle interpolator is ●...
  • Page 852 S3: Synchronous spindle 19.1 Brief description Transformation ratio The transformation ratio is programmed with separate numerical values for numerator and denominator (transformation ratio parameters). It is therefore possible to specify the transformation ratio very exactly, even with rational numbers. In general: = transformation ratio parameter for numerator Transformation ratio parameters for Ü...
  • Page 853 S3: Synchronous spindle 19.1 Brief description Coupling characteristics The following characteristics can be defined for every synchronous spindle coupling: ● Block change behavior The condition to be fulfilled for a block change can be defined on activation of synchronous operation or on alteration of the transformation ratio or the defined angular offset when the coupling is active: –...
  • Page 854 S3: Synchronous spindle 19.1 Brief description Superimposed motion In synchronous operation, the synchronous spindle copies the movement of the leading spindle in accordance with the programmed transformation ratio. At the same time, the synchronous spindle can also be traversed with overlay so that the LS and FS can operate at a specific angular position in relation to one another.
  • Page 855: Prerequisites For Synchronous Mode

    S3: Synchronous spindle 19.1 Brief description $VA_COUP_OFFS[S2] ; actual value position offset approx. 77° $AA_COUP_CORR[S2] ; correction value = 4° 19.1.3 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.
  • Page 856: Selecting Synchronous Mode For A Part Program

    S3: Synchronous spindle 19.1 Brief description Cross-channel coupling The LS can be located in any channel. ● The LS can be exchanged between channels by means of "Axis exchange". ● When several following spindles are coupled to one leading spindle, the dynamic response of the coupling is determined by the weakest response as a function of the coupling factor.
  • Page 857 S3: Synchronous spindle 19.1 Brief description Determine current coupling status The $AA_COUP_ACT[<axial expression>] axial system variable can be used in the NC part program to specify the current coupling status for the specified axis/spindle (see Section "Axial system variables for synchronous spindle (Page 869)"). As soon as the synchronous spindle coupling is active for the following spindle, bit 2 must be "1"...
  • Page 858: Deselecting The Synchronous Mode For The Part Program

    S3: Synchronous spindle 19.1 Brief description Example: LS and FS are already coupled in a friction lock via a workpiece after power ON. 19.1.5 Deselecting the synchronous mode for the part program Open coupling (COUPOF, COUPOFS) Synchronous mode between the specified spindles is canceled by the parts program instruction COUPOF.
  • Page 859: Controlling Synchronous Spindle Coupling Via Plc

    S3: Synchronous spindle 19.1 Brief description 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 ). The current speed can be read with system variable $AA_S in the NC parts program.
  • Page 860 S3: Synchronous spindle 19.1 Brief description IS "Disable synchronization" (DB31, ... DBX31.5). ● For IS "Disable synchronization" (DB31, ... DBX31.5) = 0, the position offset is traversed through as before. ● For IS "Disable synchronization" (DB31, ... DBX31.5) = 1, only the continuous velocity synchronism is established.
  • Page 861 S3: Synchronous spindle 19.1 Brief description Program code Comment ; are set and the block change ; is enabled. N54 M0 N57 COUPOF(S2,S1) N99 M30 Reset and recovery Resetting the IS "Disable synchronization" (DB31, ... DBX31.5) has no effect on the following spindle offset.
  • Page 862: Monitoring Of Synchronous Operation

    S3: Synchronous spindle 19.1 Brief description 19.1.7 Monitoring of synchronous operation Fine/coarse synchronism In addition to conventional spindle monitoring operations, synchronous operation between the FS and LS is also monitored in synchronous mode. IS "Fine synchronism" (DB31, ... DBX98.0) or IS "Coarse synchronism" (DB31, ... DBX98.1) is transmitted to the PLC to indicate whether the current position (AV, DV) or actual speed (VV) of the following spindle lies within the specified tolerance window.
  • Page 863 S3: Synchronous spindle 19.1 Brief description The size of the tolerance windows is set with machine data of the FS. Reaching of the synchronism is influenced by the following factors: ● AV, DV: Position variance between FS and LS ● VV: Difference in speed between FS and LS Figure 19-3 Synchronism monitoring with COUPON and synchronism test mark WAITC with synchronization on a turning leading spindle...
  • Page 864: Programming

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

    S3: Synchronous spindle 19.2 Programming See also Definition (COUPDEF) (Page 865) Switch the coupling (COUPON, COUPONC, COUPOF) on and off (Page 868) 19.2.1 Definition (COUPDEF) Programmable couplings The number of couplings can be programmed as often as desired depending on the axes available.
  • Page 866 S3: Synchronous spindle 19.2 Programming COARSE: Block change in response to "Coarse synchronism" IPOSTOP: Block change for IPOSTOP (i.e. after setpoint-end synchronism) The block change response is specified as a character string (i.e. with quotation marks). The block change response can be specified simply by writing the letters in bold print. The remaining letters can be entered to improve legibility of the part program but they are not otherwise significant.
  • Page 867 S3: Synchronous spindle 19.2 Programming COUPDEL (FS, LS) Note COUPDEL impacts on an active coupling, deactivates it and deletes the coupling data. Alarm 16797 is therefore meaningless. The following spindle adopts the last speed. This corresponds to the behavior associated with COUPOF(FS, LS).
  • Page 868: Switch The Coupling (Coupon, Couponc, Coupof) On And Off

    S3: Synchronous spindle 19.2 Programming Stop and block change If "Stop" has been activated for the cancellation period of the axis enables for the leading or following spindle, then the last setpoint positions with the setting of the axis enables from the servo drive are approached again.
  • Page 869: Axial System Variables For Synchronous Spindle

    S3: Synchronous spindle 19.2 Programming If continuous path control (G64) is programmed, a non-modal stop is generated internally in the control. Examples: COUPDEF (S2, S1, 1.0, 1.0, "FINE, "DV") COUPON (S2, S1, 150) COUPOF (S2, S1, 0) COUPDEL (S2, S1) 1.
  • Page 870: Automatic Selection And Deselection Of Position Control

    S3: Synchronous spindle 19.2 Programming 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 871: Configuration

    S3: Synchronous spindle 19.3 Configuration 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 Position control OFF...
  • Page 872: Response Of The Synchronous-Spindle Coupling For Nc Start

    S3: Synchronous spindle 19.3 Configuration Number Name: $MC_ Function MD21310 COUPLING_MODE_1 Coupling type ● Actual value coupling ● Setpoint value coupling ● Speed coupling Note: No change protection , the coupling type can be changed for deactivated coupling with the COUPDEF command. MD21330 COUPLE_RESET_ Behavior of the synchronous-spindle coupling with regard to NC Start, NC Stop...
  • Page 873: Behavior Of The Synchronous-Spindle Coupling For Reset

    S3: Synchronous spindle 19.4 Special features 19.3.2 Behavior of the synchronous-spindle coupling for reset The behavior of the synchronous operation for reset and at program end depends on the setting in the following machine data: Configured synchronous-spindle coupling Response MD21330 $MC_COUPLE_RE‐ MD20110 $MC_RE‐...
  • Page 874 S3: Synchronous spindle 19.4 Special features Speed and acceleration limits The speed and acceleration limits of the spindles operating in synchronous mode are determined by the "weakest" spindle in the synchronous spindle pair. The current gear stages, the programmed acceleration and, for the leading spindle, the effective position control status (On/Off) are taken into account for this purpose.
  • Page 875: Restore Synchronism Of Following Spindle

    S3: Synchronous spindle 19.4 Special features DB31, ... DBX31.4 = 0 → 1 (resynchronization) If the programmed offset is restored (see Section "Restore synchronism of following spindle (Page 875)"). Block search when synchronous operation is active Note When synchronous operation is active for a block search, then it is recommended that only block search type 5, "Block search via program test"...
  • Page 876 S3: Synchronous spindle 19.4 Special features Enable resynchronization Setting the enabling signals closes the coupling at the current actual positions. The two following NC/PLC interface signals are set: DB31, ... DBX98.1 (coarse synchronism) DB31, ... DBX98.0 (fine synchronism) The following requirements must be fulfilled for resynchronization to work: ●...
  • Page 877: Synchronous Mode And Nc/Plc Interface Signals

    S3: Synchronous spindle 19.4 Special features Program code Comment N65 M0 ; (Note tolerances, see above) Note The axis enable signals can be canceled to interrupt a movement overlaid on the following spindle (e.g. SPOS). This component of the movement is not affected by IS "NC/PLC interface signal"...
  • Page 878 S3: Synchronous spindle 19.4 Special features Controller enable (DB31, ... DBX2.1) LS: Resetting the "controller enable" during synchronous operation If the controller enable of the LS is reset during synchronous operation for active setpoint coupling, a control-internal switching is made to the actual value coupling. If the controller enable is reset while the LS is traversing, the LS is stopped and an alarm issued.
  • Page 879 S3: Synchronous spindle 19.4 Special features ⇒ Cyclic: Set position = actual position Note DB31, ... DBX1.4 (follow-up operation) is relevant only for DB31, ... DBX2.1 == 0 (controller enable) Position measuring system 1/2 (DB31, ... DBX1.5 and 1.6) Switchover of the position measuring system for the FS and LS is possible during synchronous operation.
  • Page 880 S3: Synchronous spindle 19.4 Special features Delete S value (DB31, ... DBX16.7) LS: Delete S value during synchronous operation If "delete S value" is set, the LS is braked to a standstill using a ramp. Synchronous operation remains active. FS: Delete S value during synchronous operation The control interface signal does not have any function for the FS in synchronous operation.
  • Page 881: Differential Speed Between Leading And Following Spindles

    S3: Synchronous spindle 19.4 Special features NC Start (DB21, ... DBX7.1) (See Section "Response of the synchronous-spindle coupling for NC Start (Page 872)") Note NC Start after NC Stop does not deselect synchronous operation. 19.4.4 Differential speed between leading and following spindles When does a differential speed occur? A differential speed develops, e.g.
  • Page 882 S3: Synchronous spindle 19.4 Special features Example Program code Comment N01 M3 S500 ; S1 rotates in the positive direction with 500 rpm ; the master spindle is spindle 1 N02 M2=3 S2=300 ; S2 rotates in the positive direction with 300 rpm N05 G4 F1 N10 COUPDEF(S2,S1,-1) ;...
  • Page 883 S3: Synchronous spindle 19.4 Special features Preconditions 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. Otherwise, the system may suffer from reduced quality, for example, rigid tapping without a compensating chuck G331/G332.
  • Page 884 S3: Synchronous spindle 19.4 Special features Read offsets of following spindle The current offset always changes when a differential speed is programmed. The current offset can be read at the setpoint end with $AA_COUP_OFFS[Sn] and at the actual value end with $VA_COUP_OFFS[Sn].
  • Page 885 S3: Synchronous spindle 19.4 Special features Resynchronize spindle 1/2 (DB31, ... DBX16.4 and 16.5) The IS "Resynchronize spindle 1/2" (DB31, ... DBX16.4/16.5) are not locked. Any positional offset is not compensated automatically by the coupling. Invert M3/M4 (DB31, ... DBX17.6) IS "Invert M3/M4"...
  • Page 886: Behavior Of Synchronism Signals During Synchronism Correction

    S3: Synchronous spindle 19.4 Special features 19.4.5 Behavior of synchronism signals during synchronism correction Effect of synchronism correction New synchronism signals are produced by comparing the actual values with the corrected setpoints. Once a correction process has been undertaken, the synchronism signals should be present again.
  • Page 887 S3: Synchronous spindle 19.4 Special features ● The gear stage(s) of FS and LS for synchronous operation ● 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 –...
  • Page 888 S3: Synchronous spindle 19.4 Special features In such cases, higher threshold values for the synchronism signals and larger position and/or speed tolerances result in more stable results. Dynamic response adaptation To obtain a good control behavior, FS and LS must have the same dynamic response. The following error for FS and LS must be equal at any given speed.
  • Page 889 S3: Synchronous spindle 19.4 Special features FS: Automatic parameterization of the control parameters The control parameters of the following spindle can be set as follows using this machine data: MD30455 $MA_MISC_FUNCTION_MASK Bit 5=0: Synchronous spindle coupling, following spindle: Position control, feedforward control and parameter block are set for the following spindle. Bit 5=1: Synchronous spindle coupling: The control parameters of the following spindle are set as in an uncoupled scenario.
  • Page 890 S3: Synchronous spindle 19.4 Special features The acceleration should be constant over the entire speed range for the following spindle. However, if a knee-shaped acceleration characteristic is also stored in the above-mentioned machine data for the following spindle, this is only taken into account when the spindles are coupled in.
  • Page 891: Boundary Conditions

    S3: Synchronous spindle 19.6 Examples Service display for FS In the "Diagnostics" operating area, when commissioning in the synchronous mode, the following values are displayed for the following spindle: ● Actual deviation between setpoints of FS and LS Value displayed: Position offset in relation to leading spindle (setpoint) (value corresponds to angular offset between FS and LS that can be read with axis variable $AA_COUP_OFFS in the part program) ●...
  • Page 892: Data Lists

    S3: Synchronous spindle 19.7 Data lists Program code Comment N75 SPCON(2) ; Bring following spindle into closed-loop po- sition control N80 COUPON (S2, S1, 45) ; On-the-fly coupling to offset position = 45 degrees N200 FA [S2] = 100 ; Positioning speed = 100 degrees/min N205 SPOS[2] = IC(-90) ;...
  • Page 893: Axis/Spindlespecific Machine Data

    S3: Synchronous spindle 19.7 Data lists Number Identifier: $MC_ Description 21320 COUPLE_BLOCK_CHANGE_CTRL_1 Block change behavior in synchronous spindle opera‐ tion 21330 COUPLE_RESET_MODE_1 Coupling abort behavior 21340 COUPLE_IS_WRITE_PROT_1 Coupling parameters are write-protected 19.7.1.3 Axis/spindlespecific machine data Number Identifier: $MA_ Description 30455 MISK_FUNCTION_MASK Axis functions 30550...
  • Page 894: System Variables

    S3: Synchronous spindle 19.7 Data lists 19.7.3 System variables System variable 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) For exhaustive explanations of the system variables, see: Further information List Manual System Variables Axes and spindles...
  • Page 895: Appendix

    Appendix List of abbreviations Output ADI4 (Analog drive interface for 4 axes) Adaptive Control Active Line Module Rotating induction motor Automation system ASCII American Standard Code for Information Interchange: American coding standard for the exchange of information ASIC Application-Specific Integrated Circuit: User switching circuit ASUB Asynchronous subprogram AUXFU...
  • Page 896 Appendix A.1 List of abbreviations Computerized Numerical Control: Computer-Supported Numerical Control Connector Output Certificate of License Communication Compiler Projecting Data: Configuring data of the compiler Cathode Ray Tube: picture tube Central Service Board: PLC module Control Unit Communication Processor Central Processing Unit: Central processing unit Carriage Return Clear To Send: Ready to send signal for serial data interfaces CUTCOM...
  • Page 897 Appendix A.1 List of abbreviations Input Execution from External Storage Input/Output Encoder: Actual value encoder Compact I/O module (PLC I/O module) Electrostatic Sensitive Devices ElectroMagnetic Compatibility European standard Encoder: Actual value encoder EnDat Encoder interface EPROM Erasable Programmable Read Only Memory: Erasable, electrically programmable read-only memory ePS Network Services Services for Internet-based remote machine maintenance...
  • Page 898 Appendix A.1 List of abbreviations GSDML Generic Station Description Markup Language: XML-based description language for creating a GSD file Global User Data: Global user data Abbreviation for hexadecimal number AuxF Auxiliary function Hydraulic linear drive Human Machine Interface: SINUMERIK user interface Main Spindle Drive Hardware Commissioning...
  • Page 899 Appendix A.1 List of abbreviations Position Measuring System Position controller Least Significant Bit: Least significant bit Local User Data: User data (local) Media Access Control MAIN Main program: Main program (OB1, PLC) Megabyte Motion Control Interface MCIS Motion Control Information System Machine Control Panel: Machine control panel Machine Data Manual Data Automatic: Manual input...
  • Page 900 Appendix A.1 List of abbreviations Process Image Output Process Image Input Personal Computer PCIN Name of the SW for data exchange with the control PCMCIA Personal Computer Memory Card International Association: Plug-in memory card standardization PC Unit: PC box (computer unit) Programming device Parameter identification: Part of a PIV Parameter identification: Value (parameterizing part of a PPO)
  • Page 901 Appendix A.1 List of abbreviations R Parameter, arithmetic parameter, predefined user variable R Parameter Active: Memory area in the NC for R parameter numbers Roll Pitch Yaw: Rotation type of a coordinate system RTLI Rapid Traverse Linear Interpolation: Linear interpolation during rapid traverse motion Request To Send: Control signal of serial data interfaces RTCP Real Time Control Protocol...
  • Page 902 Appendix A.1 List of abbreviations Terminal Board (SINAMICS) Tool Center Point: Tool tip TCP/IP Transport Control Protocol / Internet Protocol Thin Client Unit Testing Data Active: Identifier for machine data Totally Integrated Automation Terminal Module (SINAMICS) Tool Offset: Tool offset Tool Offset Active: Identifier (file type) for tool offsets TRANSMIT Transform Milling Into Turning: Coordination transformation for milling operations on a...
  • Page 903 Appendix A.1 List of abbreviations Extensible Markup Language Work Offset Active: Identifier for work offsets Status word (of drive) Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 904 Appendix A.1 List of abbreviations Axes and spindles Function Manual, 06/2019, A5E47437747B AA...
  • Page 905: Index

    Index $P_SEARCH_SGEAR, 789 $P_SGEAR, 789 $PA_FGREF, 155 $PA_FGROUP, 156 $A_OUT[n], 413 $SC_IS_SD_MAX_PATH_ACCEL, 356 $AA_ACC, 178 $SC_IS_SD_MAX_PATH_JERK, 368 $AA_ACT_INDEX_AX_POS_NO, 250 $SC_SD_MAX_PATH_ACCEL, 356 $AA_BRAKE_CONDB, 554 $SC_SD_MAX_PATH_JERK, 368 $AA_BRAKE_CONDM, 554 $TC_DPNT, 129 $AA_BRAKE_STATE, 554 $VA_COUP_OFFS, 869 $AA_COUP_ACT, 426, 869 $VA_SYNCDIFF, 527 $AA_COUP_CORR, 562 $VA_TORQUE_AT_LIMIT, 111 $AA_COUP_CORR_DIST, 563 $VC_SGEAR, 788...
  • Page 906 Index Axis types Coupled axes, 420 For positioning axes, 189 Coupled axis grouping, 420 Deactivating, 424 Definition and switch on, 424 Coupled motion, 419 Activating/deactivating, 422 Basic system, 39 Control system dynamics, 428 Block change Distance-to-go, 423 Positioning axis type 1, 205 Dynamics limit, 427 Positioning axis type 2, 206 Interface signals, 425...
  • Page 907 Index CPMBRAKE, 535 DBX102.6, 654 CPMPRT, 523 DBX102.7, 654 CPMRESET, 520 DBX110.0 - 113.7, 412 CPMSTART, 522 DBX114.0 - 117.7, 412 CPMVDI, 536 DBX97.0 - 3, 653 CPOF, 505 DBX98.0 - 3, 653 CPOF+CPFPOS, 520 DBX99.0 - 3, 653 CPON, 505 DB11 CPRES, 548 DB6.2, 633...
  • Page 908 Index DBX335.0, 657 DBX33.0, 268 DBX339.0, 657 DBX332.4, 655 DBX343.0, 657 DBX332.5, 655 DBX36.2, 293, 295 DBX332.6, 645, 649, 655 DBX377.4, 697, 699 DBX332.7, 645, 649, 655 DBX377.5, 697, 699 DBX333.0 - 5, 649 DBX377.6, 684 DBX333.6, 645 DBX39.5, 657 DBX336.4, 655 DBX4.3, 158 DBX336.5, 655...
  • Page 909 Index DBX0.4, 425 DBX28.5, 587 DBX0.5, 425 DBX28.6, 195, 587 DBX0.6, 425 DBX28.7, 587 DBX0.7, 425 DBX29.4, 269, 279, 285, 287 DBX1.1, 99 DBX29.5, 269, 279, 875 DBX1.2, 95 DBX3.1, 94, 98, 99 DBX1.3, 95, 425, 829, 877 DBX3.2, 171 DBX1.4, 280, 319, 320, 426, 874, 878 DBX3.3, 171 DBX1.5, 50, 271, 280, 426, 447, 463, 773, 879...
  • Page 910 Index DBX69.0 - DBX69.2, 790 DB31, ... DBX96.5, 342 DBX7.0, 656 DB31, ...";"DBX2.2, 647 DBX7.7, 829 DC, 816 DBX71.4, 774 Definition DBX71.5, 774 EG axis group, 473 DBX74.4, 227 Dependent coupled motion axis, 421 DBX75.0 - 2, 672 DIACYCOFA, 122 DBX75.3 - 5, 672 Diagnosing and optimizing utilization of DBX75.6, 679...
  • Page 911 Index Extended monitoring FRCM, 173 Gantry axes, 262 FXS, 92 FXS-REPOS, 103 FXST, 92 FXSW, 92 FZ, 129 FA, 156, 817 FB, 175 FC18, 212 FCUB, 172 Feed override, 211, 212 G25, 817 Feedrate G26, 817 for chamfer/rounding, 173 G33, 135 Inverse-time (G93), 128 G331, 151 Linear (G94), 128...
  • Page 912 Index Handwheel connection Ethernet, 725 Handwheel override in AUTOMATIC mode Path definition, 704 Leading axes Velocity override, 704 Defining, 502 Hirth gearing, 247 Delete, 503 Leading axis Activating, 506 Switch off, 507 IC, 816 LFOF, 142 Incremental manual travel, 646 LFON, 142 Incremental traversing, 650 LFPOS, 142...
  • Page 913 Index MD10192, 793 MD12030, 160, 712 MD10200, 32, 33, 35, 43 MD12040, 159 MD10210, 32, 33, 35, 65, 67, 235 MD12050, 160 MD10220, 37 MD12060, 161 MD10230, 37 MD12070, 162 MD10240, 39, 41, 47, 181 MD12080, 162 MD10250, 42 MD12082, 160 MD10260, 42, 45, 409 MD12090, 152 MD10270, 43, 243, 409...
  • Page 914 Index MD21159, 389, 642, 670 MD31010, 61 MD21160, 640, 669 MD31020, 61, 65, 67, 331 MD21165, 639, 669 MD31025, 65 MD21166, 388, 641, 670 MD31030, 59, 61, 65 MD21168, 389, 642, 670 MD31040, 61, 65, 67, 83, 751, 800 MD21220, 166 MD31044, 56, 61, 792 MD21230, 166 MD31050, 56, 61, 62, 65, 67, 791, 799...
  • Page 915 Index MD32439, 373 MD35122, 780 MD32610, 275, 887 MD35130, 775, 781, 783, 829 MD32620, 78, 275, 873, 887 MD35135, 775 MD32630, 78 MD35140, 134, 135, 775, 781, 783, 828 MD32640, 80 MD35150, 303, 743, 745, 828, 831 MD32650, 275, 887 MD35200, 737, 745, 748, 752, 775, 804 MD32711, 45 MD35210, 737, 745, 748, 749, 753, 754, 775, 804...
  • Page 916 Index MD37130, 261, 274, 284, 288 MD37135, 262 MD37140, 264, 269, 281, 282 MD37150, 262, 270 Offset MD37160, 447, 456 of a lead value, 524 MD37200, 529, 864, 887 Operating range limits MD37200 for circular travel in JOG, 688 $MA_COUPLE_POS_TOL_COARSE, 470, 482 OS, 584 MD37200 OSB, 586...
  • Page 917 Index PLC axes, 212 Resynchronization, 876 PLC axis Retract, 615 axes under exclusive PLC control, 213 Retraction permanently assigned PLC axis, 213 Direction for thread cutting, 143 start via FC18, 215 Reversal points, 579 PLC-controlled axis Revolutional feedrate (G95), 129 Control response to MD30460 bits 6 and 7, 216 Rotary axes Control system response, 216...
  • Page 918 Index SD42300, 852, 887 Extended retract numerically controlled, 198 SD42500, 355, 356 Extended stop numerically controlled, 197 SD42502, 356 Single block SD42510, 367, 368 Positioning axis type 1, 217 SD42512, 367, 368 Positioning axis type 2, 217 SD42600, 130, 200, 203, 241, 662, 825 Positioning axis type 3, 217 SD42690, 684, 690 Single-axis dynamic response, 176...
  • Page 919 Index Synchronous operation Deviation, 558 -difference, 527 -monitoring, 527 Velocities, 31 Synchronous operation monitoring VELOLIM, 817 stage 2, 531 VELOLIMA[FA], 570 Synchronous position Vertical axes, 105 Following axis, 514 Virtual leading axis, 453 Leading axis, 515 Synchronous spindle Position offset, 875 System of units, 39, 45 System variables, 499 WAITC, 513...
  • Page 920 Index Axes and spindles Function Manual, 06/2019, A5E47437747B AA...

This manual is also suitable for:

Sinumerik 840d sl

Table of Contents