Siemens SINUMERIK 840Di sl Function Manual

Siemens SINUMERIK 840Di sl Function Manual

Synchronized actions, ncu system software
Hide thumbs Also See for SINUMERIK 840Di sl:
Table of Contents

Advertisement

SINUMERIK
SINUMERIK
840D sl/840Di sl/840D/840Di/810D
Synchronized actions
Function Manual
Valid for
Control
SINUMERIK 840D sl/840DE sl
SINUMERIK 840Di sl/840DiE sl
SINUMERIK 840D powerline/840DE powerline
SINUMERIK 840Di powerline/840DiE powerline
SINUMERIK 810D powerline/810DE powerline
Software
NCU system software for 840D sl/840DE sl 1.
NCU system software for 840D sl/DiE sl
NCU system software for 840D/840DE
NCU system software for 840Di/840DiE
NCU system software for 810D/810DE
11/2006
6FC5397-5BP10-2BA0
Foreword
Brief description
Detailed description
Boundary conditions
Signal Descriptions
Examples
Data lists
Appendix
Version
1.0
7.4
3.3
7.4
1
2
3
4
5
6
A

Advertisement

Table of Contents
loading

Summary of Contents for Siemens SINUMERIK 840Di sl

  • Page 1 Examples Function Manual Data lists Appendix Valid for Control SINUMERIK 840D sl/840DE sl SINUMERIK 840Di sl/840DiE sl SINUMERIK 840D powerline/840DE powerline SINUMERIK 840Di powerline/840DiE powerline SINUMERIK 810D powerline/810DE powerline Software Version NCU system software for 840D sl/840DE sl 1. NCU system software for 840D sl/DiE sl...
  • Page 2 Trademarks All names identified by ® are registered trademarks of the Siemens AG. The remaining trademarks in this publication may be trademarks whose use by third parties for their own purposes could violate the rights of the owner.
  • Page 3: Foreword

    • Manufacturer/service documentation A monthly updated publications overview with respective available languages can be found in the Internet under: http://www.siemens.com/motioncontrol Select the menu items "Support" → "Technical Documentation" → "Overview of Publications". The Internet version of DOConCD (DOConWEB) is available under: http://www.automation.siemens.com/doconweb...
  • Page 4 +86 1064 719 990 +1 423 262 2522 +49 180 5050 223 +86 1064 747 474 +1 423 262 2289 Internet http://www.siemens.com/automation/support-request E-Mail mailto:adsupport@siemens.com Note Country specific telephone numbers for technical support are provided under the following Internet address: http://www.siemens.com/automation/service&support...
  • Page 5 The EC Declaration of Conformity for the EMC Directive can be found/obtained • in the internet: http://www.ad.siemens.de/csinfo under product/order no. 15257461 • with the relevant branch office of the A&D MC group of Siemens AG. Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 6 Foreword Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 7: Table Of Contents

    Table of contents Foreword ..............................3 Brief description ............................11 Detailed description ..........................13 Components of synchronized actions..................13 2.1.1 Definition of motion-synchronous actions ..................20 2.1.2 Execution of synchronized actions ....................20 2.1.3 List of possible actions.........................20 Real-time evaluations and calculations ..................22 Special real-time variables for synchronized actions..............28 2.3.1 Marker/counter variables ......................29...
  • Page 8 Table of contents Call of Technology Cycles......................101 2.5.1 Coordination of synchronized actions, technology cycles, part program (and PLC) ....104 Control and protection of synchronized actions ................ 106 2.6.1 Control via PLC ......................... 106 2.6.2 Protected synchronized actions ....................108 Control system response for synchronized actions in specific operational states....
  • Page 9 Table of contents Setting data ..........................156 6.2.1 Axis/spindle-specific setting data ....................156 Signals ............................157 6.3.1 Signals from channel .........................157 Appendix..............................159 Publication-specific information ....................159 A.1.1 Correction sheet - fax template....................159 A.1.2 Overview ............................161 Index..............................163 Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 10 Table of contents Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 11: Brief Description

    Brief description Definition of synchronized actions Motion-synchronous actions (or "synchronized actions" for short) are instructions programmed by the user, which are evaluated in the interpolation cycle of the NCK in synchronization with the execution of the part program. If the condition programmed in the synchronized action is fulfilled or if none is specified, then actions assigned to the instruction are activated in synchronism with the remainder of the part program run.
  • Page 12 Brief description Figure 1-1 Schematic diagram of synchronized actions For details of how to program synchronized actions, please see: References: /PGA/Programming Manual Advanced The following chapters describe: • functional relationships for synchronized actions in the Chapter "Detailed Description", • Application examples in the Chapter "Examples". Note This description encompasses the functionality of the current software version.
  • Page 13: Detailed Description

    Detailed description Components of synchronized actions Structure of a synchronized action Component: Validity, Frequency G code for cond. Condition Action G code for Action or identification and action code word action Tech-no-lo- number (fixed) gy-cy-cle Example IDS=1 EVERY $AAA_IM[B] POS[X]=100 >...
  • Page 14 Detailed description 2.1 Components of synchronized actions No data Synchronized actions that have no specified validity have a non-modal action, i.e. they apply only to the next block. Non-modal synchronized actions are operative only in AUTOMATIC mode. From SW 6.1 and later, non-modal synchronized actions are active modally for all preprocessing stop blocks (incl.
  • Page 15 Detailed description 2.1 Components of synchronized actions Note The following actions are operative only in AUTOMATIC mode when the program is running: STOPREOF DELDTG Frequency Keywords (see table) are programmed to indicate how often the subsequently specified condition must be scanned and the associated action executed if the condition is fulfilled. These keywords are an integral component of the synchronized action condition.
  • Page 16 Detailed description 2.1 Components of synchronized actions Applications: Definition of the measurement systems for condition evaluation and action through G codes G70, G71, G700, G710. Note Only one G-code of the G-code group may be programmed for each part of the condition. A G-code specified for the condition is valid for the evaluation of the condition and for the action, if no separate G-code is specified for the action.
  • Page 17 Detailed description 2.1 Components of synchronized actions Examples: WHENEVER ($A_IN[1]==1) OR ($A_IN[3]==0) DO ... ; while input 1 is applied or input 3 is not applied ... Two or more real-time expressions may be compared with one another within one condition. Comparisons may be made between variables of the same type or between partial expressions.
  • Page 18 Detailed description 2.1 Components of synchronized actions Actions Every synchronized action contains one or more programmed actions or one technology cycle. These are executed when the appropriate condition is fulfilled. If several actions are programmed in one synchronized action, they are executed within the same interpolation cycle.
  • Page 19 Detailed description 2.1 Components of synchronized actions Figure 2-1 Schematic diagram illustrating processing of synchronized actions Processing of synchronized actions Synchronized actions are checked in the interpolation cycle to determine whether they contain actions to be activated. Action(s) are executed in synchronism with path control if the preconditions programmed on the left of the action(s) are fulfilled.
  • Page 20: Definition Of Motion-Synchronous Actions

    Detailed description 2.1 Components of synchronized actions 2.1.1 Definition of motion-synchronous actions Defining programs Motion-synchronous actions can be defined as follows: • In the part program • Static synchronized actions in an asynchronous subprogram activated by the PLC 2.1.2 Execution of synchronized actions Conditions for execution The actions programmed in motion-synchronous actions are executed, when: •...
  • Page 21 Detailed description 2.1 Components of synchronized actions • Read-in disable RDISABLE • Preprocessing stop cancellation STOPREOF • Delete distance-to-go DELDTG • Calculation of curve table values • Axial feedrate from synchronized actions • Axial frame • Moving/positioning axes/spindles from synchronized actions •...
  • Page 22: Real-Time Evaluations And Calculations

    Detailed description 2.2 Real -time evaluations and calculations Real-time evaluations and calculations Restriction Calculations carried out in real time represent a subset of those calculations that can be performed in the NC language. It is restricted to data types REAL, INT, CHAR and BOOL. Implicit type conversions between REAL, INT, and BOOL in both directions are possible in synchronized actions.
  • Page 23 Detailed description 2.2 Real -time evaluations and calculations Data type: Within an expression in the synchronized actions only the main-run variables of a data type may be linked logically. However, in order to process various types of data, you can use the conversion routines provided for type matching (SW 5.2, see conversion routines).
  • Page 24 Detailed description 2.2 Real -time evaluations and calculations RTOI INT RTOI( REAL ) - Converting from real to integer The function RTOI() converts the transferred Real value in a rounded INT value and returns this integer value. If the value transferred lies outside the range that can be unambiguously represented as an integer value, alarm 20145 "Motion-synchronous action: Arithmetic error"...
  • Page 25 Detailed description 2.2 Real -time evaluations and calculations Examples: previously $AC_MARKER[1]=561 ID=1 WHEN TRUE DO $AC_PARAM[1] = ITOR( $AC_MARKER[1] ) As of SW 6.4 $AC_MARKER[1]=561 ID=1 WHEN TRUE DO $AC_PARAM[1] = $AC_MARKER[1] previously $AC_PARAM[1] = 561.4378 ; 561 ID=1 WHEN TRUE DO $AC_MARKER[1] = RTOI( $AC_PARAM[1] ) As of SW 6.4 $AC_PARAM[1] = 561.4378 : 561...
  • Page 26 Detailed description 2.2 Real -time evaluations and calculations Basic arithmetic operations Real-time variables of the type REAL and INT can be linked logically by the following basic arithematic operations: • Addition • Subtraction • Multiplication • Division • Integer division •...
  • Page 27 Detailed description 2.2 Real -time evaluations and calculations Priority of operators In order to produce the desired logical result in multiple expressions, the following operator priorities should be observed in calculations and conditions: Negation, bit-serial negation NOT, B_NOT *, /, DIV, MOD Multiplication, division +, - Addition, subtraction...
  • Page 28: Special Real-Time Variables For Synchronized Actions

    Detailed description 2.3 Special real-time variables for synchronized actions Indexing The index of a main-run field variable can in turn be a real-time variable. Example WHEN ... DO $AC_PARAM[ $AC_MARKER[1] ] = 3 The index $AC_MARKER[1] is evaluated currently in the interpolation cycle. Constraints: •...
  • Page 29: Marker/Counter Variables

    Detailed description 2.3 Special real-time variables for synchronized actions 2.3.1 Marker/counter variables Channel-specific markers The array variable $AC_MARKER[n] is used as a marker or counter and can be read and written in synchronized actions. Data type: INTEGER n: Field index of the marker: 0–n The number of markers per channel is set using machine data MD28256 $MC_NUM_AC_MARKER.
  • Page 30: Timers

    Detailed description 2.3 Special real-time variables for synchronized actions 2.3.2 Timers The system variable $AC_TIMER[n] permits actions to be started after defined periods of delay. Definition Data type: REAL n: Number of timer variable Unit: Second The number of available timer variables is determined via the machine data MD28258 $MC_MM_NUM_AC_TIMER.
  • Page 31: Synchronized Action Parameters

    Detailed description 2.3 Special real-time variables for synchronized actions 2.3.3 Synchronized action parameters Meaning The variables $AC_PARAM[n] are used for calculations and also as intermediate memory and can be read and written in synchronized actions. Definition Data type: REAL n: Number of parameters 0 - n The number of available AC parameter variables for each channel is determined via the Machine data MD28254 $MC_MM_NUM_AC_PARAM...
  • Page 32: R Parameters

    Detailed description 2.3 Special real-time variables for synchronized actions 2.3.4 R parameters Application in synchronized actions By programming the $ sign in front of R parameters, they can also be used in synchronized actions. The field variables $R[n] or $Rn are used for calculations in synchronized actions R[n] or Rn is used for calculations in part program, which are stored battery-backed in the static memory.
  • Page 33 Detailed description 2.3 Special real-time variables for synchronized actions Reading at the time of preprocessing Unchangeable machine and setting data are addressed from the synchronized action as in the normal part program commands. They are introduced with a $-sign. Example ID=2 WHENEVER $AA_IM[z]<...
  • Page 34: Fifo Variables (Circulating Memory)

    Detailed description 2.3 Special real-time variables for synchronized actions 2.3.6 FIFO variables (circulating memory) Application Up to 10 FIFO variables are provided to allow storage of related data sequences: $AC_FIFO1[n] to $AC_FIFO10[n]. Structure The memory structure of a FIFO-variable is shown in the figure: Example of FIFO variable Amount The number of the available AC FIFO variable is specified in machine data MD28260 $MC_NUM_AC_FIFO...
  • Page 35 Detailed description 2.3 Special real-time variables for synchronized actions n=5: Current write index relative to beginning of FIFO n= 6 to 6+nmax: Access to the nth FIFO-element: Note The FIFO access is a special form of R parameter access: (see below) The FIFO-values are stored in the R-parameter range.
  • Page 36: System Variables Saved In Sram (Sw 6.3 And Later)

    Detailed description 2.3 Special real-time variables for synchronized actions Figure 2-3 FIFO variable 2.3.7 System variables saved in SRAM (SW 6.3 and later) RESET response The system variables $AC_MARKER and $AC_PARAM saved in SRAM retain their existing values after RESET and Power On. Note In the case of part programs and synchronized actions that work with system variables saved in SRAM, you must make sure that the variables are not initialized to 0 after RESET.
  • Page 37: Determining The Path Tangent In Synchronized Actions

    Detailed description 2.3 Special real-time variables for synchronized actions Data Backup System variables $AC_MARKER and $AC_PARAM saved in SRAM can be included in the data backup. The following backup modules are present for each channel: _N_CHi_ACM for $AC_MARKER values and _N_CHi_ACP for $AC_PARAM values.
  • Page 38: Determining The Current Override

    Detailed description 2.3 Special real-time variables for synchronized actions 2.3.9 Determining the current override Current override The current override (NC-part) can be read and written in the synchronized actions with the following system variables: $AA_OVR Axial override $AC_OVR Path override PLC override The override defined by the PLC is provided for synchronized actions for reading in the following system variables:...
  • Page 39: Capacity Evaluation Using Time Requirement For Synchronized Actions

    Detailed description 2.3 Special real-time variables for synchronized actions 2.3.10 Capacity evaluation using time requirement for synchronized actions Description In a interpolation cycle, synchronized actions have to be both interpreted and motions calculated by the NC. The system variables presented below provide synchronized actions with information about the current time shares that synchronized actions have of the interpolation cycle and about the computation time of the position controllers.
  • Page 40 Detailed description 2.3 Special real-time variables for synchronized actions System variables Description $AN_SYNC_ACT_LOAD current computing time for synchronized actions over all channels $AN_SYNC_MAX_LOAD longest computing time for synchronized actions over all channels $AN_SYNC_TO_IPO percentage share that the synchronized actions have of the complete IPO computer time (over all channels) $AC_SYNC_ACT_LOAD current computing time for synchronized actions in the channel...
  • Page 41: List Of System Variables Relevant To Synchronized Actions

    Detailed description 2.3 Special real-time variables for synchronized actions Programming example MD: Time use limit for IPO cycle $MN_IPO_MAX_LOAD = 80 As soon as $AN_IPO_LOAD_PERCENT > 80 %, $AN_IPO_LOAD_LIMIT is set to TRUE. N01 $AN_SERVO_MAX_LOAD=0 N02 $AN_SERVO_MIN_LOAD=0 N03 $AN_IPO_MAX_LOAD=0 N04 $AN_IPO_MIN_LOAD=0 N05 $AN_SYNC_MAX_LOAD=0 N06 $AC_SYNC_MAX_LOAD=0 N10 IDS=1 WHENEVER $AN_IPO_LOAD_LIMIT == TRUE DO M4711 SETAL(63111)
  • Page 42: Actions In Synchronized Actions

    Detailed description 2.4 Actions in synchronized actions Actions in synchronized actions Actions Each synchronized action contains after the action code DO ... one or more (max. 16) actions or a technology cycle, which are executed when the condition is fulfilled. (Actions will now be used as a generic term.).
  • Page 43 Detailed description 2.4 Actions in synchronized actions ... DO ... Description Reference Control positioning axes: $AA_OVR[x]= 0 Disabling an axis motion 2.4.12 ACHSE_X (e.g.) Calling an axis program 2.4.13 POS[u]= ... Position 2.4.13 FA[u]= ... Determine axis feed rate 2.4.14 Move command axis continuously: 2.4.15 MOV[u]= >0...
  • Page 44: Output Of M, S And H Auxiliary Functions To The Plc

    Detailed description 2.4 Actions in synchronized actions 2.4.1 Output of M, S and H auxiliary functions to the PLC For general information about auxiliary function outputs, please see: References: /FB1/ Function Manual Basic Functions; Auxiliary Function Output to PLC (H2) Examples The advantage of implementing auxiliary function outputs in synchronized actions is illustrated by the following example: Switch on coolant at a specific position...
  • Page 45 Detailed description 2.4 Actions in synchronized actions Auxiliary function output to the PLC M, S or H auxiliary functions can be output to the PLC as synchronized actions. The output takes place immediately (like an interrupt on the PLC) in the interpolation cycle if the condition is fulfilled.
  • Page 46 Detailed description 2.4 Actions in synchronized actions Restrictions No more than 10 auxiliary functions may be output simultaneously (i.e. in an OB 40 cycle of the PLC). The total number of auxiliary function outputs from part programs and synchronized actions must never exceed 10 at any point in time. Maximum number of auxiliary functions per synchronized action block or technology cycle block: •...
  • Page 47: Setting (Writing) And Reading Of Real-Time Variables

    Detailed description 2.4 Actions in synchronized actions 2.4.2 Setting (writing) and reading of real-time variables Write In synchronized actions the real-time variables can be written in actions, which are marked in the list of the system variables in the 8th row in the field "write:" with an X. The following machine and setting data are also written in the main run: •...
  • Page 48: Changing Of Sw Cam Positions And Times (Setting Data)

    Detailed description 2.4 Actions in synchronized actions Examples: WHEN $AC_DTEB < 5 DO ... ;Read distance from block end in condition DO $R5= $A_INA[2] ;Read value of the analog input 2 and assign arithmetic variable 2.4.3 Changing of SW cam positions and times (setting data) Introduction The "Software cams"...
  • Page 49: Fctdef

    Detailed description 2.4 Actions in synchronized actions Example 2 Alteration of a lead/delay time: ID=1 WHEN $AA_IW[x] > 0 DO $$SN_SW_CAM_MINUS_TIME_TAB_1[0] = 1.0 Note Software cams must not be set as a function of velocity via synchronized actions immediately in front of a cam. At least 2-3 interpolation cycles must be available between the setting and the relevant cam position.
  • Page 50 Detailed description 2.4 Actions in synchronized actions Number of polynomials The number of polynomials that can be defined simultaneously is specified by the following machine data: MD28252 $MC_MM_NUM_FCTDEF_ELEMENTS (number of FCTDEF elements) Block-synchronous polynomial definition FCTDEF( Polynomial No. Low limit, High limit, The relationship between the output variable y and the input variable x is as follows: y= a...
  • Page 51: Polynomial Evaluation Synfct

    Detailed description 2.4 Actions in synchronized actions 2.4.5 Polynomial evaluation SYNFCT Application By applying an evaluation function in the action section of a synchronized action, it is possible to read a variable, evaluate it with a polynomial and write the result to another variable in synchronism with the machining process.
  • Page 52 Detailed description 2.4 Actions in synchronized actions Additive feedrate control In case of additive control, the programmed value (F word with respect to Adaptive Control) is compensated by an additive factor. F active programmed The following are set, for instance, as 'real-time variable output': $AC_VC additive path-feed offset, $AA_VC[axis]...
  • Page 53 Detailed description 2.4 Actions in synchronized actions adaptive control function is activated with the following synchronized action: the additive offset value for the feedrate of the x axis is ID = 1 DO SYNFCT(1, $AC_VC[x], calculated in each interpolation cycle from the percentage $AA_LOAD[x]) utilization value of the drive via the polynomial 1 Multiplicative control...
  • Page 54 Detailed description 2.4 Actions in synchronized actions Lower limit = 0 The polynomial (no. 2) can therefore be defined as follows: FCTDEF(2, 0, 120, 160, -2, 0, 0) This function completely describes the Figure "Example of multiplicative control". The associated synchronized action can be programmed as follows: the path override is calculated in each interpolation cycle ID = 1 DO SYNFCT(2, $AC_OVR, from the percentage drive load for the x axis via the...
  • Page 55 Detailed description 2.4 Actions in synchronized actions Boundary conditions: Integral evaluation of the input quantity of sensor $A_INA[3]. The offset value is applied in the basic coordinate system, i.e. prior to kinematic transformation. A programmed frame (TOFRAME) has no effect, i.e. the function cannot be used for 3D clearance control in the direction of orientation.
  • Page 56: Overlaid Movements $Aa_Off Settable (Sw 6 And Later)

    Detailed description 2.4 Actions in synchronized actions %_N_AON_SPF Subroutine for clearance control ON PROC AON Polynomial definition: The offset is applied in FCTDEF(1, 0.2, 0.5, 0.35, 1.5 EX-5) the range 0.2 to 0.5 Clearance control active ID = 1 DO SYNFCT(1,$AA_OFF[Z], $A_INA[3]) Disable axis X when limit value is overshot ID = 2 WHENEVER $AA_OFF_LIMIT[Z]<>0 DO $AA_OVR[X] = 0...
  • Page 57 Detailed description 2.4 Actions in synchronized actions $AC_VACTB and $AC_VACTW as input variable for synchronized actions and output are disabled via the options bit ("Feedrate-dependent analog value control" → laser power control)! $AA_OFF, position offset as output variable for synchronized actions for clearance control is disabled via the options bit! Velocity control with the machine data: MD32070 $MA_CORR_VELO (axis velocity for override)
  • Page 58 Detailed description 2.4 Actions in synchronized actions Boundary conditions • Interrupt routines/asynchronous subroutines When an interrupt routine is activated, modal motion-synchronous actions are retained and are also effective in the asynchronous subroutine. If the subroutine return is not made with REPOS, the modal synchronized actions changed in the asynchronous subroutine continue to be effective in the main program.
  • Page 59: Online Tool Offset Ftoc

    Detailed description 2.4 Actions in synchronized actions Note The coordinate system (BCS or WCS) in which a real-time variable is defined determines whether frames will or will not be included. Distances are always calculated in the set basic system (metric or inch). A change with G70 or G71 has no effect.
  • Page 60 Detailed description 2.4 Actions in synchronized actions Boundary condition The synchronized action FTOC is available in Software-version 3.2 and later. An online offset allows an overlaid movement to be implemented for a geometry axis according to a polynomial programmed with FCTDEF (see Subsection "FCTDEF") as a function of a reference value (e.g.
  • Page 61: Online Tool Length Offset $Aa_Toff[Index]

    Detailed description 2.4 Actions in synchronized actions Example Compensate length of an active grinding wheel %_N_DRESS_MPF Definition of the function FCTDEF(1,-1000,1000,-$AA_IW[V],1) Select online tool offset: ID=1 DO FTOC(1,$AA_IW[V],3,1) Derived from the motion of the V axis, the length 3 of the active grinding wheel is compensated in channel 1.
  • Page 62 Detailed description 2.4 Actions in synchronized actions Note Online tool length offset is an option and must be enabled beforehand. For further information regarding the activation of the function in the part program, see: References: /PGA/Programming Manual Work Preparation; Chapter Transformations "TOFFON, TOFFOF"...
  • Page 63 Detailed description 2.4 Actions in synchronized actions Example Selecting the online tool length offset Setting the machine data for online tool length offset: Absolute values are approached MD21190 $MC_TOFF_MODE = 1 MD21194 $MC_TOFF_VEL[0] = 10000 MD21194 $MC_TOFF_VEL[1] = 10000 MD21194 $MC_TOFF_VEL[2] = 10000 MD21196 $MC_TOFF_ACC[0] = 1 MD21196 $MC_TOFF_ACC[1] = 1 MD21196 $MC_TOFF_ACC[2] = 1...
  • Page 64 Detailed description 2.4 Actions in synchronized actions Example De-selecting the online tool length offset Activate orientation transformation N10 TRAORI Activating the function for the N20 TOFFON(X) X-tool axis a N30 WHEN TRUE DO $AA_TOFF[X] = 10 Tool length offset = 10 is interpolated G4 F5 …...
  • Page 65 Detailed description 2.4 Actions in synchronized actions Also in this case, the tool length offset must be cleared. If a tool length offset is to remain active extending beyond a RESET, and a transformation change of the tool carrier that can be oriented takes place, then Alarm 21665 "channel %1 $AA_TOFF[ ] reset"...
  • Page 66: Rdisable

    Detailed description 2.4 Actions in synchronized actions 2.4.9 RDISABLE Programmed read-in disable RDISABLE The RDISABLE command in the active section causes block processing to be stopped when the relevant condition is fulfilled. Processing of programmed motion-synchronous actions still continues. The read-in disable is canceled again as soon as the condition for the RDISABLE is no longer fulfilled.
  • Page 67: Deldtg

    Detailed description 2.4 Actions in synchronized actions Example STOPREOF Program branches WHEN $AC_DTEB<5 DO STOPREOF G01 X100 IF $A_INA[7]>5000 GOTOF Label 1 If the distance to the end of the block is less than 5 mm, end preprocessing stop. If the voltage at input 7 drops below 5V, jump forwards to label 1 (assuming that the value 1000 corresponds to 1 V).
  • Page 68: Disabling A Programmed Axis Motion

    Detailed description 2.4 Actions in synchronized actions Example DELDTG ... DO DELDTG N100 G01 X100 Y100 F1000 N110 G01 X... IF $AC_DELT > 50 High-speed, prepared DDTG for axes High-speed, prepared deletion of distance-to-go for axes must be programmed as a non- modal action.
  • Page 69: Starting Command Axes

    Detailed description 2.4 Actions in synchronized actions Note Axis motion disable can also be programmed for PLC axes (e.g. magazine axis). 2.4.13 Starting command axes Introduction Axes can be positioned, started and stopped completely asynchronously to the part program from synchronized actions. This type of programming is advisable for cyclic sequences or sequences that are strongly dependent on events.
  • Page 70 Detailed description 2.4 Actions in synchronized actions Example 1 ID=1 EVERY $A_IN[1]==1 DO POS[X]=100 Example 2 An axis motion can be triggered as technology cycle. (See Chapter "Call of technology cycles") Main program: ID=2 EVERY $A_IN[1]==1 DO AXIS_X Axis program: AXIS_X: M100 POS[X]=100...
  • Page 71 Detailed description 2.4 Actions in synchronized actions References: /PG/ Programming Manual Fundamentals; Position data Absolute/Incremental end position The end position can be programmed either absolutely or incrementally. The position is approached absolutely or incrementally depending on whether G90 or G91 is active in the main program block currently being processed.
  • Page 72 Detailed description 2.4 Actions in synchronized actions Whichever frame is operative in the current block takes effect. If a rotation is active in the current block, then an alarm is output to reject a positioning motion initiated from a positioning motion. Example TRANS X20 IDS= 1 EVERY $A_IN==1 DO POS[X]=40...
  • Page 73: Axial Feedrate From Synchronized Actions

    Detailed description 2.4 Actions in synchronized actions Example RANS A=0,001 Axis travels to position 180.001 degrees POS[A]=CAC(2) The axial frame is not effective for the command axis MD32074 $MA_FRAME_OR_CORRPOS_NOTALL OWED[AX4] = 'H0020' Axis travels to position 180.000 degrees WHEN TRUE DO POS[A]=CIC(-1) Note If a command axis travels to indexing positions incrementally, axial frames usually have no effect on this command axis.
  • Page 74: Starting/Stopping Axes From Synchronized Actions

    Detailed description 2.4 Actions in synchronized actions Example of calculated feedrate ID = 1 EVERY $AA_IM[B] > 75 DO POS[U]=100 FA[U]=$AA_VACTM[W]+100 The feedrate value is either programmed as a linear or rotational feed: The feedrate type is determined by setting data: SD43300 $SA_ASSIGN_FEED_PER_REV_SOURCE(revolutional feed rate for position axes/spindles) This data can be altered by an operator input, from the PLC or from the part program.
  • Page 75: Axis Replacement From Synchronized Actions

    Detailed description 2.4 Actions in synchronized actions The sign of the value determines the direction of movement: >0: Axis motion in the positive direction <0: Axis motion in the negative direction ==0: Stop axis motion If a moving indexing axis is halted by command MOV[axis]=0, then the next indexing position is approached in the same way as in JOG mode.
  • Page 76 Detailed description 2.4 Actions in synchronized actions Axis type and axis status regarding axis replacement The currently valid axis type and axis status, at the activation instant of synchronized action, can be interrogated using $AA_AXCHANGE_TYP or $AA_AXCHANGE_STAT. Dependent on the channel that has the actual interpolation right of this axis presently has, and from the actual status of the permissible axis replacement, a different sequence is obtained from the synchronized action.
  • Page 77 Detailed description 2.4 Actions in synchronized actions Axis is already assigned to the requested channel If the requested axis has already been assigned to this channelat the point of activation, and its status is that of a neutral axis not controlled by the PLC $AA_AXCHANGE_TYP[axis]==3, it is assigned to the NC program $AA_AXCHANGE_TYP[axis]==0.
  • Page 78 Detailed description 2.4 Actions in synchronized actions Axis to be released is already a neutral axis: If the axis is already in the state of a neutral axis $AA_AXCHANGE_TYP[<Axis>] == 3 or as command or oscillating axis active or assigned to the PLC for traveling, PLC-Axis == concurrent positioning axis, $AA_AXCHANGE_TYP[Axis] == 1, then the axis is released for an automatic axis interchange between channels.
  • Page 79 Detailed description 2.4 Actions in synchronized actions Example GET, RELEASE using synchronized actions Z axis has been declared in the first and second channels. Program sequence in the first channel: Z axis becomes neutral WHEN TRUE DO RELEASE(Z) Read-in disable as long as WHENEVER $AA_TYP[Z] == 1 DO RDISABLE Z axis is program axis N110 G4 F0.1...
  • Page 80 Detailed description 2.4 Actions in synchronized actions Example GET, RELEASE in the technology cycle It has been declared in first and second channel: The axis U, machine data: MD30552 $MA_AUTO_GET_TYPE = 2 (get automatic GET for axis) Currently, channel 1 has the interpolation right and the following technology cycle is started in channel 2: Move U axis to channel GET(U)
  • Page 81: Spindle Motions From Synchronized Actions

    Detailed description 2.4 Actions in synchronized actions 2.4.17 Spindle motions from synchronized actions General Analogously to positioning axes, it is also possible to start, position and stop spindles from synchronized actions. Spindle movements can be started at defined points in time by blocking a spindle motion programmed in the part program or by controlling the axis motion from synchronized actions.
  • Page 82 Detailed description 2.4 Actions in synchronized actions Example Speed and direction of rotation ID=1 EVERY $A_IN[1]==1 DO M3 S300 Speed and direction of rotation ID = 2 EVERY $A_IN[2]==1 DO M4 S500 New speed specification ID=3 EVERY $A_IN[3]==1 DO S1000 for active spindle rotation Position spindle ID=4 EVERY ($A_IN[4]==1) AND...
  • Page 83 Detailed description 2.4 Actions in synchronized actions Axis coordination If a positioning command (POS, MOV) is started from synchronized actions for an axis that is already operating as a path or PLC axis, then processing is aborted with an alarm. Axis movement by PP and SA alternately In typical cases, an axis is either moved from the part program (PP) in motion blocks or as a positioning axis from a synchronized action (SA).
  • Page 84 Detailed description 2.4 Actions in synchronized actions Examples: ID=1 EVERY $AC_TIMER[1] >= 5 DO POS[V]=100 FA[V]=560 ID=2 EVERY $AC_TIMER[1] >= 7 DO POS[V]=$AA_IM[V] + 2 FA[V]=790 ; Owing to the programming with $AC_TIMER[1] the synchronization with ID=2 is the most recently activated, its specifications become effective and release the specifications of ID=1 ...
  • Page 85: Setting Actual Values From Synchronized Actions

    Detailed description 2.4 Actions in synchronized actions On-the-fly transitions in case of axis couplings Positioning axis motions and movements resulting from axis couplings programmed via synchronized actions can be activated alternately. See Subsection 2.4.02 "Activating and Deactivating Couple Motions and Couplings" and: References: /FB3/ Function Manual, Special Functions;...
  • Page 86: Activating/Deactivating Coupled Motions And Couplings

    Detailed description 2.4 Actions in synchronized actions Example You can find an example of how to use PRESETON in conjunction with an "On-the-fly parting" application in the sub-section "On-the-fly parting". Note Setting of actual values PRESETON may only be done with the key words WHEN or EVERY. 2.4.19 Activating/deactivating coupled motions and couplings Introduction...
  • Page 87 Detailed description 2.4 Actions in synchronized actions • Electronic gearbox With the help of the "Electronic gearbox" the movement of a following axis FA can be interpolated dependent on up to five leading axes LA. From the parts program a gearbox group can be: –...
  • Page 88 Detailed description 2.4 Actions in synchronized actions TRAILON - Coupled motion from a synchronized action From a synchronized action it is possible to define and simultaneously activate the assignment of a following axis to a leading axis using a coupling factor: ...
  • Page 89 Detailed description 2.4 Actions in synchronized actions Calculating master value From a synchronized action it is possible to calculate a concrete master value for a slave value on the basis of a curve table. Example ... DO $R18=CTABINV(FW, aprLW, n, degree) where: Slave value aprLW...
  • Page 90 Detailed description 2.4 Actions in synchronized actions Detection of synchronism System variable $AA_SYNC[ax] can be read from the parts program and synchronous action and indicates whether and in what manner the following axis FA is synchronized: 0: Not synchronized 1: Coarse synchronism (according to MD37200 $MA_COUPLE_POS_TOL_COARSE) 2: Fine synchronism (according to MD37210 $MA_COUPLE_POS_TOL_FINE) Definition of application Couplings directly activated in the part program are activated at block limits.
  • Page 91 Detailed description 2.4 Actions in synchronized actions • Cross-channel coupling, axis replacement For axis replacement, the following and leading axes must be known to the calling channel. Axis replacement of leading axes can be performed independently of the state of the coupling. A defined or active coupling does not produce any other boundary conditions.
  • Page 92 Detailed description 2.4 Actions in synchronized actions • Example Programming with keywords in synchronized actions: Example 1: Definition of an axis coupling with a leading axis DO CPDEF=YCPLDEF[Y]=X CPLNUM[Y,X]=1.5 Example 2: N10 WHEN TRUE DO CPLON[X]=X CPLNUM[X,Y]=2; OK N20 WHEN TRUE DO CPLNUM [A,B]=" CPLON [A=B] ; Alarm The order in the N20 block is not permitted since CPLNUM is to be set before the coupling module has been created in the part program with CPDEF.
  • Page 93: Measurements From Synchronized Actions

    Detailed description 2.4 Actions in synchronized actions 2.4.20 Measurements from synchronized actions Introduction Measurement functions available for the part programs: MEAS, MEAW, MEASA, MEAWA, MEAC References: /PGA/Programming Manual Advanced /FB2/ Function Manual, Extended Functions; Measurements (M5). Only the following may be used in synchronized actions: •...
  • Page 94 Detailed description 2.4 Actions in synchronized actions Trigger_event_1 to trigger_event_4: rising edge, probe 1 Optional - 1: falling edge, probe 1 Optional rising edge, probe 2 Optional - 2: falling edge, probe 2 Measurement Number of a FIFO variable memory: Measured values are supplied exclusively for the machine coordinate system.
  • Page 95 Detailed description 2.4 Actions in synchronized actions MEAC ... DO MEAC[axis]=(mode, No_FIFO, trigger events) The variables $AC_FIFO (see Chapter "FIFO-variables (circulating memory)".) are provided for the purpose of storing measured values from cyclic measuring processes. Mode and trigger event see above Examples: Two FIFOs have been set up in machine data for the following examples.
  • Page 96 Detailed description 2.4 Actions in synchronized actions Program 2: G0 X0 Rapid traverse to the starting position $AC_MARKER[1]=1 Marker 1 as index for arithmetic variable R[..] ID=1 WHENEVER $AC_FIFO1[4]>=1 Synchronized action as check: DO $R[$AC_MARKER[1]]= $AC_FIFO1[0] $AC_MARKER[1]=$AC_MARKER[1]+1 when 1 or more measured values are present in FIFO variable read the oldest value from FIFO and store in current R[..] increment index for R by 1 MEAC[X]=( 1, 1, 1, -1) POS[X]=100...
  • Page 97: Setting And Deleting Wait Markers For Channel Synchronization

    Detailed description 2.4 Actions in synchronized actions Priority with more than one measurement Only one measurement task can be active for an axis at any given time. If a measurement job for the same axis is started, the trigger events are reactivated and the measurement results reset.
  • Page 98: Set Alarm/Error Reactions

    Detailed description 2.4 Actions in synchronized actions Delete wait marker The command CLEARM (marker number) can be programmed in the part program and the action section of a synchronized action. It deletes the marker (marker number) for the channel in which the command is applied (own channel). 2.4.22 Set alarm/error reactions Fault situations...
  • Page 99: Evaluating Data For Machine Maintenance

    Detailed description 2.4 Actions in synchronized actions 2.4.23 Evaluating data for machine maintenance Function Machine operators are able to use system variables in part programs, synchronized actions and via the BTSS interface (even from a PLC or HMI) to access information about the use of the machine.
  • Page 100 Detailed description 2.4 Actions in synchronized actions Configuration example MD18860 $MN_MM_MAINTENANCE_MON = TRUE (Activate recording of maintenance data) MD33060 $MA_MAINTENANCE_DATA[0]=1 (Config. of the recording of maintenance data) MD33060 $MA_MAINTENANCE_DATA[1]=1 MD33060 $MA_MAINTENANCE_DATA[2]=1 ... Activates the system variables for total travel distance, total travel time and travel count for the first 3 axes System variables The following system variables can be read from the part program and from synchronized...
  • Page 101: Call Of Technology Cycles

    Detailed description 2.5 Call of Technology Cycles Call of Technology Cycles Definition A technology cycle is a sequence of actions that are executed sequentially in the interpolation cycle. The actions listed in the Chapter "Actions in synchronized actions" can be grouped together to programs. From the user's point of view, these programs are subprograms without parameters.
  • Page 102 Detailed description 2.5 Call of Technology Cycles Search path The call search path is the same as for subprograms and cycles. Example … AX_X Sub-program- ID=1 EVERY $AA_IM[Y]>=10 DO AX_X name for axis program for X axis AX_X: Axis program: POS[X]=$R[7] FA[X]=377 $A_OUT[1] = 1 POS[X]=R10...
  • Page 103 Detailed description 2.5 Call of Technology Cycles Figure 2-9 Several technology cycles Example (2) for coordinated axis motions: Different axis programs can be started by setting digital NC inputs. Main program: ID=1 WHEN $A_IN[1]==1 DO AXIS_X ID=2 WHEN $A_IN[2]==1 DO AXIS_Y ID=3 WHEN $A_IN[3]==1 DO AA_OVR[Y]=0 ID=4 WHEN $A_IN[4]==1 DO AXIS_Z Axis programs:...
  • Page 104: Coordination Of Synchronized Actions, Technology Cycles, Part Program (And Plc)

    Detailed description 2.5 Call of Technology Cycles AXIS_Z: $AA_OVR[X]=0 POS[Z]=90 POS[Z]=-90 2.5.1 Coordination of synchronized actions, technology cycles, part program (and PLC) Control of technology cycles Technology cycles/synchronized actions are controlled via the identification number of the synchronized action in which they are programmed as an action: Means of coordination Keyword Description...
  • Page 105 Detailed description 2.5 Call of Technology Cycles synchronized actions Synchronized action Figure 2-10 Setting up/locking modal synchronized actions/deleting Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 106: Control And Protection Of Synchronized Actions

    Detailed description 2.6 Control and protection of synchronized actions Control and protection of synchronized actions 2.6.1 Control via PLC Function Modal synchronized actions (ID, IDS) can be locked or enabled from the PLC. • Disabling of all modal synchronized actions •...
  • Page 107 Detailed description 2.6 Control and protection of synchronized actions Cancellation of selective disabling A previously disabled syncronized action is cleared again by the PLC by setting the ID-, IDS- number of the corresponding bit to 0 in the interface: DB21, … DBX300.0 (disable synchronized action No. 1) DB21, …...
  • Page 108: Protected Synchronized Actions

    Detailed description 2.6 Control and protection of synchronized actions Reading/writing of PLC data PLC data can also be read and written from the part program by transferring parameters between the NCK and PLC via the VDI interface. This is an option: PLC variables. References: /FB1/ Function Manual, Basic Functions, Basic PLC Program (P3) Parameters can also be accessed from synchronized actions, thus allowing PLC data to be...
  • Page 109 Detailed description 2.6 Control and protection of synchronized actions Notation of the machine data: MD11500 $MN_PREVENT_SYNACT_LOCK i number of the 1st ID to be disabled MD11500 $MN_$MN_PREVENT_SYNACT_LOCK[0]= i number of the last ID to be disabled MD11500 $MN_PREVENT_SYNACT_LOCK[1]= j ID i and j can also be inverted. If i = 0 and j = 0, no synchronized actions are protected.
  • Page 110 Detailed description 2.6 Control and protection of synchronized actions Note Protection for synchronized actions must be cancelled while protected static synchronized actions are being defined, otherwise POWER ON will have to be executed for every alteration to allow redefinition of the logic. The effectiveness of the disable is identical, regardless of whether it is specified as: •...
  • Page 111: Control System Response For Synchronized Actions In Specific Operational States

    Detailed description 2.7 Control system response for synchronized actions in specific operational states Control system response for synchronized actions in specific operational states 2.7.1 Power On No synchronized actions are active during POWER ON. Static synchronized actions that are required to be active immediately after POWER ON must be activated within an ASUB started by the PLC.
  • Page 112: Nc Stop

    Detailed description 2.7 Control system response for synchronized actions in specific operational states Other reactions, dependent on actions RESET continued Synchronized Modal and non-modal active action is aborted, Static (IDS) action/ synchronized actions are cancelled Active action is aborted, technology cycle technology cycle is reset Axis/...
  • Page 113: Mode Change

    Detailed description 2.7 Control system response for synchronized actions in specific operational states Motion start from non-modal and modal synchronized actions Axis motions started from non-modal and modal actions are interrupted and then restarted by NC START. Speed-controlled spindles remain active. Synchronized actions programmed in the current block remain active.
  • Page 114: Response Of Active Synchronized Actions To End Of Program And Change In Operating Mode

    Detailed description 2.7 Control system response for synchronized actions in specific operational states 2.7.6 Response of active synchronized actions to end of program and change in operating mode See Chapter 2.7.4 "Change of operation mode" and Chapter 2.7.5 "Program end". Synchronized action/ Modal and non-modal actions are aborted Static actions (IDS) remain active...
  • Page 115: Program Interruption By Asub

    Detailed description 2.7 Control system response for synchronized actions in specific operational states 2.7.8 Program interruption by ASUB ASUB start Modal and static motion-synchronous actions remain active and are also operative in the asynchronous subprogram. ASUB end If the asynchronous subprogram is not continued with REPOS, then modal and static motion- synchronous actions modified in the subprogram remain operative in the main program.
  • Page 116: Configuration

    Detailed description 2.8 Configuration Configuration 2.8.1 Configurability Number of synchronized action elements The number of programmable synchronized action blocks depends entirely on the configurable number of synchronized action elements. The number of storage elements for motion-synchronous actions (synchronized action elements) is defined via the machine data: MD28250 $MC_MM_NUM_SYNC_ELEMENTS (Number of elements for expressions in synchronized actions) This data can be set irrespective of the number of blocks available in the control system,...
  • Page 117 Detailed description 2.8 Configuration Note If the user does not wish to program any synchronized actions, then he can reset the value to 0 in the machine data: MD28250 $MC_MM_NUM_SYNC_ELEMENTS In this way, around 16 kByte of DRAM memory can be saved. Display The status display for synchronized actions (see Section 2.9 "Diagnostics only with HMI Advanced") indicates how much of the memory provided for synchronized actions is still...
  • Page 118 Detailed description 2.8 Configuration Guide values for lengthening interpolation cycle As a guide, individual times required to perform operations within synchronized actions (measured on an 840D with NCU 573.x) are given below: Times may be different for other control types. NC language Time requirement...
  • Page 119: Diagnostics (Only With Hmi Advanced)

    Detailed description 2.9 Diagnostics (only with HMI Advanced) Diagnostics (only with HMI Advanced) Diagnostic functionality The following special test tools are provided for diagnosing synchronized actions: • Status display of synchronized actions in the machine operator area • System variables display parameters in the operating range The current values of all synchronized action variables can be displayed (displaying main run variables) •...
  • Page 120: Displaying Status Of Synchronized Actions

    Detailed description 2.9 Diagnostics (only with HMI Advanced) 2.9.1 Displaying status of synchronized actions Status display The status display shows: • Current extract of selected program All programmed synchronized actions according to: • Line number • Code denoting synchronized action type •...
  • Page 121: Displaying Main Run Variables

    Detailed description 2.9 Diagnostics (only with HMI Advanced) 2.9.2 Displaying main run variables Description System variables can be monitored for the purpose of monitoring synchronized actions. Variables, which may be used in this way are listed for selection by the user. A complete list of individual system variables with ID code W for write access and R for read access for synchronized actions can be found in: References:...
  • Page 122 Detailed description 2.9 Diagnostics (only with HMI Advanced) Figure 2-13 Schematic representation of Log main run variables process Operation For information about operating the logging function, please see: References: /BAD/ Operator's Guide HMI Advanced. Log definition The log definition can contain up to 6 specified variables. The values of these variables are written to the log file in the specified cycle.
  • Page 123 Detailed description 2.9 Diagnostics (only with HMI Advanced) Storage method When the effective log file size has been exceeded, the oldest entries are overwritten, i.e. the file works on the circular buffer principle. Starting logging Logging according to one of the initialized log definitions is started by: •...
  • Page 124 Detailed description 2.9 Diagnostics (only with HMI Advanced) Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 125: Boundary Conditions

    Boundary conditions Availability/scope of performance The scope of performance provided by the "Synchronized actions" function package depends on the following: • The type of SINUMERIK control system – Hardware – SW (export/standard versions) • The availability of functions that can be initiated by "Actions": –...
  • Page 126 Boundary conditions • Configurability – Number of simultaneously active synchronized actions – Number of special variables for synchronized actions • Activate command axes/axis programs/technology cycles from synchronized actions • PRESET from synchronized actions • Couplings and coupled motions from synchronized actions –...
  • Page 127 Boundary conditions Expansions in SW 5 and higher From SW 5 to 7, the following services are additionally provided: • Synchronized actions, which can be tagged for the PLC • Availability of additional real-time variables • Access to PLC I/O (option) •...
  • Page 128 Boundary conditions Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 129: Signal Descriptions

    Signal Descriptions Figure 4-1 PLC interface signals for synchronized actions For the signals generated by the auxiliary function output from synchronized actions see: References: /FB1/ Function Manual Basic functions; Auxiliary function output to PLC (H2) Signals to channel With the following signals the PLC application program requests for disabling the assigned synchronized actions: DB21, …...
  • Page 130 Signal Descriptions DBX300.0 of the first modal synchronized action (ID=1/IDS=1) and DBX307.7 of the 64th modal synchronized action (ID=64/IDS=64). Note Only the instance (NCK or PLC), which initiated a disable can cancel the disable again. Signals from channel With the following signals the channel shows the PLC application program for the synchronized actions, which may be disabled by PLC: DB21, …...
  • Page 131: Examples

    Examples Examples of conditions in synchronized actions Path distance from end of block Axial distance from block end: 10 mm or less (workpiece coordinate system): ... WHEN $AC_DTEW <= 10 DO ... G1 X10 Y20 Axis distance from end of path ...
  • Page 132: Reading And Writing Of Sd/Md From Synchronized Actions

    Examples 5.2 Reading and writing of SD/MD from synchronized actions OVR in every interpolation cycle In order to selectively disable a path motion until a programmed signal arrives, $AC_OVR must be set to zero in every interpolation cycle (keyword WHENEVER). WHENEVER $A_IN[1]==0 DO $AC_OVR= 0 Other system variables The list of the readable system variables in synchronized actions includes the full set of the...
  • Page 133 Examples 5.2 Reading and writing of SD/MD from synchronized actions NC language Comment Equal to Then set the axial override of the oscillating axis to 100% (so that the previous synchronized action is cancelled!) N640 ID=4 WHENEVER $AA_DTEPW[X]==0 DO $AA_OVR[Z]=100 $AC_MARKER[0]=1 $AC_MARKER[1]=1 N650 ID=5 WHENEVER $AC_MARKER[0]==1 DO $AA_OVR[X]=0 N660 ID=6 WHENEVER $AC_MARKER[1]==1 DO $AA_OVR[X]=0 if the current position of the oscillating axis in the...
  • Page 134: Examples Of Adaptive Control

    Examples 5.3 Examples of adaptive control NC language Comment N630 ID=3 WHENEVER $AA_IM[Z]==$$SA_OSCILL_REVERSE_POS1[Z] DO $AA_OVR[Z]=0 $AA_OVR[X]=100 Always when the distance-to-go of the part infeed Equal to Then set the axial override of the oscillating axis to 100% (so that the previous synchronized action is cancelled!) N640 ID=4 WHENEVER $AA_DTEPW[X]==0...
  • Page 135: Clearance Control With Variable Upper Limit

    Examples 5.3 Examples of adaptive control 5.3.1 Clearance control with variable upper limit Example of polynomial with dyn. upper limit For the purpose of clearance control, the upper limit of the output ($AA_OFF, override value in axis V) is varied as a function of the spindle override (analog input 1). The upper limit for polynomial 1 is varied dynamically as a function of analog input 2.
  • Page 136: Feedrate Control

    Examples 5.3 Examples of adaptive control Note When system variables are used in the part program, STOPRE must be programmed to ensure block-synchronous writing. The following is an equivalent notation for polynomial definition: FCTDEF(1, 0.2, 0.5, 0.35, 1.5EX-5). 5.3.2 Feedrate control Example of adaptive control with an analog input voltage A process quantity (measured via $A_INA[1] ) must be regulated to 2 V through an additive control factor implemented by a path (or axial) feedrate override.
  • Page 137: Control Velocity As A Function Of Normalized Path

    Examples 5.3 Examples of adaptive control a3 = 0 (not a square component) Upper limit = 100 Lower limit = -100 Polynomial No. FCTDEF( LLIMIT ULIMIT y for x = 0 Lead square component cubic component With the values determined above, the polynomial is defined as follows: FCTDEF(1, -100, -100, 100, 200, 0, 0) The following synchronized actions can be used to activate the adaptive control function for the axis feedrate:...
  • Page 138: Monitoring A Safety Clearance Between Two Axes

    Examples 5.4 Monitoring a safety clearance between two axes Figure 5-3 Regulate velocity continuously Polynomial 2: Lower limit: 1 Hi limit: 100 : 100 : -100 : -100 : not used With these values, the polynomial definition is as follows: FCTDEF(2, 1, 100, 100, -100, -100) ;...
  • Page 139: Store Execution Times In R Parameters

    Examples 5.5 Store execution times in R parameters NC language Comment Safety barrier ID=1 WHENEVER $AA_IM[X2] - $AA_IM[X1] < 30 DO $AA_OVR[X2]=0 Safe position ID=2 EVERY $AA_IM[X2] - $AA_IM[X1] < 15 DO POS[X1]=0 Store execution times in R parameters Task Store the execution time for part program blocks starting at R parameter 10.
  • Page 140 Examples 5.6 "Centering" with continuous measurement Figure 5-4 Diagrammatic representation of measurement of gaps between gear teeth %_N_MEAC_MITTEN_MPF ;Measure using rotary axis B (BACH) with display of difference ;between measured values ;*** Define local user-defined variables *** Input number of gear teeth N1 DEF INT ZAEHNEZAHL Hysteresis positive edge probe N5 DEF REAL HYS_POS_FLANKE...
  • Page 141 Examples 5.6 "Centering" with continuous measurement *** Input values for ZAHNRADMESSEN *** Enter number of gear teeth to be measured N50 ZAEHNEZAHL=26 Hysteresis positive edge probe N70 HYS_POS_FLANKE = 0.160 Hysteresis negative edge probe N80 HYS_NEG_FLANKE = 0.140 *** Assign variables *** Start: ID2 calculation result for gap dimension R1=0...
  • Page 142 Examples 5.6 "Centering" with continuous measurement ; Measure sequentially, store in FIFO 1, MT2 neg, MT2 pos edge ;the distance between two teeth is measured ;falling edge-...-rising edge, probe 2 N310 ID=5 WHEN $R7==1 DO MEAC[BACH]=(2, 1, -2, 2) Cancel measuring job N320 ID=6 WHEN (Z_MW>=M_ZAEHNE) DO MEAC[BACH]=(0) STOPRE...
  • Page 143: Axis Couplings Via Synchronized Actions

    Examples 5.7 Axis couplings via synchronized actions Axis couplings via synchronized actions 5.7.1 Coupling to leading axis Task assignment A cyclic curve table is defined by means of polynomial segments. Controlled by means of arithmetic variables, the movement of the master axis and the coupling process between master and slave (following) axes is activated/deactivated.
  • Page 144: Non-Circular Grinding Via Master Value Coupling

    Examples 5.7 Axis couplings via synchronized actions N265 WAITP(BACH) Rotate leading axis with feedrate endlessly in R5 N270 ID=3 EVERY $R2==1 DO MOV[BACH]=1 FA[BACH]=R5 Stop leading axis N275 ID=4 EVERY $R2==0 DO MOV[BACH]=0 N280 M00 N285 STOPRE Disable coupling condition N290 R1=0 Disable condition for rotating leading axis N295 R2=0...
  • Page 145 Examples 5.7 Axis couplings via synchronized actions Figure 5-5 Diagrammatic representation of non-circular contour grinding %_N_CURV_TABS_SPF PROC CURV_TABS N160 ; *** Define table 1 override *** Table 1 periodic N165 CTABDEF(CASW,CACH,1,1) N170 CACH=0 CASW=10 N175 CACH=90 CASW=10 N180 CACH=180 CASW=100 N185 CACH=350 CASW=10 N190 CACH=359.999 CASW=10 N195 CTABEND...
  • Page 146 Examples 5.7 Axis couplings via synchronized actions %_N_UNRUND_MPF ; Coupling group for a non-circular machining ; XACH is the infeed axis of the grinding disk ; CACH is the workpiece axis as rotary axis and master value axis ; Application: Grind non-circular contours ;...
  • Page 147 Examples 5.7 Axis couplings via synchronized actions *** On-off switch of the LEADON CASW N2100 override table *** N2200 WAITP(CASW) CTAB Coupling ON leading axis CACH N2300 ID=5 EVERY $R3==1 DO LEADON(CASW,CACH,1) CTAB Coupling OFF leading axis CACH N2400 ID=6 EVERY $R3==0 DO LEADOF(CASW,CACH) *** Control override of the CACH from position N2500...
  • Page 148: On-The-Fly Parting

    Examples 5.7 Axis couplings via synchronized actions Expansion options The example above can be expanded by the following components: • Introduction of a Z axis to move the grinding wheel or workpiece from one non-circular operation to the next on the same shaft (cam shaft). •...
  • Page 149: Technology Cycles Position Spindle

    Examples 5.8 Technology cycles position spindle NC program Comment PRESET at beginning N1200 PRESETON(X1,0) Start position Y axis N1300 Y=R6 G0 Axis is linear PRESET according to length R3, PRESTON may N1400 ID=1 EVERY $AA_IW[X]>$R3 DO PRESETON(X1,0) be done only with WHEN and EVERY new start after parting N1500 WAITP(Y) ;...
  • Page 150 Examples 5.8 Technology cycles position spindle Synchronized actions %_N_MAIN_MPF ; when $A_DBB[0] set by PLC, IDS=1 EVERY $A_DBB[0]==1 DO take up basic position NULL_POS when $A_DBB[1] set by PLC, IDS=2 EVERY $A_DBB[1]==1 DO position spindle to the value stored in ZIEL_POS $A_DBW[1] Technology cycle NULL_POS...
  • Page 151: Synchronized Actions In The Tc/Mc Area

    Examples 5.9 Synchronized actions in the TC/MC area Synchronized actions in the TC/MC area Introduction The following figure shows the schematic structure of a tool-changing cycle. Figure 5-6 Schematic sequence for tool-changing cycle Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 152 Examples 5.9 Synchronized actions in the TC/MC area Flowchart Figure 5-7 Flowchart for tool-changing cycle Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 153 Examples 5.9 Synchronized actions in the TC/MC area NC program Comment %_N_WZW_SPF ;$PATH=/_N_SPF_DIR Marker on = 1 when MagAxis traversed N10 DEF INT WZPreselection,WZSpindle N15 WHEN $AC_PATHN<10 DO $AC_MARKER[0]=0 $AC_MARKER[1]=0 $AC_MARKER[2]=0 N20 ID=3 WHENEVER $A_IN[9]==TRUE DO $AC_MARKER[1]=1 Marker on = 1 when MagAxis traversed N25 ID=4 WHENEVER $A_IN[10]==TRUE DO $AC_MARKER[2]=1 Block search active ? ->...
  • Page 154 Examples 5.9 Synchronized actions in the TC/MC area NC program Comment N180 WHENEVER $AC_MARKER[1]==0 DO $AC_OVR=0 N185 WHENEVER $AA_STAT[C2]<>4 DO $AC_OVR=0 N190 WHENEVER $AA_DTEB[C2]>0 DO $AC_OVR=0 N195 G53 G64 X=Magazin1ZP1X Y=Magazin1ZP1Y F60000 N200 G53 G64 X=Magazin1WPX Y=Magazin1WPY F60000 Release tool N205 M20 N210 G53 G64 Z=Magazin1ZGeloest F40000 N215 G53 G64 X=Magazin1VPX Y=Magazin1VPY F60000 M=QU(150)
  • Page 155: Data Lists

    Data lists Machine data 6.1.1 General machine data Number Identifier: $MN_ Description 11110 AUXFU_GROUP_SPEC Auxiliary function group specification 11500 PREVENT_SYNACT_LOCK Protected synchronized actions 18860 MM_MAINTENANCE_MON Activate recording of maintenance data 6.1.2 Channelspecific machine data Number Identifier: $MC_ Description 21240 PREVENT_SYNACT_LOCK_CHAN Protected synchronized actions for channel 28250 MM_NUM_SYNC_ELEMENTS...
  • Page 156: Axis-Specific Machine Data

    Data lists 6.2 Setting data 6.1.3 Axis-specific machine data Number Identifier: $MA_ Description 30450 IS_CONCURRENT_POS_AX Concurrent positioning axis 32060 POS_AX_VELO Initial setting for positioning axis velocity 32070 CORR_VELO Axial velocity for handwheel, ext. ZO, cont. dressing, clearance control (from SW3) 32074 FRAME_OR_CORRPOS_NOTALLOWED Effectiveness of frames and tool length offset...
  • Page 157: Signals

    Data lists 6.3 Signals Signals 6.3.1 Signals from channel DB number Byte.Bit Description 21, … 280.1 Disable modal synchronized actions acc. to DBX300.0-307.7 21, … 300.0 - Modal synchronized actions disabled acc. to DBX300.0-307.7, acknowledgment from 21, … 300.0 - Modal synchronized actions ID or IDS 1 - 21, …...
  • Page 158 Data lists 6.3 Signals Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 159: Appendix

    Appendix Publication-specific information A.1.1 Correction sheet - fax template Should you come across any printing errors when reading this publication, please notify us on this sheet. Suggestions for improvement are also welcome. Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 160 Appendix A.1 Publication-specific information Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 161: Overview

    Appendix A.1 Publication-specific information A.1.2 Overview Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 162 Appendix A.1 Publication-specific information Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...
  • Page 163: Index

    Index DB21, ... DBX318.2, 64 DBX318.3, 64 DB21, … $AA_OFF, 56 DBB308-315, 106 DBX.281.1, 107 DBX1.2, 106, 130 DBX280.1, 107, 130 Adaptive control, 134 DBX281.1, 130 Additive control, 52 DBX300.0, 106, 107, 129 Example, 136 DBX307.7, 106, 107, 129, 130 Multiplicative control, 53 DBX308.0, 130 Axial feed, 73...
  • Page 164 Index MD 37210, 90 Preset actual-value memory, 85 MD10722, 77 Program interruption by ASUB, 115 MD11110, 45 Protected synchronized actions, 108 MD11500, 108, 109, 110 MD18860, 99, 100 MD20110, 64, 112, 114 MD21190, 62, 63, 64 Real-time variables MD21194, 61, 63 Advertisements, 121 MD21196, 61, 63 Read, 47...
  • Page 165 Index Real-time calculations, 22 Scanning frequency, 15 Technology cycle, 101 Scope of performance, 125 Technology cycles, 101 Synchronized actions (FBSY)|Data fields, lists, 157 Call, 101 Synchronized actions (FBSY)|Example, 131 TOFFON Synchronized actions (FBSY)|Interface signals, 157 Online tool length offset, 61 Synchronized actions (FBSY)|Supplementary Total travel count, 100 conditions, 125...
  • Page 166 Index Synchronized actions Function Manual, 11/2006, 6FC5397-5BP10-2BA0...

Table of Contents