Description of Functions 11/2002 Edition Synchronized Actions SINUMERIK 840D/840Di/810D SINUMERIK 840D/840Di/810D Synchronized Actions Brief Description 1 Detailed Description 2 Supplementary Conditions 3 Data Descriptions 4 Signal Descriptions 5 Examples 6 Data Fields, Lists 7 References A Index B Description of Functions Valid for Control Software version SINUMERIK 840D 6 SINUMERIK 840DE (export version) 6 SINUMERIK 840D powerline 6 SINUMERIK 840DE powerline 6 SINUMERIK 840Di 2 SINUMERIK 840DiE (export version) 2 SINUMERIK 810D 3 SINUMERIK 810DE (export version) 3 SINUMERIK 810D powerline 6 SINUMERIK 810DE powerline 6 11.2002 Edition 3ls SINUMERIKr Documentation Printing history Brief details of this edition and previous editions are listed below. The status of each edition is shown by the code in the "Remarks" column. Status code in the "Remarks" column: A . . . . . New documentation. B . . . . . Unrevised reprint with new Order No. C . . . . . Revised edition with new status. If factual changes have been made on the page since the last edition, this is indicated by a new edition coding in the header on that page 06.94 08.94 02.95 04.95 09.95 03.96 08.97 12.97 12.98 08.99 04.00 10.00 09.01 11.02 6FC5 297--0AC30--0BP0 6FC5 297--0AC30--0BP1 6FC5 297--2AC30--0BP0 6FC5 297--2AC30--0BP1 6FC5 297--3AC30--0BP0 6FC5 297--3AC30--0BP1 6FC5 297--4AD40--0BP0 6FC5 297--4AD40--0BP1 6FC5 297--5AD40--0BP0 6FC5 297--5AD40--0BP1 6FC5 297--5AD40--0BP2 6FC5 297--6AD40--0BP0 6FC5 297--6AD40--0BP1 6FC5 297--6AD40--0BP2 A C C C C C A1) C C C C C C C 1) This publication is provided as a replacement for Section S5 in Description of Functions "Extended Functions" applying to lower software versions. This manual is included in the documentation on CD-ROM (DOCONCD) Edition Order No. Remarks 11.02 6FC5 298--6CA00--0BG3 C Trademarks SIMATICr, SIMATIC HMIr, SIMATIC NETr, SIROTECr, SINUMERIKr and SIMODRIVEr are trademarks of Siemens. The remaining names and designations may also be trademarks, the use of which by any third parties for their own purposes may violate the rights of the copyright. Further information is available under the following Internet address: http://www.ad.siemens.de/sinumerik Other functions not described in this documentation might be executable in the control. This does not, however, represent an obligation to supply such functions with a new control or when servicing. This publication was produced with Interleaf V7 The reproduction, transmission or use of this document or its contents is not permitted without express written authority. Offenders will be liable for damages. All rights, including rights created by patent grant or registration of a utility model or design, are reserved. E Siemens AG 1994 -- 2002 All rights reserved. Order No. 6FC5 297--6AD40--0BP2 Printed in the Federal Republic of Germany We have checked that the contents of this document correspond to the hardware and software described. Nonetheless, differences might still exist. The information contained in this document is, however, reviewed regularly and any necessary changes will be included in the next edition. We welcome suggestions for improvement. Subject to technical changes without prior notice. Siemens--Aktiengesellschaft Synchronized Actions (FBSY) 08.97 Preface Structure of the documentation The SINUMERIK documentation is organized on 3 levels: S General documentation S User documentation S Manufacturer/Service documentation This manual is intended for the machine-tool manufacturer. It gives a detailed description of the functions available in the SINUMERIK 840D/810D controls. The Descriptions of Functions apply only to the software versions specified. When a new software version is released, the Descriptions of Functions for that version must be ordered. Old Descriptions of Functions are only partially applicable to new software versions. Please consult your local Siemens office for more detailed information about other SINUMERIK 840D/840Di/810D as well as the publications that apply to all SINUMERIK controls (e.g. Universal Interface, Measuring Cycles ...). Notice Other functions not described in this documentation might be executable in the control. However, no claim can be made regarding the availability of these functions when the equipment is first supplied or for service cases. Hotline If you have questions about the control, please contact the hotline: A&D Technical Support Tel.: +49 (0) 180 5050--222 Fax: +49 (0) 180 5050--223 email: adsupport@siemens.com Please send us any questions about the documentation (suggestions for improvements, corrections) to the following fax number or email address: Fax: +49 (0) 9131 98--2176 email: motioncontrol.docu@erlf.siemens.de Fax form: see reply form at the end of the manual. Internet address SINUMERIK http://www.ad.siemens.de/sinumerik E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition v Synchronized Actions (FBSY) 09.01 08.97 SINUMERIK 840D powerline As of 09.2001, improved--performance variants SINUMERIK 840D powerline and SINUMERIK 840DE powerline are available. For a list of available powerline modules, please refer to the following Hardware Description: References: /PHD/, Configuring Manual SINUMERIK 840D SINUMERIK 810D powerline As of 12.2001, improved--performance variants SINUMERIK 810D powerline and SINUMERIK 810DE powerline are available from. For a list of available powerline modules, please refer to the following Hardware Description: References: /PHC/, Configuring Manual SINUMERIK 810D Aims and objectives This document describes the Synchronized Actions function for SINUMERIK 840D SW 4 and later and for SINUMERIK 810D SW 2 and later. It replaces the S5 function described for older software versions in the "Extended Functions" Description of Functions. The Descriptions of Functions provide the information required for configuration and installation. Target groups The information contained in the function descriptions is designed for: S Design engineers S PLC programmers creating the PLC user program with the signals listed S Start--up engineers once the system has been configured and set up S Maintenance personnel inspecting and interpreting status signals and alarms ! vi Important This document is valid for the following controls: D SINUMERIK 840D, software version 6 D SINUMERIK 810D, software version 6 D SINUMERIK 840Di software version 2 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 10.00 08.97 Synchronized Actions (FBSY) Software version Table 1-1 The software versions indicated in this documentation relate to the SINUMERIK 840D control. The software version valid in parallel for the SINUMERIK 810D control (if the function has been enabled, see /BU/, Catalog NC 60) is not indicated specifically. Equivalents are as follows: Equivalent software version SINUMERIK 840D SINUMERIK 810D SINUMERIK 810D powerline SINUMERIK 840Di 6.3 (09.01) equivalent to -- 6.1 (12.01) 2.1 (07.01) 4.3 (04.00) equivalent to 2.3 (12.97) -- 1.1 (07.00) 3.7 (03.97) equivalent to 1.7 (03.97) -- -- Warnings The following warnings with varying levels of severity are used in this document: ! ! ! Danger This symbol indicates that death, grievous injury or substantial property damage will occur if the appropriate precautions are not taken. Warning This symbol indicates that death, grievous injury or substantial property damage may occur if the appropriate precautions are not taken. Caution This symbol used with de safety alert symbol indicates a potentially hazardous situation which, if not avoided, may result in minor or moderate injury. Caution This symbol used without de safety alert symbol indicates a potentially hazardous situation which, if not avoided, may result in property damage. Attention This symbol used without de safety alert symbol indicates a potentially situation which, if not avoided, may result in an undesirable result or state. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition vii Synchronized Actions (FBSY) ! 10.00 08.97 Important This symbol always appears in the documentation when important information is being conveyed. Notice Additional facts are referred to. viii E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 06.01 09.01 11.02 08.97 Synchronized Actions (FBSY) Contents 1 Brief Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13 2 Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15 2.1 2.1.1 2.1.2 2.1.3 Components of synchronized actions . . . . . . . . . . . . . . . . . . . . . . . . . Definition of motion-synchronized actions . . . . . . . . . . . . . . . . . . . . . Execution of synchronized actions . . . . . . . . . . . . . . . . . . . . . . . . . . . List of possible actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15 2-21 2-21 2-22 2.2 Real-time evaluations and calculations . . . . . . . . . . . . . . . . . . . . . . . . 2-23 2.3 2.3.1 2.3.2 2.3.3 2.3.4 2.3.5 2.3.6 2.3.7 2.3.8 Special real--time variables for synchronized actions . . . . . . . . . . . . Marker/counter variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Synchronized action parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . R parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Machine and setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FIFO variables (circulating memory) . . . . . . . . . . . . . . . . . . . . . . . . . . System variables saved in SRAM (as of SW 6.3) . . . . . . . . . . . . . . . List of system variables relevant to synchronized actions . . . . . . . . 2-29 2-29 2-30 2-31 2-32 2-32 2-33 2-36 2-37 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.4.10 2.4.11 2.4.12 2.4.13 2.4.14 2.4.15 2.4.16 2.4.17 2.4.18 2.4.19 2.4.20 Actions in synchronized actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Output of M, S and H auxiliary functions to PLC . . . . . . . . . . . . . . . . Setting (writing) and reading of real--time variables . . . . . . . . . . . . . Alteration of SW cam positions and times (setting data) . . . . . . . . . FCTDEF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Polynomial evaluation SYNFCT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Overlaid movements $AA_OFF settable (as of SW 6) . . . . . . . . . . Online tool offset FTOC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RDISABLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . STOPREOF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DELDTG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Disabling a programmed axis motion . . . . . . . . . . . . . . . . . . . . . . . . . Starting command axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Axial feed from synchronized actions . . . . . . . . . . . . . . . . . . . . . . . . . Starting/stopping axes from synchronized actions . . . . . . . . . . . . . . Spindle motions from synchronized actions . . . . . . . . . . . . . . . . . . . . Setting actual values from synchronized actions . . . . . . . . . . . . . . . Coupled axes and activation/deactivation couplings . . . . . . . . . . . . Measurements from synchronized actions . . . . . . . . . . . . . . . . . . . . . Setting and deletion of wait markers for channel synchronization . Setting alarm/error reactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-63 2-65 2-67 2-68 2-69 2-71 2-76 2-78 2-80 2-80 2-80 2-82 2-82 2-85 2-86 2-86 2-90 2-91 2-94 2-98 2-99 2.5 2.5.1 Call of technology cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Coordination of synchronized actions, technology cycles, parts program (and PLC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-100 2.6 2.6.1 2.6.2 Control and protection of synchronized actions . . . . . . . . . . . . . . . . . Control via PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Protected synchronized actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-105 2-105 2-107 2.7 Control system response for synchronized actions in specific operational states . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-110 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-103 ix Synchronized Actions (FBSY) 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 06.01 08.97 2.7.7 2.7.8 2.7.9 2.7.10 Power On . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RESET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NC STOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Change in operating mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . End of program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Response of active synchronized actions to end of program and change in operating mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Block search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Program interruption by ASUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . REPOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Response to alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-112 2-113 2-113 2-113 2-114 2.8 2.8.1 Configuring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configurability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-115 2-115 2.9 2.9.1 2.9.2 2.9.3 Diagnostics (with MMC 102/MMC 103 only) . . . . . . . . . . . . . . . . . . . Display status of synchronized actions . . . . . . . . . . . . . . . . . . . . . . . . Display real-time variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Log real-time variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-117 2-118 2-118 2-119 3 Supplementary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-121 4 Data Descriptions (MD, SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-123 4.1 General machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-123 4.2 Channel-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-124 4.3 Axis/spindle-specific machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-128 4.4 Setting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-130 5 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-131 6 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-133 6.1 Examples of conditions in synchronized actions . . . . . . . . . . . . . . . . 6-133 6.2 Reading and writing of SD/MD from synchronized actions . . . . . . . 6-134 6.3 6.3.1 6.3.2 6.3.3 Examples of adaptive control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clearance control with variable upper limit . . . . . . . . . . . . . . . . . . . . . Feed control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Control velocity as a function of normalized path . . . . . . . . . . . . . . . 6-136 6-136 6-137 6-139 6.4 Monitoring of a safety clearance between two axes . . . . . . . . . . . . . 6-140 6.5 Store execution times in R parameters . . . . . . . . . . . . . . . . . . . . . . . . 6-140 6.6 "Centering" with continuous measurement . . . . . . . . . . . . . . . . . . . . . 6-141 6.7 6.7.1 6.7.2 6.7.3 Axis couplings via synchronized actions . . . . . . . . . . . . . . . . . . . . . . . Coupling to master axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Non-circular grinding via master value coupling . . . . . . . . . . . . . . . . On-the-fly parting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-144 6-144 6-145 6-147 6.8 Technology cycles "Position spindle" . . . . . . . . . . . . . . . . . . . . . . . . . . 6-149 6.9 Synchronized actions in the TCC/MC area . . . . . . . . . . . . . . . . . . . . 6-150 x 2-110 2-110 2-111 2-111 2-112 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 06.01 08.97 7 Synchronized Actions (FBSY) Data Fields, Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-155 7.1 Interface signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-155 7.2 Machine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-155 7.3 Alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-156 A References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-157 B Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Index-169 J E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition xi Synchronized Actions (FBSY) 06.01 08.97 Notes xii E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 08.97 1 Brief Description Brief Description 1 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 synchronism with parts program execution. 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 parts program run. Applications The following selection from the wide range of possible applications indicates how actions programmed in synchronized actions can be usefully employed. S Output of auxiliary functions to PLC S Writing and reading of real-time variables S Positioning of axes and spindles S Activation of synchronous procedures such as: -- Read-in disable -- Deletion of distance-to-go -- End preprocessing stop S Activation of technology cycles S Online calculation of function values S Online tool offsets S Activation/deactivation of couplings/coupled motion S Take measurements S Enabling/disabling of synchronized actions All possible applications of this function are described in Section "Detailed Description". E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 1-13 12.98 08.97 Synchronized Actions (FBSY) 1 Brief Description In NCK interpolation cycle: Initiated actions: Real-time events and values: -- Digital inputs/ signals -- Values of system variables -- Measured values -- Drive data Fig. 1-1 Gating logic -- Non-modal -- Evaluation of conditions -- Modal -- Static modal (across different operating modes) Schematic diagram of synchronized actions For details of how to program synchronized actions, please refer to References: /PGA/, Programming Guide Advanced The following chapters describe: -- Functional conditions for synchronized actions in Chapter 2, -- The required machine data in Chapter 4, -- Example applications in Chapter 6. Notice This Description of Functions applies to the functionality provided in SW 5. The functions of synchronized actions in SW versions up to and including 3 are described in: References: /FB/, S5, "Synchronized Actions" J 1-14 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.1 Components of synchronized actions 08.97 2 Detailed Description 2.1 Components of synchronized actions Structure of a synchronized action Component: Validity, identification number Example: IDS=1 Frequency EVERY G code for cond. and action G70 Condition Action code word (fixed) G code for action Action or technology cycle See 2.5 $AAA_IM[B] > 15 DO G71 POS[X]=100 The components of a synchronized action, i.e.: S Validity: -- with identification number -- without identification number S Frequency S G code for condition and action (SW 5 and later) S Condition S G code for actions (SW 5 and later) S Action(s)/Technology cycle are explained individually below. Validity, ID number There are three possible methods by which the scope of validity of a synchronized action can be defined, i.e.: S No status S ID S IDS E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-15 10.00 08.97 Synchronized Actions (FBSY) 2.1 Components of synchronized actions No specified validity 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, non--modally active synchronized actions are active modally for all preprocessing stop blocks (incl. implicitly generated ones) and for implicitly generated intermediate blocks. ID Synchronized actions with validity identifier ID are modally active in subsequently programmed blocks. They are operative only in AUTOMATIC mode. Limitation: IDS -- ID actions remain operative only until another synchronized action with the same identification number is programmed or -- until they are canceled with CANCEL(i), see Section 2.5.1. Statically active synchronized actions that are programmed with vocabulary word "IDS" are active in all operating modes. They are also referred to as static synchronized actions. Option. Synchronized actions programmed with ID or IDS are deleted from the part program. Identification numbers For modal synchronized actions (ID, IDS) identification numbers between 1 and 255 are allocated. They are important for the functions of mutual coordination of synchronized actions. See Section 2.5.1. Modal / static synchronized actions with identification numbers between 1--64 can be disabled and enabled from the PLC. See 2.6.1. Unique identification numbers must be allocated in the channel. Applications for static synchronized actions: -- AC grinding (active in JOG mode as well) -- Gating logic for Safety Integrated -- Monitoring functions, reaction to machine states in all operating modes -- Optimization of tool change -- Cyclic machines Examples: IDS=1 EVERY $A_IN[1]==1 DO POS[X]=100 ID=2 EVERY $A_IN[1]==0 DO POS[X]=0 All operating modes AUTOMATIC Notice The following actions are operative only in AUTOMATIC mode when the program is running: STOPREOF, DELDTG 2-16 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.1 Components of synchronized actions 08.97 Frequency Table 2-1 Vocabulary words (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 vocabulary words are an integral component of the synchronized action condition. Effect of frequency vocabulary words Vocabulary word Scanning frequency None If no scanning frequency is programmed, then the action is executed cyclically in every interpolation cycle. WHENEVER The associated action/technology cycle is executed cyclically in every interpolation cycle provided that the condition is fulfilled. FROM If the condition has been fulfilled once, the action/technology cycle is executed cyclically in every interpolation cycle for as long as the synchronized action remains active. WHEN As soon as the condition has been fulfilled, the action/technology cycle is executed once. Once the action has been executed a single time, the condition is no longer checked. EVERY The action/technology cycle is activated once if the condition if fulfilled. The action/technology cycle is executed every time the condition changes from the "FALSE" to the "TRUE" state. In contrast to vocabulary word WHEN, checking of the condition continues after execution of the action/cycle until the synchronized action is deleted or disabled. For details of technology cycles, please refer to Section 2.5. Deletion If an active synchronized action is deselected (deleted) with CANCEL from the part program, the currently active action remains operative. Positioning motions are completed as programmed. Command CANCEL can be programmed to delete a modal or statically active synchronized action. If a synchronized action is deleted while the positioning axis motion it has initiated is still in progress, the positioning motion continues until properly executed. A channel stop also cancels the positioning movement from synchronized actions/technology cycles. G code for condition and action In SW 5 and later, G codes can be programmed in synchronized actions. This allows defined settings to exist for the evaluation of the condition and the action/ technology cycle to be executed, independent of the current part program status. It is necessary to separate the synchronized actions from the program environment, because synchronized actions are required to execute their actions at any time from a defined initial state as a result of fulfilled trigger conditions. Applications: Definition of the systems of measurement for condition evaluation and action through G codes G70, G71, G700, G710. Notice In SW 5, the use of the G codes in synchronized actions is limited to these 4 G codes. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-17 Synchronized Actions (FBSY) 2.1 Components of synchronized actions 08.97 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. Only one G code of the G code group may be programmed for each part of the condition. Conditions Execution of actions/technology cycles can be made dependent upon a condition (logical expression). The condition is checked in the interpolation cycle. If no condition is programmed, the action is performed once in every IPO cycle. With SW up to version 3, two conditions are permitted, i.e. the comparison of a real--time variable with an expression calculated during preprocessing or the comparison of two real--time variables. Examples: WHENEVER $AA_IM[X] > 10.5*SIN(45) DO .... or WHENEVER $AA_IM[X] > $$AA_IM[X1] DO ... An additional condition is available in SW 4, i.e. the linking of comparisons using Boolean operations. Boolean operators in the NC language may be used for this purpose: NOT, AND, OR, XOR, B_OR, B_AND, B_XOR, B_NOT. 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. Example: WHEN $AA_IM[X2] <= $AA_IM[X1] +.5 DO $AA_OVR[X1]=0 ; Stop when safety clearance is exceeded The options for applying real--time expressions are described in Section "Calculations in real time". When conditions are programmed, all the system variables named in Section 2.3.8 can be addressed. In addition: S Machine data, e.g. $$MN_..., $$MC_..., $$MA_... S Setting data, e.g. $$SN_..., $$SC_..., $$SA_... Notice S S S GUD variables cannot be used R parameters are addressed with $R... Setting and machine data whose setting may vary during machining must be programmed with $$S._... / $$M._... Further examples of conditions can be found in Section 6.1. 2-18 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.1 Components of synchronized actions 08.97 G code for the action The G code may specify a different G code from the condition for all actions in the block and technology cycles. If technology cycles are contained in the action part, the G code remains modally active for all actions after the end of the technology cycle until the next G code. Only one G code of the G code group may be programmed for each action part. Actions Every synchronized action contains one or several 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. Example: Program/ technology cycle WHEN $AA_IM[Y] >= 35.7 DO M135 $A_OUT[1]=1 If the actual value of the Y axis is greater or equal to 35.7, then M135 is output to the PLC and output 1 set at the same time. A program (name) can also be specified as an action. This program may contain any of the actions which can be programmed individually in synchronized actions. Such programs are also referred to as technology cycles below. A technology cycle is a sequence of actions that are processed sequentially in the interpolation cycle. See Section 2.5. Application: Single axis programs, cyclic machines. Processing The blocks of a part program are prepared at the program preprocessing stage, stored and then executed sequentially on the interpolation level (main run). Variables are accessed during block preparation. When real--time variables (e.g. actual values) are used, block preparation is interrupted to allow current real--time values up to the preceding block to be supplied. Synchronized actions are transported in preprocessed form together with the prepared block into the interpolator. Real--time variables used are evaluated in the interpolation cycle. Block preparation is not interrupted. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-19 Synchronized Actions (FBSY) 2.1 Components of synchronized actions Part program 08.97 Prepared PP blocks N5 block1 N10 block2 N15 ID=1 N20 block4 N25 block5 ... block1' Program preprocessing block2' [ -- ] block4' block5' ... Stored, preprocessed synchronized actions Memory size: MD 28250: $MC_MM_NUM_SYNC_ELEMENTS Validity, ID, IDS Frequency ID 1 WHENEVER Condition $A_..< $A_.. Action(s) techn. cycles M130 Main run Synchronized action processing Actions, technology cycles Movement of axes, ... Setpoints Deletion Sequence of synchronized action interpretation Fig. 2-1 Schematic diagram illustrating processing of synchronized actions Processing of synchronized actions The check on synchronized actions to determine whether they contain actions to be activated is carried out in the interpolation cycle. Action(s) are executed in synchronism with path control if the preconditions programmed on the left of the action(s) are fulfilled. Processing sequence Modally active synchronized action instructions are processed in order of their ID number within an interpolation cycle (i.e. block with ID number 1 before block with ID number 2..., etc.). After the modal synchronized action instructions have been executed, non--modal action instructions are processed in the order in which they are programmed. 2-20 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.1 Components of synchronized actions 08.97 2.1.1 Definition of motion-synchronized actions Defining programs Motion-synchronized actions can be defined in the following ways: S In the part program S 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-synchronized actions are executed if S the synchronized action exists and has not been deselected with CANCEL(ID), see Section 2.5.1 S the synchronized action is not disabled, i.e. no LOCK(ID), see Section 2.5.1 S evaluation of the action is due as a result of the programmed frequency vocabulary word or S the appropriate condition is fulfilled. For further details, please refer to the following subsections. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-21 Synchronized Actions (FBSY) 2.1 Components of synchronized actions 2.1.3 12.98 10.00 12.97 08.97 List of possible actions S Output of M, S and H auxiliary functions to the PLC S Real--time variables can be set (written) to obtain the following functionality: -- Overlaid motion ($AA_OFF), option. -- Feed control ($AC_OVR, $AA_OVR), disabling of a programmed axis motion -- etc. S Changes to SW cam positions and times (setting data) and alteration of other setting data S Modification of coefficients and limits from FCTDEF S SYNFCT (polynomial evaluation) S FTOC (online tool offsets) S RDISABLE (read--in disable) S STOPREOF (preprocessing stop cancellation) S DELDTG (delete distance--to--go) S Calculation of curve table values S Axial feed from synchronized actions S Axial frames S Moving/positioning axes from synchronized actions S Spindle motions from synchronized actions S Actual--value setting from synchronized actions (Preset) S Activation/deactivation of couplings and coupled motion S Measurements from synchronized actions S Setting and deletion of wait markers for channel synchronization S Set alarm/error reactions S Travel to fixed stop FXS (FXST, FXSW) S Travel with limited torque FOC (FOCON/FOCOF) S Extended stop and retract (Description of Functions M3) S Reading and, if tagged accordingly, writing of system variables from the list in Section 2.3.8. These actions are described in detail in Section 2.4. 2-22 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 01.00 08.97 2.2 Synchronized Actions (FBSY) 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, such as in the part program, do not take place. See data type below. Scope of application The term "Real--time expression" refers below to all calculations that can be carried out in the interpolation cycle. Real--time expressions are used in conditions and in assignments to NC addresses and variables. Real--time variables All real--time variables are evaluated (read) at interpolation cycle and can be written as part of an action. Real--time variable identifiers Real--time variables are all variables that begin with: $A... (main run variable) or $V... (servo values). To identify these variables unambiguously, they can be programmed in synchronized actions with $$. E.g. $AA_IM[X] or $$AA_IM[Y]: Actual value for X axis or Y axis in machine coordinate system. Notice Setting and machine data whose setting may vary during machining must be programmed with $$S._... / $$M._... . Data type Only real--time variables of the same data type may be linked by a logic operation within the same expression. In order to process various types of data nevertheless, you can use the conversion routines provided for type matching (SW 5.2, see conversion routines)In contrast to full expressions in the NC language, calculations are performed in the data type of the real--time variables involved. ... DO $R10 = $AC_PARAM[0] ... DO $R10 = $AC_MARKER[0] ; admissible: REAL, REAL ; not admissible: REAL, INT The following examples of real--time evaluations were already available in SW version 3.2 (they employ only real--time variables of this SW version): Example 1 for SW 3.2 On the left of the comparison, there is a comparison variable calculated in real time and, on the right, an expression which is none of the permitted real--time processing variables that begin with $$. WHEN $AA_IM[X] > $A_INA[1] DO M120 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-23 Synchronized Actions (FBSY) 2.2 Real-time evaluations and calculations 01.00 08.97 M120 is output during execution of the motion programmed in the following block if the X axis actual value exceeds the value applied at analog input 1. With this programming, the actual value is reevaluated in every interpolation cycle while the value at the analog input is generated at the instant of interpretation. Example 2 for SW 3.2 On the left of the comparison, there is a comparison variable calculated in real time and, on the right, an expression which is one of those permitted for the synchronized action (beginning with $$). WHEN $AA_IM[X] > $$A_INA[1] DO M120 The current actual value of the X axis is compared in the IPO cycle with analog input 1 because an $$ variable is programmed on the right. Both variables are compared to one another in the interpolation cycle. Example 3 for SW 3.2 $$ variables may also be programmed on the left of the comparison. WHEN $$AA_IM[X] > $$A_INA[1] DO M120 Identical to example 2. The left--hand and right--hand sides are always compared in real time. Extensions in SW 4 The real--time variables available in synchronized actions are listed in Section 2.3.8. New system variables which have been added in subsequent software versions are indicated in the table. S Machine and setting data In the case of machine and setting data, $$S... or $$M... must be programmed for online access. The access instruction to be evaluated during interpretation/ decoding must be preceded by a $ sign. Real--time variables that may legally be accessed from synchronized actions are addressed preceded only by a $ sign. Conversion routines (SW 5.2) There is not implicit type conversion from REAL to INT and vice versa for synchronized actions. However, the user may explicitly call two conversion routines RTOI( ) and ITOR( ) for type conversion. The functions can be called S in the part program and S from the synchronized action. ITOR REAL ITOR( INT ) -- Converting Integer to Real The function converts the integer value transferred to a real value and returns this value. The transferred variable is not changed. Example: $AC_MARKER[1] = 561 ID=1 WHEN TRUE DO $AC_PARAM[1] = ITOR( $AC_MARKER[1] ) RTOI 2-24 INT RTOI( REAL ) -- Converting from Real to Integer E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 01.00 03.02 08.97 Synchronized Actions (FBSY) 2.2 Real-time evaluations and calculations The function RTOI() converts the Real value presented to 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 "Motionsynchronous action: Arithmetic error" is output and no conversion is performed. The transferred variable is not changed. Notice The function RTOI() does not produce an unambiguous result when inverted, i.e. it is not possible to determine the original Real value from the value returned as the decimal places are lost during conversion! Example RTOI: $AC_PARAM[1] = 561.4378 ID=1 WHEN TRUE DO $AC_MARKER[1] = RTOI( $AC_PARAM[1] ) ; Result: 561 ... $AC_PARAM[1] = --63.867 ID=1 WHEN TRUE DO $AC_MARKER[1] = RTOI( $AC_PARAM[1] ) ;Result:--64 ... $AC_MARKER[1]= 10 $AC_PARAM[1] = --6386798797.29 ID=1 WHEN TRUE DO $AC_MARKER[1] = RTOI( $AC_PARAM[1] ) ;Result: Alarm 20145 ;$AC_MARKER[1] = 10 (unchanged due to alarm) Implicit type conversion (SW 6.4) In SW 6.4 and later, variables of various data types can be assigned to one another in synchronized actions without having to call the RTOI or ITOR function, e.g. REAL to INT and vice versa. If values outside of the interval [INT_MIN, INT_MAX] would result from the conversion from REAL to INTEGER, alarm 20145 "Motion--synchronous action: Arithmetic error" is output and no conversion is performed. Examples: Previously $AC_MARKER[1] = 561 ID=1 WHEN TRUE DO $AC_PARAM[1] = ITOR( $AC_MARKER[1] ) SW 6.4 and later $AC_MARKER[1] = 561 ID=1 WHEN TRUE DO $AC_PARAM[1] = $AC_MARKER[1] Previously $AC_PARAM[1] = 561.4378 ID=1 WHEN TRUE DO $AC_MARKER[1] = RTOI( $AC_PARAM[1] ) ; 561 SW 6.4 and later $AC_PARAM[1] = 561.4378 ID=1 WHEN TRUE DO $AC_MARKER[1] = $AC_PARAM[1] E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition : 561 2-25 Synchronized Actions (FBSY) 2.2 Real-time evaluations and calculations Basic arithmetic operations 08.97 Real--time variables of the REAL and INT type can be linked logically by the following arithmetic operations: -- Addition -- Subtraction -- Multiplication -- Division -- Integer division -- Modulo division Only variables of the same type may be linked by these operations. Expressions Expressions from basic arithmetic operations can be bracketed and nested. See priorities for operators on the next page. Comparisons The following comparison operators may be used: == <> < > <= >= equal to not equal to less than greater than less than or equal to greater than or equal to Boolean operators The following Boolean operators may be used: Bit operators The following bit operators may be used: NOT AND OR XOR B_OR B_AND B_XOR B_NOT NOT, AND, OR, exclusive OR bit--serial OR bit--serial AND bit--serial exclusive OR bit--serial negation Operands are variables and constants of the INT type. 2-26 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.2 Real-time evaluations and calculations 08.97 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: 1. NOT, B_NOT Negation, bit--serial negation 2. *, /, DIV, MOD Multiplication, division 3. +, -- Addition, subtraction 4. B_AND Bit--serial AND 5. B_XOR Bit--serial exclusive OR 6. B_OR Bit--serial OR 7. AND AND 8. XOR Exclusive OR 9. OR OR 10. Not used 11. == <> > < >= <= Comparison operators equal to not equal to greater than less than greater than or equal to less than or equal to and parentheses should be used where necessary. The logic operation result for a condition must be a BOOL data type. Example of a multiple expression: WHEN ($AA_IM[X] > VALUE) AND ($AA_IM[Y] > VALUE1) DO ... Functions A real--time variable of the REAL type can be used to create function values sine, cosine, etc. The following functions are possible: SIN, COS, ABS, ASIN, ACOS, TAN, ATAN2, TRUNC, ROUND, LN, EXP, ATAN, POT, SQRT, CTAB, CTABINV Example: ... DO $AC_PARAM[3]=COS($AA_IM[X]) For a description of how to operate these functions, please refer to: References: Indexing /PG/, Programming Guide /PGA/ Programming Guide Advanced The index of a real--time 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 each interpolation cycle. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-27 Synchronized Actions (FBSY) 2.2 Real-time evaluations and calculations 08.97 Restrictions: 2-28 -- It is not permissible to nest indexes with real--time variables. -- A real--time index cannot be generated by a variable that is not generated itself in real time. The following programming would lead to errors: $AC_PARAM[1]=$P_EP[$AC_MARKER[0]] E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 06.01 08.97 2.3 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Special real--time variables for synchronized actions A complete list of system variables that may be addressed in synchronized actions can be found in Section 2.3.8. The characteristics of a few special real-time variables are described below: S Marker/counter variables -- Channel--specific markers S Timers S Synchronized action parameters S R parameters S Machine and setting data S FIFO variables (circulating memory) SW 4 2.3.1 Special real--time variables, i.e. timers, R parameters, machine and setting data and FIFO variables are available from SW 4. Marker/counter variables Channel--specific markers Variable $AC_MARKER[n] serves as a marker or counter in data type INTEGER. n: Number of marker: 0--n The number of markers per channel is set via machine data. MD 28256: NUM_AC_MARKER Markers exist once in each channel under the same name. They are stored in the dynamic memory and reset to 0 on Power ON, NC Reset and End of Program, ensuring identical start conditions for every program run. Marker variables can be read and written in synchronized actions. Also as of SW 6.3 As of software release 6.3, it is possible to select the memory location for $AC_MARKER[n] between DRAM and SRAM using MD 28257: MM_BUFFERED_AC_MARKER. 0: 1: dynamic memory DRAM, (default) static memory SRAM In MD 28256: NUM_AC_MARKER can take a maximum value of 20000. One element requires 4 bytes. You must ensure that sufficient memory of the correct type is available. Flags saved in SRAM can be included in the data backup. See 2.3.7 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-29 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions 2.3.2 08.97 Timers System variable $AC_TIMER[n] permits actions to be started after defined periods of delay. n: Number of time variable Unit: Second Data type: REAL The number of available timer variables is programmed in machine data MD 28258: MM_NUM_AC_TIMER Setting timer Incrementation of a timer variable is started by means of value assignment: $AC_TIMER[n]=value n: Number of timer variable Value: Start value (normally 0) Stopping timer Incrementation of a timer variable is stopped through the assignment of a negative value: $AC_TIMER[n]=--1 Reading timer The current time value can be read whether the timer variable is running or halted. After a timer variable has been stopped through the assignment of --1, the current time value remains stored and can be read. Example Output of an actual value via analog output 500 ms after detection of a digital input: WHEN $A_IN[1]==1 DO $AC_TIMER[1]=0 ;reset and start timer WHEN $AC_TIMER[1]>=0.5 DO $A_OUTA[3]=$AA_IM[X] $AC_TIMER[1]=--1 2-30 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 06.01 08.97 2.3.3 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Synchronized action parameters Variables $AC_PARAM[n] serve as a buffer in synchronized actions. Data type: REAL n: Number of parameter 0 -- n The number of available AC parameter variables in each channel is programmed via machine data MD 28254: MM_NUM_AC_PARAM These parameters exist once in each channel under the same name. The $AC_PARAM parameters are stored in the dynamic memory and reset to 0 on power ON, NC Reset and end of program, ensuring identical start conditions for every part program run. $AC_PARAM variables can be read and written in synchronized actions. Also as of SW 6.3 As of software release 6.3, it is possible to select the memory location for $AC_PARAM[n] between DRAM and SRAM using MD 28255: MM_BUFFERED_AC_PARAM. 0: 1: dynamic memory DRAM, (default) static memory SRAM In MD 28255: NUM_AC_PARAM can take a maximum value of 20000. One element requires 8 bytes. You must ensure that sufficient memory of the correct type is available. Synchronization parameters saved in SRAM can be included in the data backup. See 2.3.7 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-31 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions 2.3.4 05.98 08.97 R parameters Definition R parameters are variables of the REAL time that are stored in battery--backed memory. For this reason, they retain their settings after end of program, RESET and power ON. Application in synchronized actions By programming the $ sign in front of R parameters, they can also be used in synchronized actions. Example: WHEN $AC_MEA== 1 DO $R10= $AA_MM[Y] ; if valid measurement available, transfer measured value to R parameter Notice It is advisable to apply a given R variable either normally in the part program or in synchronized actions. If an R variable that has been used in synchronized actions must be later applied "normally" in the part program, then a STOPRE instruction must be programmed to ensure synchronization. Example: WHEN $A_IN[1] == 1 DO $R10 = $AA_IM[Y] G1 X100 F150 STOPRE IF R10 > 50 .... ; evaluation of R parameter 2.3.5 Machine and setting data In SW version 4 and later it is possible to read and write machine and setting data from synchronized actions. Access must be programmed according to the following criteria: S MD, SD that remain unchanged during machining and S MD, SD, whose settings change during machining. Reading invariable MD, SD Machine and setting data whose settings do not vary are addressed from synchronized actions in the same way as in normal part program commands. They are preceded by a $ sign. Example: ID=2 WHENEVER $AA_IM[z]< $SA_OSCILL_REVERSE_POS2[Z]--6 DO $AA_OVR[X]=0 ; Here, reversal range 2, which is assumed to remain static during ; operation, is addressed for oscillation For a complete example of oscillation with infeed within the reversal range, please refer to Section 6.2 and: References: 2-32 /FB/, P5, Oscillation E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 05.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Reading variable MD, SD Machine data and setting data whose values may change during machining are addressed from a synchronized action preceded by the $$ sign. Example: ID=1 WHENEVER $AA_IM[z]< $$SA_OSCILL_REVERSE_POS2[Z]--6 DO $AA_OVR[X]=0 In this situation, it is assumed that the reversal position can be changed at any time by an operator action. Writing MD, SD Precondition: The currently set access authorization level must allow write access. It is not meaningful to change MD and SD from synchronized actions unless the change takes immediate effect. The effectiveness of changes is stated individually for all MD and setting data in: References: /LIS/, Lists Addressing: Machine and setting data to be changed must be addressed preceded by the $$ sign. Example: ID=1 WHEN $AA_IW[X]>10 DO $$SN_SW_CAM_PLUS_POS_TAB_1[0]= 20 $$SN_SW_CAM_MINUS_POS_TAB_1[0]= 30 ; Alteration of switching positions of SW cams 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 Fig. 2-3 shows the memory structure of a FIFO variable. Number The number of available AC FIFO variables is programmed in machine data MD 28260: NUM_AC_FIFO Size The number of values that can be stored in a FIFO variable is defined via machine data MD 28264: LEN_AC_FIFO All FIFO variables are equal in length. Data type Values in FIFO variables are of the REAL data type. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-33 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Meaning of index 08.97 Index n: Indices 0 to 5 have special meanings: n= 0: When the variable is written with index 0, a new value is stored in the FIFO. When it is written with index 0, the oldest element is read and deleted from the FIFO. n=1: n=2: n=3: Access to oldest stored element Access to latest stored element Sum of all FIFO elements MD 28266: MODE_AC_FIFO determines the mode of summation: Bit 0 = 1 Update sum every time new element is stored Bit 0 = 0 No summation n=4: Number of elements available in FIFO. Every element in the FIFO can be read and write-accessed. n=5 FIFO variables are reset by resetting the number of elements, e.g. for the first FIFO variable: FIFO variable parameter: $AC_FIFO1[4]=0 Current write index relative to beginning of FIFO n= 6 to 6+nmax: Access to nth FIFO element: Notice FIFO access is a special form of R parameter access (see below). FIFO values are stored in the R parameter area, i.e. in the static memory area. They are not deleted by end of program, reset or power ON. FIFO values are stored simultaneously when R parameters are archived. Machine data MD 28262: START_AC_FIFO defines the number of the R parameter which marks the beginning of FIFO variable storage in the R parameter area. The current number of R parameters in a channel is programmed in machine data MD 28050: MM_NUM_R_PARAM 2-34 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions 08.97 The following two diagrams show a schematic representation of part lengths of parts on a belt that have been stored in FIFO variables. 22 12.5 17.8500 Length measurement Light barrier Fig. 2-2 17.8563 10.3 Direction of belt travel Product lengths of sequence of parts on conveyor belt Read out oldest element: $R1=$AC_FIFO1[0] $AC_FIFO1 Write in new element: $AC_FIFO1[0]=22 10.3 $AC_FIFO1[0] $AC_FIFO1[1] Oldest element: 10.3 $AC_FIFO1[2] Latest element: 12.5 Latest element: 22 $AC_FIFO1[3] $AC_FIFO1[4] $AC_FIFO1[5] Sum: 58.5126 Number: 4 Current write index: 10 $AC_FIFO1[6] 10.3 $AC_FIFO1[7] 17.8563 $AC_FIFO1[8] 17.8500 $AC_FIFO1[9] 12.5 Latest element $AC_FIFO1[10] $AC_FIFO1[11] $AC_FIFO1[12] Fig. 2-3 xxxxxx Example of FIFO variables E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-35 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions 2.3.7 06.01 08.97 System variables saved in SRAM (as of SW 6.3) RESET response System variables $AC_MARKER and $AC_PARAM saved in SRAM retain their values after RESET and Power On. Notice In the case of part programs and synchronized actions that used system variables saved in SRAM, you must make sure that the variables are not initialized to 0 after RESET. This may require some adaptation if system variables saved in DRAM have been used previously. 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. i denotes the relevant channel number. Order The saved modules are entered in the full backup file _N_INITIAL_INI according to R parameters. References: 2-36 /IAD/, Installation and Start--Up Guide E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 07.98 08.97 2.3.8 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions List of system variables relevant to synchronized actions Overview The following table shows a list of all system variables (sorted according to category) that can be read or write--accessed from synchronized actions. The access options are specified. Legend: r w R W PP SA SW Read Write Read with implicit preprocessor stop Write with implicit preprocessor stop Part program Synchronized action For SW version see note Notice Type specifies the software version (e.g. /4) in which the system variables were introduced if they have not existed since SW 2. SA access specifies the software version in which access to the system variable from synchronized actions was introduced if this was not available since the introduction of the system variables. The name component "ACT" in system variables for synchronized actions (e.g. $AA_VACTM) identifies setpoints which are calculated in the interpolator and used as input variables for axis control. The name prefix "$VA_..." identifies genuine actual values of a machine axis which are reproduced by evaluating the encoder information. User variables Name Type /SW Description/values Index PP access SA access /SW $AC_MARKER[n] INT Marker variable for motion-synchronous actions Counter R/W r/w $AC_PARAM[n] DOUBLE Arithmetic variable for motion-synchronous actions Counter R/W r/w $AC_FIFOi[n] DOUBLE /4 i: 1--10, No. of FIFO variable n: Parameter number, 0 -- max. FIFO element. Meanings of n: n=0: When the variable is written with index 0, a new value is stored in the FIFO. When a variable is read with index 0, the oldest element is read and deleted from the FIFO. n=1: Read access to oldest element n=2: Read access to latest element n=3: Total of all elements stored in the FIFO if bit 0 is enabled in MD $MC_MM_MODE_FIFO. n=4: Read access to the current number of FIFO elements n= 5 -- m: Read access to individual FIFO elements. 5 is the oldest element, 6 is the second oldest, etc. No. of parameter R/w r/w E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-37 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions R parameters Name Type /SW Description/values Index PP access SA access /SW $R[n], Rn DOUBLE The max. number of R parameters is defined in the machine data. R parameters are addressed from synchronized actions with $R or $R[i]. Otherwise ...Rn or R[n] is used. Counter r/w r/w /4 Name Type /SW Description/values Index PP access SA access /SW $AN_SETUP_TIME DOUBLE IF $AN_SETUP_TIME > 60000 GOTOF MARK01 time since last control start--up with default data. Minutes R r /5 $AN_POWERON_TIME DOUBLE IF $AN_POWERON_TIME == 480 GOTOF MARK02 time since last normal control start--up. Minutes R r /5 $AN_NCK_VERSION DOUBLE NCK version: Only the part of the floating point number before the decimal point is interpreted; the part after the decimal point may contain IDs for intermediate development releases. The part before the decimal point contains the official ID of the software release for the NCK: For example, the value of the variable is 200000.0 for NCK Release 20.00.00. NCK version R r /6 Name Type /SW Description/values Index PP access SA access /SW $A_TOOLMN[t] INT Magazine -- number of tool t T number R r /4 $A_TOOLMLN[t] INT Magazine -- number of tool t T number R r /4 $A_MONIFACT REAL Factor for tool life monitoring R/W r /4 $AC_MONMIN REAL Actual value to setpoint value ratio for tool monitoring. Threshold for tool search strategy "Only load tools with actual value greater than threshold" R/W r /5 $A_DNO[i] INT Read a D number specified by PLC via VDI interface R r /4 System data Tool data 2-38 Index E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 04.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions G groups Name Type /SW Description/values Index PP access $A_GG INT $A_GG[n] Read current G function of a group from synchronized action n: number of G group as for PLC interface $P_ACTID[n] BOOL Modal synchronized action with ID n active, if TRUE n: 1 -- 16 Synchronized action with ID R $P_GG[n] INT Read current G function of a group from parts program n: number of G group as for PLC interface R Name Type /SW Description/values Index $AC_STAT INT /4 $AC_PROG SA access /SW r /5 r /2 /2 Channel statuses PP access SA access /SW Channel status --1: Invalid 0: Channel reset 1: Channel interrupted 2: Channel active R r /4 INT /4 Program status --1: Invalid 0: Program reset 1: Program stopped 2: Program active 3: Program waiting 4: Program interrupted R r /4 $AC_SYNA_MEM INT /4 Free memory for motion-synchronous actions indicates how many elements of the memory allocated with $MC_MM_NUM_SYNC_ELEMENTS are still free. R r /4 $AC_IPO_BUF INT /4 Fill level of interpolation buffer R r /4 $AC_IW_STAT INT /5 Positional information for articulated joints (transformation--specific) for Cart. PTP travel R r /5 $AC_IW_TU INT /5 Positional information for axes (MCS) for Cart. PTP travel R r /5 $A_PROBE[n] INT /4 $A_PROBE[1]: Status of first probe $A_PROBE[2]: Status of second probe 0: Not deflected 1: Deflected No. of probe R r $AC_MEA[n] INT Probe activated if TRUE (1) 1 -- MAXNUM_PROBE No. of probe R r /4 $AC_TRAFO INT Code number of the active transformation with reference to machine data $MC_TRAFO_TYPE n -- R r /4 $AC_LIFTFAST INT Rapid lift: 0: No reverse stroke was active 1: Reverse stroke was active -- R/W r/w E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-39 07.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions ASUBs Name Type /SW Description/values $AC_ASUP INT /4 See also: References: /FB/, K1, (Mode Group, Channel, Program Operation Mode) Remarks: Reasons for ASUB activation. Act. cau.: Cause of activation Act. by: Source of activation Cont.: Option(s) for continuation BIT 0: Act. cau.: User interrupt "ASUB with Blsync" (block synchronization), Act. by: Vdi signal, dig./anal. interface, Cont. : Either Reorg or Ret BIT 1: Act. cau.: User interrupt "ASUB". (The position after the block in which the stoppage took place is stored for program continuation with Repos.) Act. by: Vdi signal, dig./anal. interface Cont.: Either Reorg or Ret BIT 2: Act. cau.: User interrupt "ASUB from Ready channel status", Act. by: Vdi signal, dig./anal. interface Cont.: Either Reorg or Ret BIT 3: Act. cau: User interrupt "ASUB in a manual mode and channel status not READY " Act. by: Vdi signal, dig./anal. interface Cont.: Either Reorg or Ret BIT 4: Act. cau: User interrupt "ASUB". (The position at the time of the interrupt is stored for program continuation with Repos). Act. by: Vdi signal, dig./anal. interface Cont.: Either Reorg or Ret BIT 5: Act. cau.: Cancellation of subprogram repetition Act. by: Vdi signal Cont.: Use of the REPOS system ASUB BIT 6: Act. cau.: Activation of decoding single block Act. by: Vdi signal (+OPI) Cont.: Use of the REPOS system ASUB BIT 7: Act. cau.: Activation of delete distance-to--go; Act. by: Vdi signal Cont.: Use of the Ret system ASUB BIT 8: Act. cau: Activation of axis synchronization Act. by: Vdi signal Cont.: Use of the REPOS system ASUB BIT 9: Act. cau.: Mode change Act. by: Vdi signal Cont.: Use of the REPOS or RET system ASUB (see MD) 2-40 Index PP access SA access /SW R r /4 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 07.98 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Name Type /SW Description/values $AC_ASUP ff. INT /4 BIT 10: Act. cau.: Program continuation under teach--in or after teach--in deactivation Act. by: Vdi signal Cont.: Use of the Ret system ASUB BIT 11: Act. cau.: Overstore selection Act. by: PI service Cont.: Use of the REPOS system ASUB BIT 12: Act. cau.: Alarm with reaction correction block with Repos Act: by: Internal Cont.: Use of the REPOS system ASUB BIT 13: Act. cau.: Retraction movement with G33 and Stop Act. by: Internal Cont.: Use of the Ret system ASUB BIT 14: Act. cau.: Activation of dry run feedrate; Act. by: Vdi signal Cont.: Use of the REPOS system ASUB BIT 15: Act. cau.: Deactivation of dry run feedrate; Act. by: Vdi signal Cont.: Use of the REPOS system ASUB BIT 16: Act. cau.: Activation of skip block; Act. by: Vdi signal Cont.: Use of the REPOS system ASUB BIT 17: Act. cau.: Deactivation of block skip ; Act. by: Vdi signal Cont.: Use of the REPOS system ASUB BIT 18: Act. cau: Activation of machine data Act. by: PI service Cont.: Use of the REPOS system ASUB Index PP access SA access /SW R r /4 Bit 19: Act. cau: Set tool offset active Act. by: PI service "_N_SETUDT" Cont.: Use of the REPOS system ASUB Bit 20: Act. cau: System ASUB after SERUPRO type search run has reached the destination. Act. by: Pi serv. "_N_FINDBL" parameter == 5 Cont.: Use of the REPOS system ASUB Commands to / from channel (diagnostics) Name Type /SW Description/values $A_PROTO BOOL /4 $A_PROTOC BOOL /4 Index PP access SA access /SW Activate/deactivate log function for first user 0: Deactivate 1: Activate R/W r/w Activate/deactivate log function for a user 0: Deactivate 1: Activate R/W r/w E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-41 10.00 10.00 07.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Inputs/outputs Name Type /SW Description/values Index PP access SA access /SW $A_IN[n] BOOL Digital input of NC No. of input R r $A_OUT[n] BOOL Digital output of NC No. of output R/w r/w $A_INA[n] DOUBLE Analog input of NC No. of input R r $A_OUTA[n] DOUBLE Analog output of NC After the write operation, the value does not become active until the next interpolator cycle; it can then be read back. No. of output R/w r/w $A_INCO[n] BOOL Comparator input No. of input R r Read and write PLC variables Name Type /SW Description/values Index PP access SA access /SW $A_DBB[n] INT /4 Read/write data byte (8 bits) from/to PLC Offset in I/O area R/w r/w $A_DBW[n] INT /4 Read/write data word (16 bits) from/to PLC Offset in I/O area R/w r/w $A_DBD[n] INT /4 Read/write double data word (32 bits) from/to PLC Offset in I/O area R/w r/w $A_DBR[n] DOUBLE /4 Read/write real data (32 bits) from/to PLC Offset in I/O area R/w r/w Index PP access SA access /SW R/w r/w Link variables Name Type /SW Description/values $A_DLB[n] INT /5 Read/write data byte (8 bits) from/to NCU link $A_DLW[n] INT /5 Read/write data word (16 bits) from/to NCU link Position offset in link memory R/w r/w $A_DLD[n] INT /5 Read/write double data word (32 bits) from/to NCU link Position offset in link memory R/w r/w 2-42 Position offset in link memory E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 10.00 07.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Name Type /SW Description/values Index PP access SA access /SW $A_DLR[n] DOUBLE /5 Read/write real data (32 bits) from/to NCU link Position offset in link memory R/w r/w $A_LINK_TRANS _RATE INT /5 Number of bytes which can still be transferred via the NCU link in the present interpolation cycle. -- r/ r/ Direct PLC_IO Name Type /SW Description/values Index PP access SA access /SW $A_PBB_IN[n] INT /5 Read data byte (8 bits) directly from PLC I/O Position offset in PLC input area R/ r/ $A_PBW_IN[n] INT /5 Read data word (16 bits) directly from PLC I/O Position offset in PLC input area R/ r/ $A_PBD_IN[n] INT /5 Read double data word (32 bits) directly from PLC I/O Position offset in PLC input area R/ r/ $A_PBR_IN[n] DOUBL E /5 Read real data (32 bits) directly to PLC I/O Position offset in PLC input area R/w r/w $A_PBB_OUT[n] INT /5 Write data byte (8 bits) directly to PLC I/O Position offset in PLC output area R/w r/w $A_PBW_OUT[n] INT /5 Write data word (16 bits) directly to PLC I/O Position offset in PLC output area R/w r/w E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-43 10.00 07.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Name Type /SW Description/values Index PP access SA access /SW $A_PBD_OUT[n] INT /5 Write double data word (32 bits) directly to PLC I/O Position offset in PLC output area R/w r/w $A_PBR_OUT[n] DOUBL E /5 Write real data (32 bits) directly to PLC I/O Position offset in PLC output area R/w r/w Tool management References: /FBW/, Tool Management Name Type /SW Description/values Index PP access SA access /SW $AC_TC_FCT INT /5 Command number. This specifies the desired operation. -- R/ r/ $AC_TC_STATUS INT /5 Status of the command to be read with $AC_TC_FCT. -- R/ r/ $AC_TC_THNO INT /5 Number of the toolholder (spindle no.) in which the new tool is to be loaded. -- R/ r/ $AC_TC_TNO INT /5 NCK--internal T number of the new tool (to be loaded). 0: There is no new tool. -- R/ r/ $AC_TC_MFN INT /5 Source magazine number of the new tool. 0: There is no new tool. -- R/ r/ $AC_TC_LFN INT /5 Source location number of the new tool. 0: There is no new tool. -- R/ r/ $AC_TC_MTN INT /5 Destination magazine number of the new tool. 0: There is no new tool. -- R/ r/ $AC_TC_LTN INT /5 Destination location number of the new tool. 0: There is no new tool. -- R/ r/ $AC_TC_MFO INT /5 Source magazine number of the old tool (to be replaced). 0: There is no old tool. -- R/ r/ $AC_TC_LFO INT /5 Source location number of the old tool (to be replaced). 0: There is no old tool. -- R/ r/ $AC_TC_MTO INT /5 Destination magazine number of the old tool (to be replaced). 0: There is no old tool. -- R/ r/ $AC_TC_LTO INT /5 Destination location number of the old tool (to be replaced). 0: There is no old tool. -- R/ r/ 2-44 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 10.00 07.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Timers Name Type /SW Description/values $A_YEAR INT $A_MONTH Index PP access SA access /SW System time, year R r /4 INT System time, month R r /4 $A_DAY INT System time, day R r /4 $A_HOUR INT System time, hour R r /4 $A_MINUTE INT System time, minute R r /4 $A_SECOND INT System time, second R r /4 $A_MSECOND INT System time, millisecond R r /4 $AC_TIME DOUBLE Time from block start in seconds R r /4 $AC_TIMEC DOUBLE Time from block start in interpolation cycles R r /4 $AC_TIMER[n] DOUBLE /4 Timer unit in seconds. The time is counted inter- Counter nally in multiples of the interpolation cycle. Incrementation of a timer variable is started by means of value assignment $AC_TIMER[n]=. Incrementation of a timer variable is stopped through the assignment of a negative value: $AC_TIMER[n]=--1 The current time value can be read whether the timer variable is running or halted. After a timer variable has been stopped through the assignment of --1, the current time value remains stored and can be read. The value is defined in MD 28258: MM_NUM_AC_TIMER R/W r/w E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-45 10.00 07.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Path motion Name Type /SW Description/values $AC_PATHN DOUBLE $AC_DTBW PP access SA access /SW Normalized path parameter, value between 0 = start of block and 1 = end of block R r DOUBLE Geometric distance from start of block in workpiece coordinate system. The programmed position alone determines the distance calculation. If the axis is a coupled--motion axis, the position component resulting from the axis coupling is ignored. R r $AC_DTBB DOUBLE Geometric distance from start of block in basic coordinate system. The programmed position alone determines the distance calculation. If the axis is a coupled--motion axis, the position component resulting from the axis coupling is ignored. R r $AC_DTEW DOUBLE Geometric distance from end of block in workpiece coordinate system. The programmed position alone determines the distance calculation. If the axis is a coupled--motion axis, the position component resulting from the axis coupling is ignored. R r $AC_DTEB DOUBLE /3 Geometric distance from end of block in basic coordinate system. The programmed position alone determines the distance calculation. If the axis is a coupled--motion axis, the position component resulting from the axis coupling is ignored. R r $AC_PLTBB DOUBLE /3 Path distance from start of block in basic coordinate system. The variable can only be accessed from synchronized actions. R r $AC_PLTEB DOUBLE Path distance to end of block in basic coordinate system. The variable can only be accessed from synchronized actions. R r $AC_DELT DOUBLE Path distance--to--go in workpiece coordinate system after deletion of distance--to--go for motion synchronized actions R r $P_APDV BOOL Returns TRUE if the positional values that can be read with $P_APR[X] or $P_AEP[X] (start point/contour point with smooth approach and retraction) are valid. R r 2-46 Index /4 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 10.00 07.98 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Velocities, channel--specific Name Type /SW Description/values $P_F DOUBLE $AC_OVR Index PP access SA access /SW Path feed last programmed R r DOUBLE Path override for synchronized actions: Multiplicative override component, acts in addition to operator override, programmed override and transformation override. The total factor is limited to 200%. It must be written again in every interpolation cycle, otherwise the value 100% applies. $AA_OVR[S1] changes the spindle override. The override defined by the machine data MD 12100: OVR_FACTOR_LIMIT_BIN, MD 12030: OVR_FACTOR_FEEDRATE[30], MD 12010: OVR_FACTOR_AX_SPEED[30] is not exceeded R/W r/w /4 $AC_VC DOUBLE Additive path feedrate override for synchronized actions The compensation value is not active with G0, G33, G331, G332 or G63. The compensation value must be written again in every interpolator cycle, otherwise the value 0 applies. An override of 0 cancels the compensation value; otherwise the override has no effect on the compensation value. The total feedrate cannot be negative as a result of the compensation value. The upper value is limited such that the maximum axis velocities and accelerations are not exceeded. The calculation of other feedrate components is not affected by $AC_VC. The override values defined by the machine data MD 12100: OVR_FACTOR_LIMIT_BIN, MD 12030: OVR_FACTOR_FEEDRATE[30], MD 12010: OVR_FACTOR_AX_SPEED[30], MD 12070: OVR_FACTOR_SPIND_SPEED are not exceeded. The additive feedrate override is limited such that the resulting feedrate does not exceed the maximum override value of the programmed feedrate. R/W r/w /4 $AC_VACTB DOUBLE Path velocity in basic coordinate system R r $AC_VACTW DOUBLE Path velocity in workpiece coordinate system R r Name Type /SW Description/values Index PP access SA access /SW $AA_S[n] DOUBLE /4 Actual spindle speed The sign identifies the direction of rotation n: Spindle number, 0 ... max. spindle number Spindle no. RS r /4 $AC_CONSTCUT_S[n] DOUBLE /6 Current constant cutting rate. n: Spindle number, 0 ... max. spindle number Spindle no. RS r /6 Spindle data E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-47 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Name Type /SW Description/values Index PP access SA access /SW $AC_SDIR[n] INT /3 Spindle rotation currently active 3: Spindle rotation, clockwise, 4: Spindle rotation, counterclockwise, 5: Spindle stop n: Spindle number, 0 ... max. spindle number Spindle no. RS r /3 $AC_SMODE[n] INT /3 Spindle mode currently active: 0: No spindle present in channel 1: Speed control mode 2: Positioning mode 3: Synchronous mode 4: Axis mode n: Spindle number, 0 ... max. spindle number Spindle no. RS r /3 $AC_SGEAR[n] INT /5 Gear stage currently active 1: 1st gear stage is active 2: 2nd gear stage is active 3: 3rd gear stage is active 4: 4th gear stage is active 5: 5th gear stage is active n: Spindle number, 0 ... max. spindle number Spindle no. RS r /5 $AC_MSNUM INT /3 Returns the number of the active master spindle: 0: No spindle present 1..n: Number of master spindle RS r /3 $AC_MTHNUM INT /5 Returns the number of the active master toolholder: 0: No master toolholder present 1..n: Number of master toolholder RS r /5 PP access SA access /SW Polynomial values for synchronized actions Name Type /SW Description/values $AC_FCTiLL, DOUBLE R/W r/w /4 $AC_FCTLL[j] /4 Lower limit of polynomial for synchronized actions (SYNFCT) i: 1--3, evaluation function FCTDEF 1 -- 3 j: Polynomial number $AC_FCTiUL, DOUBLE R/W r/w /4 $AC_FCTUL[j] /4 Upper limit of polynomial for synchronized actions (SYNFCT) i: 1--3, evaluation function FCTDEF 1 -- 3 j: Polynomial number $AC_FCTiC[n], DOUBLE /(4) i: 1 -- 3, polynomials 1 to 3; coefficient n: 0 -- 3 R/W r/w /4 $AC_FCT1[n] DOUBLE /(4) a1 coefficient for polynomial n R/W r/w /4 $AC_FCT2[n] DOUBLE /(4) a2 coefficient for polynomial n R/W r/w /4 $AC_FCT3[n] DOUBLE /(4) a3 coefficient for polynomial n R/W r/w /4 $AC_FCT0[n] 2-48 Index a0 coefficient for polynomial n E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 10.00 04.00 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Channel statuses Name Type /SW Description/values Index PP access SA access /SW $AC_ALARM_STAT INT /5 (Selected) alarm reactions for synchronized actions (SYNFCT) Bit 2 = 1 NOREADY (active rapid deceleration and cancellation of servo enable) Bit 6 = 1 STOPBYALARM ( ramp stop of all channel axes) Bit 9 = 1 SETVDI (VDI interface signal alarm is set ) Bit 13 = 1 FOLLOWUPBYALARM (follow--up) -- R r $AN_ESR_TRIGGER BOOL /5 $AN_ESR_TRIGGER = 1 triggering of "Extended stop and retract" -- R/W r/w /5 $AC_ESR_TRIGGER BOOL /5 $AC_ESR_TRIGGER = 1 Triggering of "NC--driven ESR" -- R/W r/w /5 $AC_OPERATING_ TIME DOUBLE /5 IF $AC_OPERATING_TIME < 12000 GOTOB STARTMARK Total operating time for NC programs in AUTOMATIC mode (in seconds) -- R r /5 $AC_CYCLE_TIME DOUBLE /5 IF $AC_CYCLE_TIME > 2400 GOTOF ALARM01 Operating time of selected NC program (in seconds) -- R r /5 $AC_CUTTING_TIME DOUBLE /5 IF $AC_CUTTING_TIME > 6000 GOTOF ACT_M06 Tool operation time (in seconds) -- R r /5 $AC_REQUIRED_ PARTS DOUBLE /5 $AC_REQUIRED_PARTS = ACTUAL_LOS Definition of number of required workpieces (workpiece setpoint), e.g. for definition of a batch size, day production ... -- R/W r/w /5 $AC_TOTAL_PARTS DOUBLE /5 IF $AC_TOTAL_PARTS > SERVICE_COUNT GOTOF MARK_END Total time for all manufactured workpieces -- R/W r/w /5 $AC_ACTUAL_PARTS DOUBLE /5 IF $AC_ACTUAL_PARTS == 0 GOTOF NEW_RUN Number of workpieces actually produced (actual workpiece value). With $AC_ACTUAL_PARTS == $AC_REQUIRED_PARTS is automatically $AC_ACTUAL_PARTS = 0. -- R/W r/w /5 $AC_SPECIAL_PARTS DOUBLE /5 $AC_SPECIAL_PARTS = R20 Number of workpieces counted acc. to user strategy. Without internal control. -- R/W r/w /5 $AC_G0MODE INT /6 Interpolation behavior with G0 mode 0: G0 active 1: G0 and linear interpolation active 2: G0 and non--linear interpolation active With G0 the behavior of the path axis is in accordance with machine data MD 20730: G0_LINEAR_MODE (Siemens mode) or machine data MD 20732: EXTERN_G0_LINEAR_MODE (ISO mode). With linear interpolation the path axes are traversed together. With non--linear interpolation the path axes are traversed as positioning axes. -- R r /6.1 $AC_MEAS_LATCH DOUBLE /6 $AC_MEAS_LATCH[0] = 1 1. Write actual value to measuring point. 0: corresponds to 1st measuring point, .. , 3: 4th measuring point Measuring point R/W r/w /6.1 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition /5 2-49 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Positions Name Type /SW Description/values Index PP access SA access /SW $AA_IW[X] DOUBLE Actual value in workpiece coordinate system (WCS) Axis R r $AA_IEN[X] DOUBLE /5 Actual value in settable zero coordinate system (SZS) Axis R r /5 $AA_IBN[X] DOUBLE /5 Actual value in basic zero coordinate system (BCS). R r /5 $AA_IB[X] DOUBLE Actual value in basic coordinate system (BCS) Axis R r $AA_IM[X] DOUBLE Actual value in machine coordinate system (MCS) Axis R r Name Type /SW Description/values Index PP access SA access /SW $AA_ACT_INDEX_AX_ POS_NO[X] INT /5 0: No indexing axis, therefore no indexing position available. > 0: Number of last indexing position to be reached or overtraveled R r /5 $AA_PROG_INDEX_AX _POS_NO[X] INT /5 0: No indexing axis, therefore no indexing position available or the indexing axis is not currently approaching an indexing position > 0: Number of the indexing position programmed R r /5 Indexing axes Encoder limit frequency Name Type /SW Description/values Index PP access SA access /SW $AA_ENC_ACTIVE[X] BOOL /4 Active measuring system is operating below encoder limit frequency (valid values) Axis R r /4 $AA_ENCi_ACTIVE[X] BOOL /4 i: 1 -- 2 encoder number; Measuring system i is operating below encoder limit frequency (valid values) Axis R r /4 2-50 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Encoder values Name Type /SW Description/values Index PP access SA access /SW $VA_IM[X] DOUBLE /4 Encoder actual value in machine coordinate system (measured by active measuring system), actual value compensations are corrected (leadscrew error compensation, backlash compensation, quadrant error compensation). No modulo conversion is performed. Axis R r /4 $VA_IM[X] DOUBLE /4 Actual value in machine coordinate system (measured by encoder 1), compensations are corrected Axis R r /4 $VA_IM[X] DOUBLE /4 Actual value in machine coordinate system (measured by encoder 2), compensations are corrected Axis R r /4 $AA_MW[X] DOUBLE Measured value in workpiece coordinate system Axis R/W r/w $AA_MM[X] DOUBLE Measured value in machine coordinate system Axis R/W r/w /4 $AA_MWi[X] DOUBLE /4 Measurement result of axial measurement i: 1--4 for trigger events 1--4 Axis R/W r/w Name Type /SW Description/values Index PP access SA access /SW $AA_MMi[X] DOUBLE /4 Measurement result of axial measurement i: 1--4 for trigger events 1--4 Axis R/W r/w $AA_MEAACT[X] BOOL /4 Value is TRUE (1) if axial measurement is active Axis for axis X R r Axial measurement E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition /4 2-51 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Offsets Name Type /SW Description/values Index PP access SA access /SW $AC_DRF[X] DOUBLE DRF offset Axis R r $AC_PRESET[X] DOUBLE Last Preset value Axis R r $AA_MEAS_P1_ VALID[X] INT /6 $AA_MEAS_P1_VALID[X] = 1 Write actual value to 1st measuring point Axis R/W r/w /6.1 $AA_MEAS_P2_ VALID[X] INT /6 $AA_MEAS_P2_VALID[X] = 1 Write actual value to 2nd measuring point Axis R/W r/w /6.1 $AA_MEAS_P3_ VALID[X] INT /6 $AA_MEAS_P3_VALID[X] = 1 Write actual value to 3rd measuring point Axis R/W r/w /6.1 $AA_MEAS_P4_ VALID[X] INT /6 $AA_MEAS_P4_VALID[X] = 1 Write actual value to 4th measuring point Axis R/W r/w /6.1 $AA_OFF[X] DOUBLE Overlaid motion for programmed axis Axis R/W r/w $AA_OFF_LIMIT[X] INT /4 Limit value for axial compensation $AA_OFF[X] 0: Limit value not reached 1: Limit value reached in positive axis direction --1: Limit value reached in negative axis direction Axis R r $AA_OFF_VAL[X] DOUBLE $AA_OFF_VAL[X] Integrated value of overlaid motion for one axis. An overlaid motion can be canceled using a negative value for this variable, e.g. $AA_OFF[axis] = --$AA_OFF_VAL[axis] Axis R r /5 $AC_RETPOINT[X] DOUBLE Return point on contour for repositioning Axis R r /4 $AA_SOFTENDP[X] DOUBLE Software limit position, positive direction Axis R r /4 $AA_SOFTENDN[X] DOUBLE Software limit position, negative direction Axis R r /4 2-52 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 07.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Axial paths Name Type /SW Description/values Index PP access SA access /SW $AA_DTBW[X] DOUBLE Axial path from start of block in workpiece coordinate system for positioning and synchronized axes during motion-synchronous actions. The programmed position alone determines the path calculation. If the axis is a coupled--motion axis, the position component resulting from the axis coupling is ignored. Axis R r $AA_DTBB DOUBLE Axial path from start of block in basic coordinate system for positioning and synchronized axes during motion-synchronous actions. The programmed position alone determines the path calculation. If the axis is a coupled--motion axis, the position component resulting from the axis coupling is ignored. Axis R r $AA_DTEW DOUBLE Axial path to end of block in workpiece coordina- Axis te system for positioning and synchronized axes during motion-synchronous actions. The programmed position alone determines the path calculation. If the axis is a coupled--motion axis, the position component resulting from the axis coupling is ignored. R r $AA_DTEB DOUBLE Axial path to end of block in basic coordinate system for positioning and synchronized axes during motion-synchronous actions. The programmed position alone determines the path calculation. If the axis is a coupled--motion axis, the position component resulting from the axis coupling is ignored. Axis R r Name Type /SW Description/values Index PP access SA access /SW $AA_DTEPW DOUBLE Axial distance--to--go for infeed oscillation in workpiece coordinate system Axis R r $AA_DTEPB DOUBLE Axial distance--to--go for infeed oscillation in basic coordinate system Axis R r $AA_OSCILL_REVERSE_POS1[X] DOUBLE Current reversal position 1 for oscillation Axis In synchronized actions, the value of setting data $SA_OSCILL_REVERSE_POS1 is evaluated online. R r $AA_OSCILL_REVERSE_POS2[X] DOUBLE Current reversal position 2 for oscillation Axis In synchronized actions, the value of setting data $SA_OSCILL_REVERSE_POS2 is evaluated online. R r $AA_DELT DOUBLE Axial distance--to--go in workpiece coordinate system after axial deletion of distance--to--go for motion-synchronous actions R r Oscillation Axis E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-53 07.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Velocities, axis--specific Name Type /SW Description/values Index PP access SA access /SW $AA_OVR[X] DOUBLE Axial override for motion-synchronous actions. Multiplicative override component, acts in addition to operator override, programmed override and transformation override, the total factor is limited to 200%. It must be written again in every interpolation cycle, otherwise the value 100% applies. $AA_OVR[S1] changes the spindle override. The override defined by the machine data MD 12100: OVR_FACTOR_LIMIT_BIN, MD 12030: OVR_FACTOR_FEEDRATE[30], MD 12010: OVR_FACTOR_AX_[30], $AA_OVR_FACTOR_SPIND_SPEED is not exceeded. Axis R/W r/w /4 $AA_VC[X] DOUBLE Additive axial feedrate override for motion-synchronous actions. The compensation value must be written again in every interpolator cycle, otherwise the value 0 applies. An override of 0 cancels the compensation value; otherwise the override has no effect on the compensation value. The total feedrate cannot be negative as a result of the compensation value. The upper value is limited such that the maximum axis velocities and accelerations are not exceeded. The calculation of other feedrate components is not affected by $AA_VC. The override values defined by the machine data MD 12100: OVR_FACTOR_LIMIT_BIN, MD 12030: OVR_FACTOR_FEEDRATE[30], MD 12010: OVR_FACTOR_AX_SPEED[30], MD 12070: OVR_FACTOR_SPIND_SPEED are not exceeded. The additive feedrate override is limited such that the resulting feedrate does not exceed the maximum override value of the programmed feedrate. Axis R/W r/w /4 $AA_VACTB[X] DOUBLE Axis speed in basic coordinate system. The variable can only be accessed from synchronized actions. Axis R r $AA_VACTW[X] DOUBLE Axis speed in workpiece coordinate system. The variable can only be accessed from synchronized actions. Axis R r $AA_VACTM[X] DOUBLE Axis velocity setpoint in machine coordinate system Can also be read by replacement/PLC axes The variable can only be accessed from synchronized actions. Axis R r /4 $VA_VACTM[X] DOUBLE Axis velocity actual value in machine coordinate system. The variable returns an undefined value if the encoder limit frequency is exceeded. Axis R r /4 2-54 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Drive data Name Type /SW Description/values Index PP access SA access /SW $AA_LOAD[X] DOUBLE Drive load in % (for 611D only) Axis R r $VA_LOAD[X] DOUBLE Drive load in % (for 611D only) Axis R r $AA_TORQUE[X] DOUBLE Drive torque setpoint in Nm (with 611D only) Actual force in N (with 611D HLA only) Axis R r $VA_TORQUE[X] DOUBLE Drive torque setpoint in Nm (with 611D only) Actual force in N (with 611D HLA only) Axis R r $AA_POWER[X] DOUBLE Active drive power in W (for 611D only) Axis R r $VA_POWER[X] DOUBLE Active drive power in W (for 611D only) Axis R r $AA_CURR[X] DOUBLE Actual current value for axis or spindle (for 611D only) Axis R r $VA_CURR[X] DOUBLE Actual current value for axis or spindle (for 611D only) Axis R r /5 $VA_VAVELIFT[X] DOUBLE Actual valve stroke in mm (with 611D hydraulic system only) Axis R r /5 $VA_PRESSURE_A[X] DOUBLE Pressure on drive end of cylinder in bar (with 611D hydraulic system only) Axis R r /5 $VA_PRESSURE_B[X] DOUBLE Pressure on non--drive end of cylinder in bar (with 611D hydraulic system only) Axis R r /5 /5 /5 /5 Axis states Name Type /SW Description/values Index PP access SA access /SW $AA_STAT[X] INT /4 Axis status: 0: No axis status available 1: Traversing movement active 2: Axis has reached end of interpolation, only for axes of channel 3: Axis in position (exact stop coarse) for all axes 4: Axis in position (exact stop fine) for all axes Axis R r /4 $AA_REF[X] INT /5 Axis status: 0: Axis is not referenced 1: Axis is referenced R r /5 $AA_TYP[X] INT /4 Axis type: Axis 0: Axis in another channel 1: Channel axis of the same channel 2: Neutral axis 3: PLC axis 4: Oscillating axis 5: Neutral axis currently traversing in JOG mode 6: Master value--coupled following axis 7: Coupled--motion following axis 8: Command axis 9: Compile cycle axis R r /4 $AA_MASL_STAT[X] INT 6 Current status if a master--slave coupling $AA_MASL_STAT set to = 0: Axis is not a slave axis or no coupling is active. > 0: Coupling active supplies the associated machine axis number of the master axis. R r /6 Slave axis E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-55 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Name Type /SW Description/values Index PP access SA access /SW $AA_FXS[X] INT 5 Status "travel to fixed stop" 0: Axis not at stop 1: Stop approached successfully 2: Fixed stop approach unsuccessful 3: Selection of travel to fixed stop active 4: Fixed stop was detected 5: Deselection of travel to fixed stop active Axis R/W r /5 $VA_TORQUE_AT_ LIMIT[X] INT 5 Status "Effective torque corresponds to the specified torque limit" 0: Torque limit not yet reached 1: Torque limit reached In digital 611D systems the drive returns a status, indicating whether the programmed torque limit has been reached. Axis R r /5 $AA_FOC[X] INT 5 Status of "ForceControl" (FOC) function 0: FOC not active 1: FOC modally active 2: FOC non--modally active Axis R/W r /5 $AA_COUP_ ACT[SPI(2)] INT /4 Current coupling status of following spindle/axis 0: Axis/sp. not coupled with a LS/LA 3: Axis is tangentially corrected 4: Synchronous spindle coupling 8: Coupled--motion following axis 16: Master value--coupled following axis The respective values are applicable for one coupling. If the following axis has more active couplings, they are indicated by the sum of the respective numerical values. Following spindle/ axis R r /5 Name Type /SW Description/values Index PP access SA access /SW $AA_EG_SYNFA[a] DOUBLE /5 Synchronized position of following axis a: Following axis Following axis R r /5 $AA_EG_NUM_LA[a] INT /5 Number of leading axes specified with EGDEF a: Following axis Following axis R r /5 $AA_EG_SYNCDIFF[a] DOUBLE /5 Synchronization difference a: Following axis Following axis R r /5 $AA_EG_AX[n,a] AXIS /5 Identifier for the nth leading axis n: Index for leading axis a: Following axis Following axis R r /5 Electronic gear 1 2-56 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 10.00 06.01 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Master value coupling Name Type /SW Description/values Index PP access SA access /SW $AA_LEAD_SP[MV] DOUBLE /4 Simulated master value -- position Master value R/W r/w $AA_LEAD_SV[MV] DOUBLE /4 Simulated master value -- velocity Master value R/W r/w $AA_LEAD_P_ TURN[MV] DOUBLE /4 Current master value -- position component lost as a result of modulo reduction. The actual master value position (used for internal calculations by the controller) is $AA_LEAD_P[MV] + $AA_LEAD_P_TURN[MV]. If MV is a modulo axis, $AA_LEAD_P_TURN is a whole multiple of $MA_MODULO_RANGE. If MV is not a modulo axis, $AA_LEAD_P_TURN is always 0. Example 1: $MA_MODULO_RANGE[MV] = 360 $AA_LEAD_P[MV] = 290 $AA_LEAD_P_TURN[MV] = 720 The actual master value position (used for internal calculations by the controller) is 1010. Example 2: $MA_MODULO_RANGE[MV] =360 $AA_LEAD_P[MV] = 290 $AA_LEAD_P_TURN[MV] =--360 The actual master value position (used for internal calculations by the controller) is --70. Master value R r /4 $AA_LEAD_P[MV] DOUBLE /4 Current master value -- position (modulo reduced) If master value (MV) is a modulo axis, the following is always true: 0 <= $AA_LEAD_P[MV] <= $MA_MODULO_RANGE[MV] Master value R r /4 $AA_LEAD_V[MV] DOUBLE /4 Actual master value -- velocity Master value R r /4 $AA_SYNC[FA] INT /4 Coupling status of following axis in master value coupling 0: No synchronism 1: Coarse synchronism 2: Fine synchronism 3: Coarse and fine Following axis R r /4 Synchronous spindle Name Type /SW Description/values Index PP access SA access /SW $P_COUP_OFFS[S2] DOUBLE Programmed offset of the synchronous spindle Following spindle R r /6 $AA_COUP_OFFS[S2 ] DOUBLE /2 Position offset for synchronous spindle (setpoint) Following spindle R r /4 $VA_COUP_ OFFS[SPI(2)] DOUBLE /2 Position offset for synchronous spindle (actual value) Following spindle R r /4 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-57 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Safety Integrated 1 Name Type /SW Description/values Index PP access SA access /SW $VA_IS[X] DOUBLE /3 Safe actual position (SISITEC) Axis R r /4 $AA_SCTRACE[X] BOOL /4 $AA_SCTRACE[X] = 1 Write: Activate IPO trigger for servo trace. 0: No action 1: Activate trigger Read: Always value 0, as the self--clearing trigger bit is read back from the interface. 0: Current value (no status) Axis R/W r /4 $VA_DPE[X1] BOOL /5 Status performance release of a machine axis (611D and 611D hydraulic system) FALSE: No performance release TRUE: Performance release Machine axis R/ r /5 $AA_ACC DOUBLE /5 Current acceleration value of axis for single-axis interpolation. $AA_ACC = $MA_MAX_AX_ACCEL * progr. acceleration override Axis R/ r /5 $AA_MOTEND INT /5 Current end of movement condition for single-axis interpolation. 1: End of movement on exact stop FINE 2: End of movement on exact stop COARSE 3: End of movement on exact stop interpolator stop 4: Block change in braking ramp of axis motion Axis R/ r /5 r /6 Read current servo parameter set Axis R/ r /5 Index PP access SA access /SW $AA_SCPAR INT /5 Extended stop and retract Name Type /SW Description/values $AA_ESR_STAT[X] INT /5 Status of "Extended stop and retract", bit--coded: BIT0: Generator mode is triggered BIT1: Retraction is triggered BIT2: Ext. stop is triggered BIT3: DC link undervoltage BIT4: Generator minimum speed R/ r/ $AA_ESR_ENABLE[X] BOOL /5 $AA_ESR_ENABLE[X] = 1 Enable "Extended stop and retract" R/W r/w 2-58 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 10.00 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Axis container rotation Name Type /SW Description/values Index PP access SA access /SW $AN_AXCTSWA[n] BOOL /5 Axis container rotation active 1: An axis container rotation is currently being performed on axis container name n 0: No axis container rotation is currently active Axis container r/ r/ $AN_AXCTAS[n] INT /5 Axis container rotation, current degree of rotation. Axis container r/ r/ This specifies for the axis container name n how many slots the axis container has advanced. The value range is from 0 to the maximum number of assigned slots in the axis container --1 $AC_AXCTSWA[n] BOOL /5 Enable axis container rotation 1: The channel has enabled axis container rotation for axis container name n and the rotation is still in progress. 0: The axis container rotation has finished. Axis container r/ r/ Name Type /SW Description/values Index PP access SA access /SW $AA_EG_TYPE INT /5 $AA_EG_TYPE[a,b] a: Following axis b: Leading axis Type of coupling for leading axis b 0: Actual value coupling 1: Setpoint value coupling Axis R r /5 $AA_EG_NUMERA DOUBL E /5 $AA_EG_NUMERA[a,b] a: Following axis b: Leading axis Numerator for coupling factor for leading axis b Axis R r /5 $AA_EG_DENOM DOUBL E /5 $AA_EG_DENOM[a,b] a: Following axis b: Leading axis Denominator for coupling factor for leading axis b Axis R r /5 $AA_EG_SYN DOUBL E /5 $AA_EG_SYN[a,b] a: Following axis b: Leading axis Synchronized position of leading axis b Axis R r /5 $AA_EG_ACTIVE BOOL /5 $AA_EG_ACTIVE[a,b] a: Following axis b: Leading axis Coupling for leading axis b is active, i.e. switched on Axis R r /5 Electronic gear 2 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-59 07.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Safety Integrated (S. I. ) Name Type /SW Description/values Index PP access SA access /SW $A_INSE[n] BOOL /4 Image of a safety input signal (ext. NCK interface) No. of input R r $A_INSED[n] INT /5 Image of safety input signals (ext. NCK interface) Number of input word 1 -- ... R/ r/ $A_INSEP[n] BOOL /5 Image of a safety input signal (ext. PLC interface) Number of input 1 -- ... R/ r/ $A_INSEPD[n] INT /5 Image of safety input signals (ext. PLC interface) Number of input word 0 -- ... R/ r/ $A_OUTSE[n] BOOL /5 Image of a safety output signal (ext. NCK interface) Number of R/W output 1 -- ... r/w $A_OUTSED[n] INT /5 Image of safety output signals (ext. NCK interface) Number of output word 1 -- ... r/w $A_OUTSEP[n] BOOL /4 Image of a safety output signal (ext. PLC interface) Number of R output 1 -- ... r/ $A_OUTSEPD[n] INT /5 Image of safety output signals (ext. PLC interface) Number of output word 0 -- ... R r/ R/W S. I. : Servo interpolator interface Name Type /SW Description/values Index PP access SA access /SW $A_INSI[n] BOOL /4 Image of a safety input signal (int. NCK interface) Number of input 1 -- ... R r/ $A_INSID[n] INT /5 Image of safety input signals (int. NCK interface) Number of input word 1 -- ... R r/ $A_INSIP[n] BOOL /4 Image of a safety input signal (int. PLC interface) Number of input word 1 -- ... R r/ 2-60 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 07.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Name Type /SW Description/values Index PP access SA access /SW $A_INSIPD[n] INT /5 Image of safety input signals (int. PLC interface) Number of input word 1 -- ... R r/ $A_OUTSI[n] BOOL /4 Image of a safety output signal (int. NCK interface) Number of R/W output 1 -- ... r/w $A_OUTSID[n] INT /5 Image of safety output signals (int. NCK interface) Number of output word 1 -- ... r/w $A_OUTSIP[n] BOOL /4 Image of a safety output signal (int. PLC interface) Number of R output 1 -- ... r/ $A_OUTSIPD[n] INT /5 Image of safety output signals (int. PLC interface) Number of output word 1 -- ... R r/ R/W Safety markers and timers Name Type /SW Description/values Index PP access SA access /SW $A_MARKERSI[n] BOOL /4 Markers for Safety Integrated programming No. of marker 1 ... R/W r/w $A_MARKERSID[n] INT /5 Flag word (32--bit) for safety programming No. of flag word 1 ... R/W r/w $A_MARKERSIP[n] BOOL /4 Image of PLC Safety Integrated markers No. of marker 1 ... R r/ $A_MARKERSIPD[n] INT /5 Image of PLC Safety Integrated flag words No. of flag word 1 ... R r/ $A_TIMERSI[n] DOUBLE /4 Safety timer unit in seconds. The time is counted internally in multiples of the interpolation cycle. Incrementation of the timer variable is started by assigning $A_TIMERSI[n]=. Incrementation is stopped by assigning a negative value: $A_TIMERSI[n]=--1. The current time value can be read whether the timer variable is running or halted. After a timer variable has been stopped through the assignment of --1, the current time value remains stored and can be read. No. of timer 1 ... R/W r/w E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-61 07.98 08.97 Synchronized Actions (FBSY) 2.3 Special real--time variables for synchronized actions Safety cross--checking control and state variable Name Type /SW Description/values Index PP access SA access /SW $A_STATSID INT /5 Safety: Status of cross--checking between NCK and PLC. If the value is not equal to zero, an error has occurred during cross--checking -- R/ r/ $A_CMDSI[n] BOOL /5 Safety: Control word for cross--checking between NCK and PLC. Array index n = 1: Increase time for signal change monitoring to 10 s Number of control signal R/W r/w $A_LEVELSID INT /5 Safety: Displays level of signal change monitoring. Specifies the number of signals currently tagged for cross--checking. -- R r/ 2-62 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 08.97 2.4 Actions in synchronized actions Actions After action code DO ..., each synchronized action contains -- one or several (max. 16) actions or a technology cycle (these two components are referred to generally as actions in the following description). These are executed when the appropriate condition is fulfilled. Several actions Several actions contained in a synchronized action are activated in the same interpolation cycle if the appropriate condition is fulfilled. List of possible actions The following actions can be programmed in the "Action" section of synchronized actions: Table 2-2 Actions in synchronized actions ... DO ... Meaning Reference Mxx Sxx Hxx Output of auxiliary functions to PLC 2.4.1 SETAL(nr) Set alarm, error reactions 2.4.20 $A...= ... $V... = ... $AA_OFF = 2.4.2 $AC_FCT... Write real--time variables: -- Overlaid motion -- Velocity control: Path velocity Axis velocity Add. path feedrate override Add. axis compensation value Alter SW cam positions (setting data) and all other SD Overwrite FCTDEF parameters RDISABLE STOPREOF DELDTG FTOC SYNFCT ZYKL_T1 (e.g.) synchronized action procedures: Activate read--in disable End feed stop Delete distance--to--go Online tool offset Polynomial evaluation Call of technology cycles 2.4.8 2.4.9 2.4.10 2.4.7 2.4.5 2.5 MOV[u]= >0 MOV[u] = <0 MOV[u] = =0 Control positioning axes: Disable an axis motion Call an axis program Position Define axis feedrate Move command axes continuously: -- forwards -- backwards -- stop 2.4.11 2.4.12 2.4.12 2.4.13 2.4.14 " " " SPOS M3, M4, M5, S = $AA_OVR[S1]= 0 Spindles: Position Direction of rotation, stop, speed Disable spindle motion PRESETON( , ) Set actual values $AC_OVR = $AA_OVR = $AC_VC = $AA_VC = $$SN_SW_CAM_ ... $AA_OVR[x]= 0 AXIS_X (e.g.) POS[u]= ... FA[u]= ... E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2.4.3 2.4.4 2.4.15 2.4.16 2-63 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions Table 2-2 ... DO ... LEADON LEADOF TRAILON TRAILOF MEAWA, MEAC SETM CLEARM LOCK UNLOCK RESET 2-64 08.97 Actions in synchronized actions Meaning Reference Activate/deactivate couplings: Couple slave axis to master axis Cancel coupling Asynchr. coupled motion ON Asynchr. coupled motion OFF 2.4.17 Measurement without deletion of distance--to--go Cyclical measurement 2.4.18 Channel synchronization: Set a wait marker Clear a wait marker 2.4.19 Coordination of synchronized actions: -- Disable synchronized action/technology cycle -- Enable synchronized action/technology cycle -- Reset technology cycle 2.5.1 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 08.97 2.4.1 Output of M, S and H auxiliary functions to PLC For general information about auxiliary function outputs, please refer to: References: Examples /FB/, H2, "Output of Auxiliary Functions to PLC" The advantage of implementing auxiliary function outputs in synchronized actions is illustrated by the following example: Switch on coolant at a specific position Solution without synchronized action: 3 blocks N10 G1 X10 F150 N20 M07 N30 X20 F Machining sequence M07 X 10 20 Solution with synchronized action: 1 block N10 WHEN $AA_IM[X] >= 10 DO M07 N20 G1 X20 F150 F M07 Machining sequence X 10 20 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-65 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 08.97 Output of auxiliary functions to PLC M, S or H auxiliary functions can be output to the PLC as a synchronized action. The output takes place immediately (like an interrupt on the PLC) in the interpolation cycle if the condition is fulfilled. The timing that might be programmed in MD 11110: AUXFU_GROUP_SPEC (auxiliary function group specification) or AUXFU_M_SYNC_TYPE (output timing of M functions)/ AUXFU_S_SYNC_TYPE (output timing of S functions)/ AUXFU_H_SYNC_TYPE (output timing of H functions)/ has no effect with respect to synchronized actions. Programming Auxiliary functions may be programmed with frequency vocabulary words WHEN or EVERY only in synchronized actions. Example WHEN $AA_IM[X] > 50 DO H15 S3000 M03 ; if actual value of X axis is greater than 50, then output H15, set new spindle speed, new direction of rotation Restriction 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: -- 5 M functions -- 3 S functions -- 3 H functions Predefined M functions cannot be programmed by means of synchronized actions. They will be rejected by an alarm. WHEN ... DO M0 ; Alarm However, spindle M functions M3, M4, M5 and M17 may be programmed as the end of a technology cycle. Acknowledgment Technology cycle blocks (see Section 2.5) containing auxiliary function outputs are not completely processed until all auxiliary functions in the block have been acknowledged by the PLC. The next block in the technology cycle is not processed until all auxiliary functions in the preceding block have been acknowledged by the PLC. SW 5 Further methods of acknowledgment have been introduced for SW 5 and later: -- Auxiliary function output without block change delay High--speed auxiliary functions (QUICK) first, as a parallel process in the PLC, then auxiliary function output with anticipated acknowledgment. The user can choose between INT and REAL as the data type for H auxiliary functions. The PLC user program must interpret the values in accordance with the definition. The INT value range for H auxiliary functions has been increased to: --2 147 483 648 to 2 147 483 647. References: 2-66 /FB/, H2, Output of Auxiliary Functions to PLC for SW 5 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 08.97 2.4.2 Setting (writing) and reading of real-- time variables Writing The real--time variables marked with a + sign for access "Write from synchronized actions" in the list in Section 2.3.8 can be written in actions contained in synchronized actions. S Machine and setting data, e.g. $$MN_..., $$MC_..., $$MA_... or $$SN_..., $$SC_..., $$SA_... Notice Machine and setting data that must be written online in the main run must be programmed with $$.._... . Effectiveness Machine data written from synchronized actions must be coded for IMMEDIATE effectiveness. The modified value will not otherwise be available for the remainder of the processing run. Details about the effectiveness of new machine data values after modification can be found in: References: /LIS/, Lists Examples: ... DO $$MN_MD_FILE_STYLE = 3 ... DO $$SA_OSCILL_REVERSE_POS1 = 10 ... DO $A_OUT[1]=1 ... DO $A_OUTA[1]= 25 Reading ; set machine data ; set setting data ; set digital output ; set analog value The variables in synchronized actions can be read--accessed for assignments to real--time variables, as input quantities for functions and for the purpose of formulating conditions. These variables are indicated by the letter r for access "Read from synchronized actions" in the list in Section 2.3.8. S Machine data, setting data, e.g. $$SN_..., $$SC_..., $$SA_... Notice Machine and setting data whose quantities could change during processing must be programmed with $$.._... if they need to be addressed online in the main run. In the case of variables whose quantities remain unchanged, it is sufficient to type a $ sign in front of the identifier. Examples: WHEN $AC_DTEB < 5 DO ... DO $R5= $A_INA[2] ; read distance from block end in condition ; read value of analog input 2 and assign arithmetic variable E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-67 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 2.4.3 Alteration of SW cam positions and times (setting data) Introduction The "Software cams" function allows position--dependent cam signals to be output to the PLC or NCK I/Os. References: Function 08.97 /FB/, N3, Software Cams, Position Switching Signals Synchronized actions can be programmed to alter cam positions at which signal outputs are set. Existing setting data are written to change these positions. The following setting data can be modified via synchronized actions: $$SN_SW_CAM_MINUS_POS_TAB_1[0..7] $$SN_SW_CAM_MINUS_POS_TAB_2[0..7] $$SN_SW_CAM_PLUS_POS_TAB_1[0..7] $$SN_SW_CAM_PLUS_POS_TAB_2[0..7] Example 1 ; Positions of minus cams ; Positions of minus cams ; Positions of plus cams ; Positions of plus cams Alteration of a cam position: ID=1 WHEN $AA_IW[x] > 0 DO $$SN_SW_CAM_MINUS_POS_TAB_1[0] = 50.0 Lead or delay times can be changed via the following setting data: $$SN_SW_CAM_MINUS_TIME_TAB_1[0..7] ; Lead or delay time on minus cams $$SN_SW_CAM_MINUS_TIME_TAB_2[0..7] ; Lead or delay time on minus cams $$SN_SW_CAM_PLUS_TIME_TAB_1[0..7] ; Lead or delay time on plus cams $$SN_SW_CAM_PLUS_TIME_TAB_2[0..7] ; Lead or delay time on plus cams 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 Notice 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. 2-68 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 08.97 2.4.4 FCTDEF Application The actions "Online tool offset FTOC" and "Polynomial evaluation SYNFCT" that are described in the following subsections require an interrelationship between an input quantity and an output quantity to be defined in the form of a polynomial. FCTDEF defines polynomials of this type. For special examples of polynomial application for online dressing of a grinding wheel, please refer to Section 2.4.7. For examples of load--dependent feeds and clearance control via polynomials, please refer to Section 2.4.5. Characteristics of polynomials Polynomials defined by means of FCTDEF have the following characteristics: S They are generated through an FCTDEF call in the part program. S The parameters of defined polynomials are real--time variables. S Individual polynomial parameters can be overwritten by the same method used to write real--time variables. Permissible generally in part program and in action section of synchronized actions. See Section 2.4.2. Notice In SW 4 and later, it is possible to alter validity limits and coefficients of existing polynomials from synchronized actions. Example: WHEN ... DO $AC_FCT1[1]= 0.5 Number of polynomials In SW 4 and later, the number of polynomials that can be simultaneously defined can be specified in MD 28252 : $MC_MM_NUM_FCTDEF_ELEMENTS. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-69 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions Block--synchronous polynomial definition 08.97 FCTDEF( Polynomial no., Lower limit, Upper limit, a0, a1, a2, a3) The relationship between output quantity y and input quantity x is as follows: y= a0+ a1x+ a2x2 + a3x3 Parameters specified in this function are stored in the following system variables: $AC_FCTLL[n]: Lower limit, n: Polynomial number $AC_FCTUL[n]: Upper limit, n: Polynomial number $AC_FCT0[n]: a0 coefficient, n: Polynomial number $AC_FCT1[n]: a1 coefficient, n: Polynomial number $AC_FCT2[n]: a2 coefficient, n: Polynomial number $AC_FCT3[n]: a3 coefficient, n: Polynomial number On the basis of this relationship, it is also possible to write or modify polynomials directly via the relevant system variables. The validity range of a polynomial is defined via limits $AC_FCTLL[n] and $AC_FCTUL[n]. Call of polynomial evaluation Stored polynomials can be used in conjunction with the following functions: -- Online tool offset, FTOC() -- Polynomial evaluation, SYNFCT(). References: 2-70 /PG/, Programming Guide Fundamentals /PGA/, Programming Guide Advanced /FB/, W4 "Grinding" E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 08.97 2.4.5 Polynomial evaluation SYNFCT Application SYNFCT() evaluation function 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. This functionality can be used, for example, to perform the following tasks: -- Feed as a function of drive load -- Position as a function of a sensor signal -- Laser power as a function of path velocity ... The function has the following parameters: SYNFCT( Polynomial number, real--time variable output, real--time variable input) For definition of a polynomial, please refer to Section 2.4.4. Operating principle of SYNFCT The polynomial identified by the "Polynomial number" is evaluated with the value of the "Real--time variable input". The result is then limited by maximum and minimum limits and assigned to the "Real--time variable output". Example: FCTDEF(1,0,100,0,0.8,0,0) ... Synchronized action: ; Polynomial 1 is already defined ID=1 DO SYNFCT(1,$AA_VC[U1], $A_INA[2]) ; the additive compensation value of axis U1 is calculated from analog input value 2 on the basis of polynomial 1 in every interpolation cycle For the "Real--time variable output", it is possible to select variables that are integrated S as an additive control factor (e.g. feedrate), S as a multiplicative control factor (e.g. override), S as a position offset or S directly into the machining process. Additive feedrate control In the case of additive control, the programmed value (F word with respect to Adaptive Control) is compensated by an additive factor. Factive = Fprogrammed + FAC The following are examples of "Real--time variable output" settings: $AC_VC Additive path feed override, $AA_VC[axis] Additive axial feedrate override E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-71 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions Example of additive control of path feedrate 08.97 The programmed feedrate (axial or path--related) must be subject to additive control by the (positive) X axis current (e.g. infeed torque). The operating point is set to 5 A. The feedrate may be altered by 100 mm/min. The magnitude of the axial current deviation may be 1 A. 500 F [mm/min] a0 + 100 0 Lower limit Upper limit 4 5 6 -- 100 I [A] ($AA_LOAD[X]) Drive load in % Fig. 2-4 Example of additive control For definition of coefficients, see also Section 2.4.4: y = f(x) = a0 + a1x +a2x2 + a3x3 a1 = -- 100 mm 1 min A a1 = --100 % control constant a0 = --(--100) 5 = 500 a2 = 0 (not a square component) a3 = 0 (not a cubic component) Upper limit = 100 Lower limit = --100 The polynomial to be defined (no. 1) is thus as follows: FCTDEF(1, --100, 100, 500, --100, 0, 0) The example given in Fig. 2-4 is fully defined with this function. The Adaptive Control function is activated with the following synchronized action: ID = 1 DO SYNFCT(1, $AC_VC[x], $AA_LOAD[x]) ; the additive compensation value for the feedrate of axis x is calculated from the percentage drive load value via polynomial 1 in each interpolation cycle Multiplicative control In the case of multiplicative control, the F word is multiplied by a factor (override in the case of an Adaptive Control). Factive = Fprogrammed factorAC Variable $AC_OVR that acts as a multiplicative factor on the machining process is used as the real-time variable output. 2-72 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 08.97 Example of multiplicative control The programmed feedrate (axial or path-related) must be subject to multiplicative control as a function of drive load. The operating point is set to 100 % at 30 % drive load. The axis(axes) must stop at 80 % drive load. An excessive velocity corresponding to the programmed value +20 % is permissible. OVR [%] 160 % 120 % Upper limit Operating point 100 % a0 (100) (50) 0 Fig. 2-5 30 % Base value 80 % Load [%] Example of multiplicative control For definition of coefficients, see also Section 2.4.4: y = f(x) = a0 + a1x +a2x2 + a3x3 a1 = -- 100 % (80 -- 30) % = --2 a0 = 100 + (2 30) = 160 a2 = 0 (not a square component) a3 = 0 (not a cubic component) Upper limit = 120 Lower limit = 0 The polynomial (no. 2) can therefore be defined as follows: FCTDEF(2, 0, 120, 160, --2, 0, 0) The example given in Fig. 2-5 is fully defined with this function. The associated synchronized action can be programmed as follows: ID = 1 DO SYNFCT(2, $AC_OVR, $AA_LOAD[x]) ; the path override is calculated from the percentage drive load for the x axis via polynomial 2 in every interpolation cycle. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-73 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions Position offset with limitation 08.97 System variable $AA_OFF controls an axis-specific override that takes immediate effect (basic coordinate system). The mode of override is defined in MD 36750: $MA_AA_OFF_MODE. 0: Proportional evaluation 1: Integral evaluation In SW 4 and later, it is possible to limit the value to be compensated absolutely (real-time variable output) to the value stored in setting data SD 43350 : $SA_AA_OFF_LIMIT. Axis-specific system variable $AA_OFF_LIMIT[axis] can be evaluated in another synchronized action to establish whether the limitation has been reached. Value --1: Limit of compensation value has been reached in a negative direction. Value 1: Limit of compensation value has been reached in a positive direction. Value 0: The compensation value is not within the limit range. Application: Function SYNFCT can be used in conjunction with system variable $AA_OFF to implement a clearance control in laser machining operations. See below. Example Task: Clearance control as a function of a sensor signal in laser machining operation The compensation value is limited in the negative Z direction so that the laser head is reliably retracted from finished metal blanks. User reactions such as "Stop axis" (by means of 0 override, see Section 2.4.11) or "Set alarm", see Subsection 2.4.20 can be activated when the limit value is reached. Supplementary conditions: Integral evaluation of the input quantity of sensor $A_INA[3]. The compensation 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. The "clearance control" function can be used to implement a clearance control system with high dynamic response or a 3D clearance control system. See References: /FB/, TE1, "Clearance Control" References: /PG/, "Programming Guide Fundamentals" The interdependency between input quantity and output quantity is assured through the relationship illustrated in the following diagram. Further examples 2-74 Please refer to Section 6.3.1 for an example illustrating dynamic adaptation of a polynomial limit in conjunction with Adaptive Control (clearance control). Please refer to Section 6.3.2 for an example of Adaptive Control applied to path feedrate. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 08.97 Clearance control The clearance value is applied integrally via MD 36750: AA_OFF_MODE[V]=1. It works in the basic coordinate system, i.e. before transformation. This means that it can be used as a clearance control in the orientation direction (after frame selection with TOFRAME). Z One-dimensional clearance control Clearance sensor e.g. sheet metal 0.2...0.5 mm X Override 0.5 a1 0.35 Lower limit (LOWER) 0.2 --10V Fig. 2-6 Upper limit (UPPER) 1 a0 +10V Clearance control %_N_AON_SPF PROC AON ; Subprogram for clearance control ON FCTDEF(1, 0.2, 0.5, 0.35, 1.5 EX-5) ; Polynomial definition: Compensation is ; applied in the range 0.2 to 0.5 ID=1 DO SYNFCT(1,$AA_OFF[Z], $A_INA[3]) ; Clearance control active ID = 2 WHENEVER $AA_OFF_LIMIT[Z]<>0 DO $AA_OVR[X] = 0 ; Disable when limit range x is exceeded RET ENDPROC %_N_AOFF_SPF PROC AOFF CANCEL(1) control CANCEL(2) RET ENDPROC ; Subprogram for clearance control OFF ; Cancel synchronized action for clearance ; Cancel limit range check %_N_MAIN_MPF; main program $SA_AA_OFF_LIMIT[Z]= 1 AON ... G1 X100 F1000 AOFF M30 ; MD 36750 has been set to 1 for integral ; evaluation before power ON ; Limit value for compensation ; Clearance control ON ; Clearance control OFF E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-75 10.00 08.97 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 2.4.6 Overlaid movements $AA_OFF settable (as of SW 6) Overlaid movements up to SW 5.3 Whatever the current tool and processing level, an overlaid movement is possible for each axis of the channel via the system variable $AA_OFF. The offset is retracted immediately, whether the axis is programmed or not. This allows a clearance control to be implemented. With axial MD 36750: AA_OFF_MODE, the type of application is defined as follows: Bit0 = 0: proportional application (absolute value) Bit0 = 1: integral application (incremental value) $AC_VACTB and $AC_VACTW as input variable for synchronized actions and output are disabled via the options bit ("Feed rate 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! Speed limitation with MD 32070: CORR_VELO. Response of $AA_OFF as of SW 6 After reset, the position offset can still be retained Previously, during a reset the position offset of $AA_OFF was deselected. As, in the case of static synchronized actions IDS = DO $AA_OFF = this response leads to an immediate renewed overlaid motion with the interpolation of a position offset, machine data MD 36750: AA_OFF_MODE can be used to set the reset response. Bit1 = 0: Bit1 = 1: $AA_OFF is deselected in the case of a reset $AA_OFF is retained beyond the reset In JOG mode , an overlaid movement can take place Also in JOG mode, if there is a change of $AA_OFF, an interpolation of the position offset can be set as an overlaid movement via machine data MD 36750: AA_OFF_MODE. Bit2 = 0: Bit2 = 1: no overlaid movement on the basis of $AA_OFF an overlaid movement on the basis of $AA_OFF If a position offset is interpolated on the basis of $AA_OFF, a mode change can only occur after JOG when interpolation of the position offset is ended. Otherwise alarm 16907 is signaled. Activation/ Deactivation The programmed conditions of the current motion--synchronized actions are recorded in interpolation time, until the conditions are met or the end of the subsequent block is reached with machine function. As of software version 3.2, the introduction of an $$ main variable approved for synchronized actions results in a comparison of the synchronization conditions in interpolation time in the main run. 2-76 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 10.00 08.97 Supplementary conditions Synchronized Actions (FBSY) 2.4 Actions in synchronized actions S Interrupt routines/asynchronous subroutines When an interrupt routine is activated, modal motion--synchronized 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 work in the main program. S REPOS In the remainder of the block, the synchronized actions are treated in the same way as in an interruption block. Modifications to modal synchronized actions in the asynchronous subprogram are not effective in the interrupted program. Polynomial coefficients programmed with FCTDEF are not affected by ASUB and REPOS. The coefficients from the call program are applied in the asynchronous subprogram. The coefficients from the asynchronous subprogram continue to be applied in the call program. S End of program Polynomial coefficients programmed with FCTDEF remain active after the end of program. S Block search During block search with calculation, these polynomial coefficients are gathered up, i.e. written to the setting data. CORROF SW 6 and later S The part program command CORROF with DROF is also gathered up during a block search and output in an action block. In the last block handled by the search run with CORROF or DROF, all the deselected DRF offsets are gathered up for reasons of compatibility. A CORROF with AA_OFF is not gathered up during a block search and is lost. If a user wishes to continue to use this search run, this is possible by means of block search via "SERUPRO" program testing. More details of these block searches are given in: References: /FB1/, K1 "Mode Group, Channel, Program Operation Mode", Program Testing S Axis--specific deselection of DRF offsets with CORROF With CORROF, DRF offsets for the individual axes are only possible from the part program. S Position offset deselection during active synchronized actions If, when deselecting the position offset by means of the part program command COROFF(axis,"AA_OFF") a synchronized action is active, alarm 21660 is signaled. At the same time, $AA_OFF is deselected and not set again. If the synchronized action is active later in the block after CORROF, $AA_OFF stays set and a position offset is interpolated. References: /PG/, "Programming Guide Fundamentals" Notice 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. DRF offsets, zero offsets external, etc., are only taken into consideration in the case of real--time variables that are defined in the machine coordinate system. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-77 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 2.4.7 08.97 Online tool offset FTOC Online tool offset Machining of the workpiece and dressing of the grinding wheel for grinding applications can be implemented either in the same or in different channels (machining and dressing channel). Dressing roller Dressing amount Grinding wheel Length 1 Workpiece Fig. 2-7 Dressing during machining using a dressing roller References: /FB/, W4 "Grinding" Supplementary conditions Synchronized action FTOC is available from SW 3.2 and later. Programming of FTOC The online offset is specified as follows: An online offset allows an overlaid motion to be implemented for a geometry axis according to a polynomial programmed with FCTDEF (see Section 2.4.4) as a function of a reference value (e.g. actual value of an axis). FTOC( Parameters 2-78 Polynomial no., Read_real_main_variable, length 1_2_3, channel number, spindle number) ;reference value Polynomial no.: Number of function programmed beforehand with FCTDEF. Read_real_main_variable: All main variables listed in Section 2.3.8 of the REAL type may be used. Length 1_2_3: Wear parameter to which offset value is added. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 08.97 Channel number: Spindle number: Example Target channel in which offset must be applied. Simultaneous dressing from a parallel channel is thus possible. If no channel number is specified, the offset is applied in the active channel. Online offset with FTOCON must be activated in the offset target channel. The spindle number is programmed in cases where an inactive grinding wheel needs to be dressed. Precondition is that "Constant grinding wheel peripheral speed" or "Tool monitoring" is active. If no spindle number is programmed, then the active tool is compensated. Compensate length of an active grinding wheel %_N_DRESS_MPF FCTDEF(1,--1000,1000,--$AA_IW[V],1) ;definition of function ID=1 DO FTOC(1,$AA_IW[V],3,1) ; select online tool offset: ; derived from the motion of the V axis, ; length 3 of the active grinding wheel ; is compensated in channel 1. WAITM (1,1,2) ; synchronization with machining channel G1 V--0.05 F0.01, G91 G1 V --.... ... CANCEL(1) ; deselect online offset ... Notice No frequency vocabulary word nor any condition is programmed in the synchronized action. The FTOC action is therefore active in every interpolation cycle with no dependencies other than $AA_IW[V]. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-79 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 2.4.8 04.00 08.97 RDISABLE Programmed read-in disable RDISABLE An RDISABLE command in the active section causes block processing to be stopped if the relevant condition is fulfilled. Processing of programmed motion synchronized actions still continues. The read-in disable is canceled again as soon as the condition for the RDISABLE is no longer fulfilled. An exact stop is initiated at the end of the block containing RDISABLE irrespective of whether or not the read-in disable is still active. Application: This method can be used, for example, to start the program in the interpolation cycle as a function of external inputs. Example of RDISABLE Programmed read-in disable WHENEVER $A_INA[2]<7000 DO RDISABLE ... N10 G01 X10 ; RDISABLE takes effect at the end of N10 if the condition is fulfilled while N10 is being processed. N20 Y20 Program processing is halted if the voltage at input 2 drops to below 7 V (assuming that the value 1000 corresponds to 1 V). Example application of this method: Read-in disable until obstruction is removed from path. 2.4.9 STOPREOF End of preprocessing stop with STOPREOF A motion-synchronized action containing an STOPREOF command cancels the existing preprocessing stop if the condition is fulfilled. STOPREOF must always be programmed with vocabulary word `WHEN' and as a non-modal command. Application: Fast program branch at end of block. Example of STOPREOF Program branches WHEN $AC_DTEB<5 DO STOPREOF G01 X100 IF $A_INA[7]>5000 GOTOF Label 1 If the distance to block end is less than 5 mm, end preprocessing stop. If the voltage at input drops below 5V, jump forwards to label 1 (assuming that the value 1000 corresponds to 1 V). 2.4.10 DELDTG Deletion of distance-to-go Synchronized actions can be used to activate deletion of distance-to-go for the path and for specified axes as a function of a condition. S High-speed prepared deletion of distance-to-go 2-80 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 04.00 08.97 High-speed, prepared DDTG for path DELDTG Synchronized Actions (FBSY) 2.4 Actions in synchronized actions High-speed/prepared deletion of distance-to-go is used in time-critical applications, i.e. -- if the time between deletion of distance-to-go and start of next block needs to be very short or -- if there is a high probability that deletion of distance-to-go will be activated. Deletion of distance-to-go is programmed with synchronized action DELDTG. After the distance-to-go has been deleted, the remaining path distance is stored in $AC_DELT. Continuous-path mode is thus interrupted at the end of the block with high-speed deletion of distance-to-go. Restrictions: Deletion of distance-to-go for the path may only be programmed as a non-modal synchronized action. If tool radius compensation is active, fast deletion of distance to go cannot be used. Commands: MOVE=1:works for indexing axes with and without Hirth serration MOV=0: Same function for both: approaches the next position. Command:DELDTG. In the case of indexing axes without Hirth tooth system: Axis stops immediately. In the case of indexing axes with Hirth tooth system: Axis traverses to next position. Example DELDTG High-speed, prepared DDTG for axes ... DO DELDTG N100 G01 X100 Y100 F1000 N110 G01 X... IF $AC_DELT > 50 ... High-speed, prepared deletion of distance-to-go for axes must be programmed as a non-modal action. Application: A positioning motion programmed in the part program is halted by means of axial deletion of distance-to-go. Several axes can be stopped simultaneously with one command. ... DO DELDTG(axis1, axis2, ...) Examples of DELDTG(axis) WHEN $A_INA[2]>8000 DO DELDTG(X1) ; if the voltage at input 2 drops ; below 8 V, deletion of distance-to-go ; for axis X1 POS[X1] = 100 ; next position R10 = $AA_DELT[X 1] ; transfer axial distance-to-go to R10 After the distance-to-go has been deleted, the axial distance-to-go is stored in variable $AA_DELT[axis]. (Assumption: the value 1000 corresponds to 1 V). E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-81 Synchronized Actions (FBSY) 12.98 06.01 08.97 2.4 Actions in synchronized actions 2.4.11 Disabling a programmed axis motion Task The axis is programmed within a machining routine and, in particular circumstances, must be not started at the beginning of a block. Solution A synchronized action is used to maintain a 0 override until it is time for the axis to be started. Example: WHENEVER $A_IN[1]==0 DO $AA_OVR[W]=0 G01 X10 Y25 F750 POS[W]=1500 FA[W]=1000 ; the positioning axis is started ; asynchronously to path machining; ; the enable signal is set via a digital input Notice Axis motion disable can also be programmed for PLC axes (e.g. magazine axis). 2.4.12 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 recommended for cyclical operations or for operations that are predominantly eventcontrolled. Axes started from synchronized actions are called command axes. Control from the PLC Autonomous individual axis operations (as of SW 6.3) A command axis interpolated from the main run (started by static synchronized actions) reacts independently of the NC program in the event of NC Stop, alarm handling, end of program, program control and reset, when control of the command axis has been taken over from the PLC. Control via the command axis occurs via the axial VDI interface (PLCNCK) with the "PLC controls axis" interface (DB31, ... DBX28.7) == 1 For more information about the precise sequence of operations of the various steps for transferring control of the command axis to the PLC, please refer to: References: /FB/, P2, "Positioning Axes" Supplementary condition 2-82 An axis cannot be moved from the part program and from synchronized actions simultaneously, but may be moved from these two sources successively. Delays may occur if an axis has been moved first from a synchronized action and then programmed again in the part program. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 12.98 08.97 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions Notice MD 30450: IS_CONCURRENT_POS_AX indicates whether the axis is primarily intended as a command axis or for programming by the part program: 0: not a competing axis 1: competing axis (command axis) Example 1 ... ID=1 EVERY $A_IN[1]==1 DO POS[X]=100 ... Example 2 An axis motion can be initiated in the form of a technology cycle (see Section 2.5) Main program: ... ID=2 EVERY $A_IN[1]==1 DO AXIS_X ... Axis program: AXIS_X: M100 POS[X]=100 M17 Programming Positioning axis motions are programmed in synchronized actions as they are from the part program: ID = 1 EVERY $AA_IM[B] > 75 DO POS[U]=100 The programmed position is evaluated in inches or in the metric system depending on whether setting G70 or G71 is active in the current part program block. G70/G71 and G700/G710 can also be programmed directly in synchronized actions with SW 5. This allows the inch/metric evaluation of a command axis movement to be defined independent of programming in the part program. ID = 1 WHENEVER $A_OUT[1] ==1 DO G710 POS[X]=10 ID = 2 EVERY G710 $AA_IM[Z] >100 DO G700 POS[Z2]=10 Notice Only G70, G71, G700, G710 can be programmed in synchronized actions! See Section 2.1. G functions which are programmed in the synchronized action block are only effective for the synchronized action or within the technology cycle. They have no effect on subsequent blocks in the part program. References: /PG/ Chapter 3 "Positional Parameters" E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-83 Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions 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. It is possible to explicitly program whether the value must be interpreted as an absolute or incremental setting: IC: Incremental AC: Absolute DC: Direct, i.e. position rotary axis via shortest route ACN: Position modulo rotary axis absolutely in negative direction of motion ACP: Position modulo rotary axis absolutely in positive direction of motion CAC: Traverse axis to coded position absolutely CIC: Traverse axis to coded position incrementally CDC: Traverse rotary axis to coded position via shortest route CACN: Traverse modulo rotary axis to coded position in negative direction CACP: Traverse modulo rotary axis to coded position in positive direction Coded positions are settings stored in machine data. Example 1 Fixed value ID = 1 EVERY $AA_IM[B] > 75 DO POS[U]=IC(10) ; if event occurs, advance U axis by 10 Example 2 Current value The traversing path is generated in real time from a real-time variable: ID = 1 EVERY $AA_IM[B] > 75 DO POS[U]=$AA_MW[V]-$AA_IM[W] + 13.5 Axial frames The following text explains the response of synchronized actions and axial frames: Effect When positioning motions are executed from synchronized actions, the axial offsets, scaling and mirroring functions of the programmable and settable frames (G54 etc.) as well as tool length compensations are all operative. 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 G1 Y100 ; if the input is set, X is positioned at 60 ... TRANS X-10 G1 Y10 ; if the input is set, X is positioned at 30 Suppression The effect of frames and tool lengths can be suppressed by means of MD 32074: FRAME_OR_CORRPOS_NOTALLOWED 2-84 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 09.01 08.97 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions Suppressing axial frames Axial frames that travel incrementally to indexing positions have no effect on a command axis. Therefore, bit 9 = 1 is set and the command axis is positioned using JOG in MD 32074: FRAME_OR_CORRPOS_NOTALLOWED[AX4]. Example: RANS A=0,001 POS[A]=CAC(2) ; Axis travels to position 180.001 degrees ; The axial frame has no effect on the command axis ; MD 32074: FRAME_OR_CORRPOS_NOTALLOWED[AX4] = 'H0020' WHEN TRUE DO POS[A]=CIC(--1) ; Axis travels to position 180.000 degrees. Notice If a command axis travels to indexing positions incrementally, axial frames usually have no effect on this command axis. 2.4.13 Axial feed from synchronized actions Feedrates An axial feedrate can be programmed in addition to the end position: ID = 1 EVERY $AA_IM[B] > 75 DO POS[U]=100 FA[U]=990 The axial feedrate for command axes has a modal action. It is programmed under address FA. The default is set via axial machine data MD 32060: POS_AX_VELO The feedrate value is either preset to a fixed quantity or generated in real time from real-time variables: 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 programmed either as a linear or a rotational feed: The feed type is determined by setting data: SD 43300: $SA_ASSIGN_FEED_PER_REV_SOURCE. This data can be altered by an operator input, from the PLC or from the part program. In synchronism with the part program context, the feed type can be switched over by means of commands FPRAON, FPRAOF. See also: References: /FB/, V1 "Feeds" Notice The axial feedrate from motion synchronous actions is not output as an auxiliary function to the PLC. Parallel axial technology cycles would otherwise block one another. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-85 Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions 2.4.14 Starting/stopping axes from synchronized actions Starting/stopping Command axes can be stopped from synchronized actions even when no end position has been specified. In this case, the axis is traversed in the programmed direction until another motion is set by means of a new motion or positioning command or until the axis is halted by a stop command. This method can be used, for example, to program an endlessly turning rotary axis. Starting and stopping are programmed by the same method as positioning motions. MOV[axis]=value Data type of value is INT. The value sign determines the direction of motion: > 0: Axis motion in positive direction <0: Axis motion in 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. The feedrate for the motion can be programmed with FA[axis]=value (see above). If no axial feedrate is programmed, the feed value is derived from an axis motion that may already be activated from synchronized actions or from the axis velocity set via MD 32060: POS_AX_VELO. Examples 2.4.15 ... DO MOV[u]=0 ; stop axis motion as soon as condition has been fulfilled 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. Starting/stopping The use of these functions is recommended for cyclical operations or for operations that are predominantly event-controlled. Stop until event occurs Application: A spindle is programmed within a machining routine, but must not be started at the beginning of the block in particular circumstances. A synchronized action is used to maintain a 0 override until the spindle is to start. Example: ID=1 WHENEVER $A_IN[1]==0 DO $AA_OVR[S1]=0 G01 X100 F1000 M3 S1=1000 ; the spindle is started asynchronously to path machining; ; the start command is set via a digital input 2-86 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 09.01 08.97 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions Auxiliary functions, speed, position These functions are programmed in the action section of the synchronized action by exactly the same method as used in the part program. Commands: S= ..., M3, M4, M5, SPOS= ... Example: ID = 1 EVERY $A_IN[1]==1 DO M3 S1000 ID = 2 EVERY $A_IN[2]==1 DO SPOS=270 When no numeric extension is specified, the commands apply to the master spindle. By specifying a numeric extension, it is possible to activate each spindle individually: ID = 1 EVERY $A_IN[1]==1 DO M1=3 S1=1000 SPOS[2]=90 With regard to programming the positioning method, the same rules apply as for positioning axes (see above). If concurrent commands are input via simultaneously active synchronized actions for an axis/spindle, then the commands are applied in the chronological sequence in which they are programmed. Example: ID=1 EVERY $A_IN[1]==1 DO M3 S300 ; rotational direction and speed ID = 2 EVERY $A_IN[2]==1 DO M4 S500; rotational direction and speed ID=3 EVERY $A_IN[3]==1 DO S1000 ; new speed setting ; for active spindle rotation ID=4 EVERY ($A_IN[4]==1 ) AND ($A_IN[1]==0) DO SPOS=0 ; position spindle Feedrate The feedrate for "Position spindles" can be programmed from a synchronized action with command: FA[Sn]= ... : Notice Only a modal data item is available for the feed rate of synchronized actions for spindle mode and axis mode. FA[S] and FA[C] are supplied in the same way. SW limit switches, working area limitations The restrictions imposed by SW limit switches and working area limitations also apply to axis/spindle movements activated from synchronized actions. Influence of limitations on movements from synchronized actions Working area limitations programmed by G25/G26 are taken into account as a function of setting data: SD 43400: $SA_WORKAREA_PLUS_ENABLE. Activation and deactivation of working area limitations by G functions WALIMON / WALIMOF in the part program does not affect command axes. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-87 Synchronized Actions (FBSY) 08.97 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). However, if the same axis must be traversed alternately from the part program as a path axis or positioning axis and from synchronized actions, then a coordinated transfer takes place between both axis motions. Example ; traverse X axis alternately from part program and from synchronized actions N10 G01 X100 Y200 F1000 ; X axis programmed in part program ... N20 ID=1 WHEN $A_IN[1]==1 DO POS[X]=100 FA[X]=200 ; start positioning from synchronized action ; if digital input is applied ... CANCEL(1) ; select synchronized action ... N100 G01 X100 Y200 F1000 ; X: path axis ; delay prior to motion if digital ; input was at 1 so that X was ; positioned from synchronized action On-the-fly transitions Transitions can be made between command axes and spindles. Initial situation Since several synchronized actions can be active simultaneously, the situation may arise where an axis motion is started when the axis is already active. Response In this case, the most recently activated motion is applicable. POS and MOV motions can be activated alternately. When a reversal in the direction of motion is forced in this manner, the axis is first decelerated and then positioned in the opposite direction. 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 ; due to the programming of $AC_TIMER[1], the synchronized action with ID=2 is the most recently activated action. Its commands are applied in place of the commands in ID=1 ... . End position and feedrate for a command axis can therefore be adjusted while the axis is in motion. Example: Activation by signal 2-88 ID=1 EVERY $A_IN[1]==1 DO POS[U]=$AA_IM[U]+$AA_IM[V]*.5 FA[U]=$AA_VACTM[U]+10 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions Legal transitions Transitions marked with x are legal: POS MOV=1 MOV= - 1 Axis mode x x x Position-controlled spindle x x x in # to ! MOV=0 SPOS M3 M4 M5 LEADON TRAILON x x x x x x x x x x x x x Axis stationary Speed-controlled spindle Axis in motion Axis mode x x x Position-controlled spindle Speed-controlled spindle x x x Transitions not marked with an x are rejected with an alarm. Example: Legal transition On-the-fly transitions for axis couplings N10 WHEN $AA_IM[Y] >= 5 DO MOV[Y]=--1 ; start axis in negative ; direction at position ; +5 N20 WHEN TRUE DO POS[Y]=20 FA[Y]=500 ; start Y axis when ; block is reached Positioning axis motions and movements resulting from axis couplings programmed via synchronized actions can be activated alternately. -- See Section 2.4.17 and References: /M3/, Coupled Axes and Master Value Couplings Legal transitions in master value couplings are marked by LEADON in the above table. Legal transitions in coupled axis motions are marked by TRAILON. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-89 Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions 2.4.16 Setting actual values from synchronized actions Application The PRESETON function can be used to redefine the control zero in the machine coordinate system. Function When Preset is applied, the axis is not moved. A new position value is merely entered for the current axis position. Programming The value for one axis can be programmed in each synchronized action. E.g.: WHEN $AA_IM[a] >= 89.5 DO PRESETON(a, 10.5) with PRESETON(axis, value) Axis: Axis whose control zero must be altered Value: Amount by which control zero must be altered. Permissible applications PRESETON from synchronized actions can be programmed for S modulo rotary axes that have been started from the part program and S all command axes that have been started from a synchronized action. Restriction PRESETON cannot be programmed for axes which are involved in a transformation. Example Please refer to Section 6.7.3 for an example of how to use PRESETON in conjunction with an "On-the-fly parting" application. Notice The "PRESETON" preset actual value memory must not be programmed using "WHEN" or "EVERY" vocabulary word. 2-90 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions 2.4.17 Coupled axes and activation/deactivation couplings Introduction The following functions are described in detail in: References: /FB/, M3, Coupled Axes The following functions are described in detail: S Coupled axes Slave axis(axes) is(are) linked to a master axis via a coupling factor. S Curve tables Curve tables represent a (complex) relationship between the master and slave values. The following may be applied as master values: -- Setpoints generated by the control -- Actual values measured by encoders -- Externally specified quantities Situations where a slave axis is linked to a master axis by means of a curve table are particularly relevant with respect to synchronized actions. S Master value coupling The following master value couplings may be implemented for part programs. -- axis master value coupling and -- path master value coupling, Only the axis master value couplings are available for utilization in synchronized actions. Coupled axes From a synchronized action it is possible to define and simultaneously activate the assignment between a slave axis and a master axis using a coupling factor: ... DO TRAILON(FA, LA, Kf) where: FA LA Kf Slave axis Master axis Coupling factor The commands for separating the coupled axis grouping are as follows: ... DO TRAILOF(FA, LA, LA2) where: FA LA LA2 Curve tables Slave axis Master axis Master axis2, optional The relationship between a master quantity and slave quantity that is stored in curve tables can be utilized in synchronized actions in the same way as other REAL functions (e.g. SIN, COS): E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-91 Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions Calculate slave value The slave value calculated from a master value on the basis of curve table n must be assigned to an arithmetic variable. Example: ... DO $R17=CTAB(LW, n, deg) where: LW n grad Master value Number of curve table Pitch parameters, result (2 further option. parameters for scaling: -- Slave axis -- Master axis) Example: DEF REAL GRADIENT ... WHEN $A_IN[1] == 1 DO $R17 = CTAB(75.0, 2, GRADIENT) Calculate 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, deg) where: FW aprLW n grad Master value Approximated master value which will allow an unambiguous master value to be determined when the curve table inverse function is ambiguous Number of curve table Pitch parameters, result (2 further option. parameters for scaling: -- Slave axis -- Master axis) Functions CTAB and CTABINV can be programmed in both conditions and in the action section of synchronized actions. Axis master value coupling The coupling between following axis FA and leading axis LA based on the stored curve table with number NR is called in the action section of synchronized actions as follows: ... DO LEADON(FA; LA, NR) where: FA Slave axis LA Master axis NR Number of curve table Deactivate axis coupling from synchronized action 2-92 If the axis master value coupling must be canceled again on the fulfillment of another condition, the action must be programmed as follows: ... DO LEADOF(FA, LA) E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions System variables The system variables of the master value coupling as specified in the list of system variables can be read/written from the part program and synchronized actions. See 2.3.8. Detection of synchronism System variable $AA_SYNC[ax] can be read from the part program and synchronized action and indicates whether and in what manner following axis FA is synchronized: 0: Not synchronized 1: Coarse synchronism (acc. to MD 37200: COUPLE_POS_TOL_COARSE) 2: Fine synchronism (acc. to MD 37210: COUPLE_POS_TOL_FINE) Definition of application Couplings directly activated in the part program are activated at block limits. With the additional option of activating couplings from synchronized actions, it is possible to implement event-controlled, differential activation, e.g. -- from block beginning for particular axis path, -- up to block end for particular distance-to-go, -- appearance of digital input signals or -- combinations of all these. Section 2.1, Conditions For further information about programming of coupling functions and curve tables, please refer to References: /PGA/, Programming Guide Advanced Notice Axes which might be in any given motional state at the instant they are coupled via synchronized actions are synchronized by the control system. For further details, please refer to Description of Functions M3. Examples Please refer to Section 6.7.3 for an example illustrating an axis coupling implemented by means of a curve table. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-93 12.97 08.97 Synchronized Actions (FBSY) 2.4 Actions in synchronized actions 2.4.18 Measurements from synchronized actions Introduction There are the following measuring functions provided for part programs: MEAS, MEAW, MEASA, MEAWA, MEAC References: /PGA/, Programming Guide Advanced /FB/, M5, "Measurements" Only the following may be used in synchronized actions: S MEAWA Axial measurement without deletion of distance-to-go S MEAC Axial, continuous measurement While measuring functions are limited to one block at a time in part program motion blocks, they can be activated and deactivated any number of times from synchronized actions: Notice With static synchronized actions, measurements are also available in JOG mode. Programming MEAWA[axis]=(mode, trigger_event_1, trigger_event_2, trigger_event_3, trigger_event_4) ; activate axial measurement without deletion of distance-to-go MEAC[axis]=(mode, meas._memory, trigger_event_1, trigger_event_2, trigger_event_3, trigger_event_4) ; activate axial, continuous measurement Axis: Axis for which measurement is taken Table 2-3 Mode meanings: Tens decade 2-94 Units decade Meaning 0 Abort measuring job 1 Up to 4 trigger events can be activated simultaneously 2 Up to 4 trigger events can be activated successively 3 Up to 4 trigger events can be activated successively, but with no monitoring of trigger event 1 on START 0 Active measuring system 1 1st measuring system 2 2nd measuring system 3 Both measuring systems E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions Trigger_event_1 to trigger_event_4: 1: Rising edge probe 1 --1: Falling edge probe 1 2: Rising edge probe 2 --2: Falling edge probe 2 Measurement memory: optional optional optional Number of a FIFO variable Measured values are supplied exclusively for the machine coordinate system. MEAWA ... DO MEAWA[axis]=( , , , , ) distance-to-go ;axial measurement without deletion of Deletion of distance-to-go can be called explicitly in the synchronized action, see Section 2.4.10 and example below. GEO axes and axes involved in transformations can be programmed individually. Programming: The programming method is identical to that used in the part program Notice System variable $AC_MEA does not supply any useful information about the validity of a measurement called from a synchronized action. Only one measuring job at a time may be active for an axis. System variables: $AA_MEAACT[axis] 1 0 $A_PROBE[probe] 1 0 supplies the instantaneous measuring status of an axis. Measurement active Measurement not active supplies the instantaneous status of the measuring probe. Probe switched, high signal Probe not switched, low signal Measured values in machine coordinate system with 2 probes (encoders): $AA_MM1[axis] Trigger event 1, encoder 1 $AA_MM2[axis] Trigger event 1, encoder 2 $AA_MM3[axis] Trigger event 2, encoder 1 $AA_MM4[axis] Trigger event 2, encoder 2 MEAC ... DO MEAC[axis]=(mode, No_FIFO, trigger events) Variables $AC_FIFO (see 2.3.6) are provided for the purpose of storing measured values from cyclic measuring processes. See above for mode and trigger events. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-95 Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions Examples: Two FIFOs have been set up in machine data for the following examples. Machine data MD 28050: MM_NUM_R_PARAM = 300 MD 28258: MM_NUM_AC_TIMER = 1 MD 28260: NUM_AC_FIFO = 2 MD 28262: START_AC_FIFO = 100 MD 28264: LEN_AC_FIFO = 22 MD 28266: MODE_AC_FIFO = 0 ; 2 FIFOs ; first FIFO starts at R100 ; each FIFO can store 22 values ; no summation Example 1. All rising edges of probe 1 must be recorded on a path between X0 and X100. It is assumed that no more than 22 edges will occur. Program 1: DEF INT NUMBER DEF INT INDEX_R N0 G0 X0 N1 MEAC[X]=( 1, 1, 1) POS[X]=100 N2 N3 N4 N5 N6 N7 N8 ; mode = 1, simultaneous ; no. FIFO =1 ; trigger event 1= rising edge, probe 1 ; stop preprocessing ; abort continuous measurement ; number of measured values transferred to FIFO variables STOPRE MEAC[X]=( 0) NUMBER= $AC_FIFO1[4] NUMBER= NUMBER -- 1 FOR INDEX_R= 0 TO NUMBER R[INDEX_R]= $AC_FIFO1[0] ; enter FIFO contents in R0 -- ... ENDFOR ; FIFO variable is empty after read-out Example 2. All rising and falling edges of probe 1 on a path between X0 and X100 must be recorded. The number of trigger events which may occur is unknown. For this reason, the measured values must be fetched and stored in ascending order in R1 as a parallel operation in one synchronized action. The number of stored measured values is entered in R0. Program 2: N0 N1 N2 2-96 G0 X0 ; rapid traverse to starting point $AC_MARKER[1]=1 ; marker 1 as index for arithmetic variable R[..] ID=1 WHENEVER $AC_FIFO1[4]>=1 DO $R[$AC_MARKER[1]]= $AC_FIFO1[0] $AC_MARKER[1]=$AC_MARKER[1]+1 ; synchronized action as check: ; if 1 or more measured values are stored in FIFO variable, ; read oldest value out of FIFO and stored in current R[ ..], ; increment index for R by 1 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions N3 MEAC[X]=( 1, 1, 1, --1) POS[X]=100 N4 N5 N6 MEAC[X]=(0) STOPRE R0= $AC_MARKER[1] ; activate continuous measurement, movement ; towards X = 100 ; mode = 1, simultaneous ; no_FIFO = 1 ; trigger event 1= 1, rising edge probe 1 ; trigger event 2= --1, falling edge probe 1 ; deselect measurement ; stop preprocessing ; number of recorded values in R0 Example 3: Continuous measurement with explicit deletion of distance-to-go after 10 measurements Program 3: N1 WHEN $AC_FIFO1[4]>=10 DO MEAC[X]=(0) DELDTG(X) N2 MEAC[X]=( 1,1,1,--1) G01 X100 F500 N3 N4 MEAC[X]=( 0) R0= $AC_FIFO1[4] ; end condition as synchronized action: ; if 10 or more measured values are stored in FIFO ; variable, ; deselect ; continuous measurement and delete ; distance-to-go ; continuous measurement active from part program. ; mode = 1, simultaneous ; No_FIFO = 1, FIFO variable 1 ; trigger event 1= 1, rising edge probe 1 ; trigger event 2= --1, falling edge probe 1 ; deselect continuous measurement ; actual number of measured values Priority with more than one measurement Only one measuring job can be active for an axis at any given time. Measuring jobs and status changes When a measuring job has been executed from a synchronized action, the control system responds in the following way: If a measuring job for the same axis is started, the trigger events are reactivated and the measurement results reset. The system does not react in any special way if "Deactivate measuring job" (mode 0) is programmed when no measuring job has been activated beforehand. Measuring jobs started from the part program cannot be influenced from synchronized actions. An alarm is generated if a measuring job is started for an axis from a synchronized action when a measuring job from the part program is already active for the same axis. If a measuring job is already in progress from a synchronized action, a measuring job from the part program cannot be started at the same time. Status Response Operating mode switchover A measuring job activated by means of a modal synchronized action is not affected by a change in operating mode. It remains active beyond block limits. RESET Measuring job is aborted E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-97 Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions Status 2.4.19 Response Block search Measuring jobs are collected, but not activated until the programmed condition is fulfilled. REPOS Activated measuring jobs are not affected. End of program Measuring jobs started from static synchronized actions remain active. Setting and deletion of wait markers for channel synchronization Introduction Coordination of operational sequences in channels is described in References: /FB/, K1, Mode Group, Channel, Program Operation Mode The following of the functions described in this document, may be legally used in synchronized actions: Set wait marker Command SETM (marker number) can be programmed in the part program and the action section of a synchronized action. It sets the marker (marker number) for the channel in which the command is applied (own channel). Delete wait marker 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-98 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 08.97 2.4 Actions in synchronized actions 2.4.20 Setting alarm/error reactions Error situations "Set alarm" is one way of reacting to error states. Application: The SETAL command can be programmed to set cycle alarms from synchronized actions. The following reactions can also be programmed as a response to errors: S Stop axis See Section 2.4.11 S Set output See Section 2.4.2 S Other actions described in Section 2.4 Example Set alarm ID=67 WHENEVER $AA_IM[X1] -- $AA_IM[X2] < 4.567 DO SETAL(61000) ; set alarm if distance (actual value of axis X1 -- actual value of axis X2) ; drops below critical value of 4.567. Cycles and cycle alarms For information about cycles and cycle alarms, please refer to References: /PGC/, Programming Guide Cycles E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-99 Synchronized Actions (FBSY) 2.5 Call of technology cycles 2.5 08.97 Call of technology cycles Definition A technology cycle is a sequence of actions that are executed sequentially in the interpolation cycle. The actions described in Section 2.4 can be combined to form programs. From the user's point of view, these programs are subprograms without parameters. Parallel processing in channel Several technology cycles or actions can be processed simultaneously in the same channel. These cycles and actions are processed in parallel in the channel in one interpolation cycle. Processing sequence With respect to processing sequence, the user must select the most suitable method from the following options: S Several actions in one synchronized action: All actions are executed simultaneously in the interpolation cycle in which the condition is fulfilled. S Actions are joined to form a technology cycle: The actions in the technology cycle are processed sequentially in the interpolation cycle. One block is processed in each interpolation cycle. A distinction must be made between single-cycle and multi-cycle actions. A technology cycle is ended when its last action has been executed (generally after several interpolation cycles have passed). Commands such as variable assignments in technology cycles are processed in one interpolation cycle. Other commands (e.g. movement of command axis, see Section 2.4.12) take several interpolation cycles to complete. If the function is complete (e.g. exact stop on positioning of axis), the next block is executed in the following interpolation cycle. Each block requires at least one interpolation cycle. If a block contains several single-cycle actions, then these are all processed in one interpolation cycle. Fig. 2-8 gives examples to indicate which actions are single-cycle and which are multi-cycle. Application One possible application of technology cycles is to move each axis using a separate axis program. Programming A technology cycle can be activated as a function of a condition in a modal/ static synchronized action. End of program is programmed with M02 / M17 / M30 / RET. Search path The call search path is the same as for subprograms and cycles. Example: ... ID=1 EVERY $AA_IM[Y]>=10 DO AX_X ; AX_X subprogram ; name for axis program for X axis 2-100 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.5 Call of technology cycles 08.97 AX_X: ; axis program POS[X]=$R[7] FA[X]=377 $A_OUT[1]=1 POS[X]=R10 POS[X]=--90 M30 Notice If the condition is fulfilled again while the technology cycle is being processed, the cycle is not started again. If a technology cycle has been activated from a synchronized action of the WHENEVER type and the relevant condition is still fulfilled at the end of the cycle, then it will be started again. Synchronized actions Condition Technology cycle 1 Technology cycle 2 Axis X Axis Y Action_11 $AA_OVR[Y]=0 Fig. 2-8 Condition Action_11 POS[Y]=10 Condition Action_11 $AA_OVR[Y]=0 Single-cycle Condition Technology cycle 3 Axis Z $AA_OVR[X]=0 Single-cycle Single-cycle Single-cycle Multi-cycle Single-cycle Action_12 M100 Action_13 POS[Y]=-- 10 POS[Z]=90 Single-cycle Multi-cycle Multi-cycle Action_13 POS[X]=100 M17 POS[Z]=-- 90 Multi-cycle Multi-cycle Single-cycle Multi-cycle M17 M17 Single-cycle Single-cycle Several technology cycles E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-101 Synchronized Actions (FBSY) 2.5 Call of technology cycles 08.97 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 M30 Axis programs: AXIS_X: $AA_OVR[Y]=0 M100 POS[X]=100 M17 AXIS_Y: POS[Y]=10 POS[Y]=--10 M17 AXIS_Z: $AA_OVR[X]=0 POS[Z]=90 POS[Z]=--90 M17 2-102 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.5 Call of technology cycles 08.97 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 Meaning Call legal in part program Call legal in synchr. action / technology cycle PP SA + + LOCK(ID) Disable technology cycle. An active action is interrupted. + UNLOCK(ID) UNLOCK continues the technology cycle at the point of interruption. An interrupted positioning operation is continued. + RESET(ID) Abort technology cycle. Active positioning operations are aborted. If the technology cycle is restarted, then it is processed from the 1st block in the cycle. Depending on the type of synchronized action, actions are executed once more when the condition is fulfilled again. Completed synchronized actions of the WHEN type are not processed again after RESET. + CANCEL(ID) Synchronized action is deleted. + S LOCK(ID), UNLOCK(ID) by PLC see Section 2.6.1 Notice A synchronized action contains a technology cycle call. No further actions may be programmed in the same block in order to ensure that the assignment between ID number and relevant technology cycle is unambiguous. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-103 Synchronized Actions (FBSY) 2.5 Call of technology cycles 08.97 Part program: ; Define/activate synchronized actions Define/ activate ID=1 WHENEVER $A_IN[1]==1 DO M130 ID=2 WHENEVER $A_IN[2]==1 DO LOCK(1) ... CANCEL(2) ... ID=1 .... ... Define/ activate ; Delete ; Overwrite existing synchronized action Synchronized action: Synchronized action: ID=1 ID=2 WHENEVER $A_IN[1]==1 DO M130 WHENEVER $A_IN[2]==1 DO LOCK(1) Block ID1 /unblock (UNLOCK (1)) PLC Fig. 2-9 2-104 Setting up / locking modal synchronized actions / deleting E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 07.98 08.97 Synchronized Actions (FBSY) 2.6 Control and protection of synchronized actions 2.6 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. S Disabling of all modal synchronized actions S Selective disabling of individual synchronized actions Control scope The PLC can control the first 64 modal synchronized actions by locking (ID, IDS 1--64). The synchronized actions which are lockable by the PLC are stored in a 64-bit array of the interface: DB21--30, DBB308--315 and are tagged with a "1" by the NC. Protected synchronized actions are never tagged as lockable. See Section 2.6.2. Disable all synchronized actions The PLC application program can set DB 21--30, DBB1 bit 2 to disable (lock against activation) all modal synchronized actions that are already defined in the NC and stored against activation. In this case, protected synchronized actions are an exception. Please see Section 2.6.2. Setting DB 21--30, DBB1 bit 2 to 0 cancels the general lock by the PLC again. Application of selective disabling One bit is reserved for each of the 64 IDs (1--64) in the PLC interface (DB 21--30, DBB 300 bit 0 to DB21--30 DBB 307 bit 7). Cancellation of selective disabling Setting the bits corresponding to the ID, IDS number to 0 in DB 21--30, DBB 300, bit 0 to DB 21--30, DBB 307 bit 7 causes the PLC to enable a previously disabled synchronized action. Updating the selective disabling If the PLC user program has made changes in the range DB 21--30, DBB 300 bit 0 to DB 21--30, DBB 307 bit 7, the changes must be activated with DB 21--30 DBX280.1. Selective disabling status signal If selective disabling was activated by the NCK, as status signal is set in DB 21--30 DBX.281.1. The default setting for these functions is "enabled" (bits = 0). When the allocated bit is set, evaluation of the condition and execution of the associated function are disabled in the NCK. References: /LIS/, Lists, Interface Signals E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-105 Synchronized Actions (FBSY) 2.6 Control and protection of synchronized actions 08.97 Part program: Path motion, selection of technology cycles Subprogram 1 Subprogram n Axis program 1/ technology cycle 1 When ID=1 ... Axis program n/ technology cycle n Control bit in PLC interface When ID=n PLC: Parameter transfer Initiation of axis functions Fig. 2-10 Reading/writing of PLC data Axis programs/technology cycles In SW version 4 and later, PLC data can 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: /FB/, P3, "Basic PLC Program" Parameters can also be accessed from synchronized actions, thus allowing PLC data to be transferred to the NCK for parameterization before an axis function is initiated. The system variables to be addressed can be found in Subsection 2.3.8. 2-106 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 08.02 08.97 2.6.2 Synchronized Actions (FBSY) 2.6 Control and protection of synchronized actions Protected synchronized actions Global protection Function Machine data MD 11500: PREVENT_SYNACT_LOCK can be programmed to define an area of protected synchronized actions. Synchronized actions with ID numbers within the protected area can no longer be: -- overwritten -- deleted (CANCEL) or -- disabled (LOCK) if they have been defined once. Protected synchronized actions cannot be disabled by the PLC either. They are indicated to the PLC as non-lockable in the interface. See Section 2.6.1. Notice The functionality is also used for Safety Integrated systems. Applications The end customer must be prevented from modifying reactions to certain states defined by the machine manufacturer. To allow the definition and testing of gating logic, synchronized actions are not yet protected when the system is started up by the machine manufacturer. However, the manufacturer declares the range of synchronized actions he has used as protected before the system is delivered to the end customer, thus preventing the end customer from defining his own synchronized actions within this protected area. Notation of MD 11500 $MN_PREVENT_SYNACT_LOCK[0]= i ; i number of the first disable ID $MN_PREVENT_SYNACT_LOCK[1]= j ; j number of the last disable ID i and j can also be inverted. If i = 0 and j = 0, no synchronized actions are protected. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-107 Synchronized Actions (FBSY) 2.6 Control and protection of synchronized actions 08.02 08.97 Channel--specific protection Function The channel--specific machine data MD 21240: PREVENT_SYNACT_LOCK_CHAN can be programmed to define an area of protected synchronized actions for the channel. Synchronized actions with ID numbers within the protected area can no longer be: -- overwritten -- deleted (CANCEL) or -- disabled (LOCK) if they have been defined once. Protected synchronized actions cannot be disabled by the PLC either. They are indicated to the PLC as non-lockable in the interface. See Section 2.6.1. Application See above Notation of MD 21240 CHANDATA(C) ; where C channel number $MC_PREVENT_SYNACT_LOCK_CHAN[0]= k ; k number of the first disable ID for the channel $MC_PREVENT_SYNACT_LOCK_CHAN[1]= l ; l number of the last disable ID for the channel k and l can also be inverted. If k = 0 and l = 0, no synchronized actions are protected. k = --1 and l = --1 indicates that the global area of protected synchronized actions programmed with MD 11500 : PREVENT_SYNACT_LOCK should apply to the channel. Notice Protection for synchronized actions must be canceled 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 effect of the disable is identical, whether it is programmed as: a global disable or a channel--specific disable 2-108 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 08.02 08.97 Example Synchronized Actions (FBSY) 2.6 Control and protection of synchronized actions In a system with 2 channels, synchronized actions should be protected as follows: In the first channel, IDs 20 to 30 should be protected and in the second channel, IDs 25 to 35 should be protected. Global and channel-specific protection may be mixed. $MN_PREVENT_SYNACT_LOCK[0] = 25 ; global protection $MN_PREVENT_SYNACT_LOCK[1] = 35 ; global protection CHANDATA(1) $MC_PREVENT_SYNACT_LOCK_CHAN[0] = 20 ; in the first channel, only the channel--specific MD (first ID number to be protected) is effective $MC_PREVENT_SYNACT_LOCK_CHAN1] = 30 ; in the first channel, only the channel--specific MD (last ID number to be protected) is effective CHANDATA(2) $MC_PREVENT_SYNACT_LOCK_CHAN[0] = --1 ; in the second channel, global machine data ; $MN_PREVENT_SYNACT_LOCK is effective $MC_PREVENT_SYNACT_LOCK_CHAN[1] = --1 ... E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-109 Synchronized Actions (FBSY) 2.7 Control system response for synchronized actions in specific operational states 08.97 2.7 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. References: /FB/, P3, Basic PLC Program /FB/, K1, Mode Group, Channel, Program Operation Mode This arrangement can be used only on condition that SW 4 with "ASUBs in all operating modes" functionality is installed. Examples: 2.7.2 -- Adaptive Control -- Safety Integrated, gating logic formulated by means of synchronized actions RESET Positioning axis motions All positioning motions initiated from synchronized actions are aborted on NC reset. Active technology cycles are reset. ID Synchronized actions programmed locally (i.e. with ID=...) are deselected on NC reset. IDS Static synchronized actions (programmed with IDS = ...) remain active after NC reset. Motions can be restarted from static actions after NC reset. 2-110 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 08.97 Synchronized Actions (FBSY) 2.7 Control system response for synchronized actions in specific operational states Other reactions, dependent on actions RESET continued Synchronized action/ technology cycle Modal and non-modal Static (IDS) Active action is aborted, synchronized actions are canceled Active action is aborted, technology cycle is reset Axis/ positioning spindle Motion is aborted Motion is aborted Speed-controlled spindle $MA_SPIND_ACTIVE_AFTER_RESET== TRUE: Spindle remains active $MA_SPIND_ACTIVE_AFTER_RESET== TRUE: Spindle remains active $MA_SPIND_ACTIVE_AFTER_RESET==FALSE: Spindle stops $MA_SPIND_ACTIVE_AFTER_RESET==FALSE: Spindle stops $MC_RESET_MODE_MASK, bit13 == 1: Master value coupling remains active $MC_RESET_MODE_MASK, bit13 == 1: Master value coupling remains active $MC_RESET_MODE_MASK, bit13 == 0: Master value coupling is canceled $MC_RESET_MODE_MASK, bit13 == 0: Master value coupling is canceled Measuring operations started from synchronized actions are aborted Measuring operations started from static synchronized actions are aborted Master value coupling Measuring operations 2.7.3 NC STOP Motions that have been started from static synchronized actions remain active in spite of an NC STOP. Axis motions started from modal and non-modal actions are interrupted and then restarted by NC START. Speed-controlled spindles remain active. Synchronized actions programmed in the current block remain active. Example: Set output: ... DO $A_OUT[1] = 1 2.7.4 Change in operating mode The response differs depending on whether the relevant synchronized action is static or programmed locally. Synchronized actions activated by vocabulary word IDS remain active after a change in operating mode. All other synchronized actions are deactivated in response to an operating mode change and reactivated on switchover to AUTO mode for repositioning. Example: N10 WHEN $A_IN[1] == 1 DO DELDTG N20 G1 X10 Y 200 F150 POS[U]=350 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-111 Synchronized Actions (FBSY) 2.7 Control system response for synchronized actions in specific operational states 08.97 Block N20 contains a STOP command. The operating mode is switched to JOG. If deletion of distance-to-go was not active prior to the interruption, then the synchronized action programmed in block N10 is reactivated when AUTO mode is selected again and the program continued. 2.7.5 End of program Static synchronized actions remain active after the end of program. Modal and non-modal synchronized actions are aborted. Static and modal synchronized actions programmed in M30 blocks remain active.They can be aborted with CANCEL before the M30 block. Polynomial coefficients programmed with FCTDEF remain active after the end of program. 2.7.6 Response of active synchronized actions to end of program and change in operating mode See Sections 2.7.4 and 2.7.5. Synchronized action/ technology cycle Modal and non-modal actions are aborted Static actions (IDS) remain active Axis/ positioning spindle M30 is delayed until the axis / spindle is stationary. Motion continues Speed-controlled spindle End of program: $MA_SPIND_ACTIVE_AFTER_RESET== TRUE: Spindle remains active Spindle remains active $MA_SPIND_ACTIVE_AFTER_RESET==FALSE: Spindle stops Spindle remains active on mode change Master value coupling $MC_RESET_MODE_MASK, bit13 == 1: Master value coupling remains active A coupling started from a static synchronized action remains active $MC_RESET_MODE_MASK, bit13 == 0: Master value coupling is canceled Measuring operations 2-112 Measuring operations started from synchronized actions are aborted Measuring operations started from static synchronized actions remain active E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.7 Control system response for synchronized actions in specific operational states 08.97 2.7.7 Block search General Synchronized actions in the program which have been interpreted during the block search are collected, but their conditions are not evaluated. No actions are executed. Processing of synchronized actions does not commence until NC Start. IDS Synchronized actions that are programmed with vocabulary word IDS and already active remain operative during the block search. Polynomial coefficients Polynomial coefficients programmed with FCTDEF are collected with calculation during a block search, i.e. they are written to system variables. 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). 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. Positioning motions started from synchronized actions respond in the same way as to operating mode switchover: Motions started from non-modal and modal actions are stopped and continued with REPOS (if programmed). Motions started from static synchronized actions continue uninterrupted. 2.7.9 REPOS In the remainder of the block, the synchronized actions are treated in the same way as in an interruption block. Modifications to modal synchronized actions in the asynchronous subprogram are not effective in the interrupted program. Polynomial coefficients programmed with FCTDEF are not affected by ASUB and REPOS. The coefficients from the call program are applied in the asynchronous subprogram. The coefficients from the asynchronous subprogram continue to be applied in the call program. If positioning motions started from synchronized actions are interrupted by the operating mode switchover or start of the interrupt routine, then they are continued in response to REPOS. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-113 Synchronized Actions (FBSY) 2.7 Control system response for synchronized actions in specific operational states 2.7.10 08.97 Response to alarms Axis and spindle motions started by means of synchronized actions are decelerated in response to an alarm involving a motion stop instruction. All other actions (such as "Set output") continue to be executed. If an alarm is activated by a synchronized action, then the action is no longer processed in the next interpolation cycle, i.e. the alarm is output only once. Alarms that respond with an interpreter stop only take effect once the precoded blocks have been processed. Processing of all other actions continues as normal. If a technology cycle generates an alarm with motion stop, then processing of the relevant cycle ceases. 2-114 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.8 Configuring 08.97 2.8 Configuring 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 in machine data MD 28250: MM_NUM_SYNC_ELEMENTS. This data can be set irrespective of the number of blocks available in the control system, thus enabling the complexity of expressions evaluated in real time as well as the number of actions to be set flexibly. Use of elements One synchronized action element is required for each of the following: -- A comparison expression in a condition -- An elementary action -- The synchronized action block Example: A total of four elements is needed for the synchronized action block below. WHENEVER ($AA_IM[x] > 10.5) OR ($A_IN[1]==1) DO |________| |________________| |_______________| Element 1 Element 2 Element 3 $AC_PARAM[0]=$AA_in[y]+1 |_________________________| Element 4 The default setting of MD 28250: $MC_MM_NUM_SYNC_ELEMENTS is selected such that it is possible to activate the maximum presetting for SW 3 and earlier of 16 synchronized actions. Notice If the user does not wish to program any synchronized actions, then he can reset the value in MD 28250: MM_NUM_SYNC_ELEMENTS to 0 so as to save approximately 16 KB of DRAM memory. Display The status display for synchronized actions (see Section 2.9) indicates how much of the memory provided for synchronized actions is still available. This status can also be read from synchronized actions in variable $AC_NUM_SYNC_ELEM. Alarm An alarm is generated if all available elements are used up during program execution.The user can respond by increasing the number of synchronized action elements or by modifying his program accordingly. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-115 Synchronized Actions (FBSY) 2.8 Configuring Number of FCTDEF functions 08.97 The number of programmable FCTDEF functions for each block can be configured via machine data MD 28252: MM_NUM_FCTDEF_ELEMENTS. The default setting for all control types is 3. For control-specific maximum values, please refer to References: /LIS/, Lists. Interpolation cycle The time required on the interpolation level increases with the number of synchronized actions programmed. It may be necessary for the start-up engineer to lengthen the interpolation cycle accordingly. 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 required Total Basic load for a synchronized action if condition is not fulfilled: WHENEVER FALSE DO $AC_MARKER[0]=0 Text in bold print 10 s ~10 s Read variable: WHENEVER $AA_IM[Y]>10 DO $AC_MARKER[0]=1 11 s ~1 s Write variable: DO $R2=1 11--12 s ~1--2 s Read/write setting data: DO $$SN_SW_CAM_MINUS_POS_TAB_1[0]=20 24 s ~14 s Basic arithmetic operations, e.g. multiplication: DO $R2=$R2*2 22 s ~12 s Trigonometric functions (e.g. cos): DO $R2=COS($R2) 23 s ~13 s Start positioning axis motion: WHEN TRUE DO POS[z]=10 83 s ~73 s 2-116 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 08.97 08.97 2.9 Synchronized Actions (FBSY) 2.9 Diagnostics (with MMC 102/MMC 103 only) Diagnostics (with MMC 102/MMC 103 only) Diagnostic functionality The following special test tools are provided for diagnosing synchronized actions: S Status display S The current values of all synchronized action variables can be displayed. (display real-time variables) S Characteristics of variables can be recorded in the interpolation cycle grid. (log real-time variables) This functionality is structured in the operator interface in the following way: Display status of synchronized actions Display real-time variables Definition of views: -- Scope (which variables) -- Representation mode Log real-time variables Definition of logs: -- Compile list of values to be logged -- Define sampling cycle -- Define log file size Management of views Start log Display real-time variables of a view Management of logs Display log Display values graphically as time characteristics Fig. 2-11 Functionality of test tools for synchronized actions For a description of how to operate these functions, please refer to: References: /BA/, Operator's Guide E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-117 Synchronized Actions (FBSY) 2.9 Diagnostics (with MMC 102/MMC 103 only) 2.9.1 08.97 08.97 Display status of synchronized actions Status display The status display contains the following information: S Current extract of selected program All programmed synchronized actions according to: S Line number S Code denoting synchronized action type S ID number of synchronized action (for modal actions) S Status Synchronized action type Synchronized actions are categorized as follows: -- ID Modal synchronized action -- IDS Static modal synchronized action -- Status The following status conditions might be displayed: Complete synchronized actions 2.9.2 Non-modal synchronized action for next executable block (in AUTOMATIC mode only) S No status: The condition is checked in the interpolation cycle S Disabled LOCK has been set for the synchronized action S Active Execution of action currently in progress. If the action consists of a technology cycle, the current line number in the cycle is also displayed. A search function can be used to display the originally programmed line in NC language for each displayed synchronized action. Display real-time variables 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: Views 2-118 /PGA/, Programming Guide Advanced, Appendix "Views" are provided to allow the user to define the values which are relevant for a specific machining situation and to determine how (in lines and columns, with what text) these values must be displayed. Several views can be arranged in groups and stored in correspondingly named files. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 2.9 Diagnostics (with MMC 102/MMC 103 only) 08.97 Managing views A view defined by the user can be stored under a name of his choice and then called again. Variables included in a view can still be modified (Edit View). Displaying realtime variables of a view The values assigned to a view are displayed by calling the corresponding userdefined view. 2.9.3 Log real-time variables Initial situation To be able to trace events in synchronized actions, it is necessary to monitor the action status in the interpolation cycle. Method The values selected in a log definition are written to a log file of defined size in the specified cycle. Special functions for displaying the contents of log files are provided. Value Signal IPO cycle MMC Logging OFF, transfer to MMC Log file 3--50 KB Circular buffer Logging ON Values/signals Value Log definition Signal NCK Interpolation cycle Fig. 2-12 Schematic representation of "Log real-time variables" process Operation For information about operating the logging function, please refer to: References: /BA/, Operator's Guide E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 2-119 Synchronized Actions (FBSY) 2.9 Diagnostics (with MMC 102/MMC 103 only) 08.97 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. A list of variables which may be selected for logging purposes is displayed. The cycle can be selected in multiples of the interpolation cycle. The file size can be selected in KB. A log definition must be initialized before it can be activated on the NCK for the purpose of acquiring the necessary values. Log file size Values ranging between 3 KB (minimum) and 50 KB (maximum) can be selected as the logging file size. 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 -- an operator input or -- setting of system variable $A_PROTO=1 from the part program The starting instant must be selected such that the variables to be logged are not altered until operations on the machine have been activated. The start point refers to the last log definition to be initialized. Stopping logging "Graphic log" function This function terminates the acquisition of log data in the NCK. The file containing the logged data is made available on the MMC for storage and evaluation (graphic log). Logging can be stopped by -- an operator input or -- setting of system variable $A_PROTO=0 from the part program The measured values (up to 6) of a log are represented graphically as a function of the sampling time. The names of variables are specified in descending sequence according to the characteristics of their values. The screen display is arranged automatically. Selected areas of the graphic can be zoomed. Notice Graphic log representations are also available as text files on the MMC 102. An editor can be used to read the exact values of a sampling instant (values with identical count index) numerically. Management of logs Several log definitions can be stored under names of the user's choice. They can be called later for initialization and start of recording or for modification and deletion. J 2-120 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 03.96 08.97 3 Supplementary Conditions Supplementary Conditions Availability/ scope of performance 3 The scope of performance provided by the "Synchronized actions" function package depends on the following: S The type of SINUMERIK control system -- HW -- SW (export / standard versions) S The availability of functions that can be initiated by "Actions": -- Standard functions -- Functions that are available as options The performance of control systems and their variants as well as functions supplied as options are described in catalogs specific to the SW version: References: /BU/, Ordering Information, Catalog NC60.1 and in /LIS/, Lists The functions associated with synchronized actions are also dependent on S the list of system variables that can be read/written from synchronized actions including machine and setting data. -- The number of available system variables depends on the SW version installed. System variables that may be used in conjunction with specific SW versions are described in: References: Extensions in SW 4 /PGA/, Programming Guide Advanced, Appendix (for the relevant SW version) The following extensions have been introduced with SW 4: S Diagnostic facilities for synchronized actions S Availability of additional real-time variables S Complex conditions in synchronized actions -- Basic arithmetic operations -- Functions -- Indexing with real-time variables -- Access to setting and machine data -- Logic operators S Configurability -- Number of simultaneously active synchronized actions -- Number of special variables for synchronized actions S Activate command axes/axis programs/technology cycles from synchronized actions E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 3-121 05.99 08.97 Synchronized Actions (FBSY) 3 Supplementary Conditions S PRESET from synchronized actions S Couplings and coupled axes from synchronized actions -- Activation -- Deactivation -- Parameterization S Use of measuring functions from synchronized actions S SW cams -- Redefinition of position -- Redefinition of lead times S Deletion of distance-to-go without preprocessing stop S Static synchronized actions (modes other than AUTO possible) S Synchronized actions: -- Protection against overwriting and deletion -- Stopping, continuing, deleting -- Resetting technology cycles -- Parameterizing, enabling and disabling from PLC S Overlaid motion/optimized clearance control S Coordinating channels from synchronized actions S Starting ASUBs from synchronized actions S Non-modal auxiliary function outputs S All necessary functions for Safety Integrated for formulation of requisite safety-oriented logic operations, protected against changes. S 16 Synchronized actions are included in the basic version Extensions in SW 5 The following extensions have been introduced with SW 5: S Synchronized actions which can be tagged for the PLC S Availability of additional real-time variables S Access to PLC I/O (option) S 255 parallel synchronized actions per channel are possible with the option "Synchronized actions step 2". S Static synchronized actions IDS that are active beyond the program end and are effective in all operating mode are possible using the option "Intermode group actions, ASUBs and synchronized actions". J 3-122 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 08.02 08.97 Synchronized Actions (FBSY) 4.1 General machine data Data Descriptions (MD, SD) 4.1 4 General machine data 11500 PREVENT_SYNACT_LOCK MD number Protected synchronized actions Default setting: 0, 0 Min. input limit: 0 Max. input limit: 255 Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: DWORD Applies from SW version: 4.1 Significance: First and last ID of a protected synchronized action area. Synchronized actions with IDs within this area cannot be overwritten or disabled in the program (NC: CANCEL, LOCK). Neither can protected synchronized actions be disabled (LOCK) by the PLC. Typical application: The machine manufacturer defines safety logic in an asynchronous subprogram. This logic is started by the PLC during power ON. The range of IDs used is locked out via this machine data, thus preventing the end customer from modifying or deactivating the safety logic integrated by the machine manufacturer. Note: Protection for synchronized actions must be canceled while actions to be protected are being defined or else power ON will have to be executed for every alteration to allow redefinition of the logic. A setting of 0.0 means that no synchronized actions are protected, i.e. the function is not switched on. The values are read as absolute values. Upper and lower values can be specified in any sequence. The configuring can be changed if necessary using the channel--specific MD 21240: PREVENT_SYNACT_LOCK_CHAN. Related to .... MD 21240: PREVENT_SYNACT_LOCK_CHAN E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 4-123 Synchronized Actions (FBSY) 4.2 Channel-specific machine data 4.2 08.02 08.97 Channel-specific machine data 21240 PREVENT_SYNACT_LOCK_CHAN MD number Protected synchronized actions for channel Default setting: --1, --1 Min. input limit: --1 Max. input limit: 255 Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: DWORD Applies from SW version: 6.4 Significance: First and last ID of a protected synchronized action area. Synchronized actions with IDs within this area cannot be overwritten or disabled in the program (NC: CANCEL, LOCK). Neither can protected synchronized actions be disabled (LOCK) by the PLC. The range of IDs used is locked out via this machine data, thus preventing the end customer from modifying or deactivating the safety logic integrated by the machine manufacturer. Note: Protection for synchronized actions must be canceled while actions to be protected are being defined or else power ON will have to be executed for every alteration to allow redefinition of the logic. A setting of 0.0 means that no synchronized actions are protected, i.e. the function is not switched on. The values are read as absolute values. Upper and lower values can be specified in any sequence. --1, --1 indicates that the ID numbers programmed for the channel with MD 11500: PREVENT_SYNACT_LOCK shall apply. Related to .... MD 11500: PREVENT_SYNACT_LOCK 28250 MM_NUM_SYNC_ELEMENTS MD number Number of elements for expressions in synchronized actions Default setting: 159 Min. input limit: 0 Max. input limit: 2000 Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: DWORD Applies from SW version: 4.1 Significance: The components of synchronized actions are stored in elements for storage in the control system. An action requires a minimum of 4 elements. Elements required by components are as follows: -- Each operand in the condition 1 element -- Each action >= 1 element -- Each assignment 2 elements -- Every further operand in complex expressions 1 element. One element uses approximately 64 bytes of memory. Further references Programming Guide Advanced 4-124 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 06.01 08.97 Synchronized Actions (FBSY) 4.2 Channel-specific machine data MM_NUM_FCTDEF_ELEMENTS 28252 MD number Number of FCTDEF elements Default setting: 3 Min. input limit: 0 Max. input limit: 100 Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: DWORD Applies from SW version: 4.1 Significance: Storage elements are required to store functions in the control system for use by synchronized actions. This MD determines the number of these elements. 28254 MD number Default setting: 50 MM_NUM_AC_PARAM Number of $AC_PARAM parameters Min. input limit: 0 Max. input limit: 10000, As of SW 6.3: 20000 Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: DWORD Applies from SW version: 4.1 Significance: Number of channel-specific $AC_PARAM parameters for synchronized actions 28255 MM_BUFFERED_AC_PARAM MD number Storage location for $AC_PARAM Default setting: 0 Min. input limit: 0 Max. input limit: 1 Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: DWORD Applies from SW version: 6.3 Significance: The $AC_PARAM system variables can be saved either: 0: in dynamic (default) 1: in static SRAM System variables saved in SRAM retain their current values after RESET and Power On. They can be included in the data backup. Related to .... MM_NUM_AC_PARAM Further references /IAD/, Installation and Start--Up Guide 28256 MD number Default setting: 8 MM_NUM_AC_MARKER Number of $AC_MARKER markers Min. input limit: 0 Max. input limit: 10000, As of SW 6.3: 20000 Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: DWORD Applies from SW version: 4.1 Significance: Number of channel-specific $AC_MARKER markers for synchronized actions 28257 MM_BUFFERED_AC_MARKER MD number Storage location for $AC_MARKER Default setting: 0 Min. input limit: 0 Max. input limit: 1 Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: Applies from SW version: 6.3 Significance: You can save the system variables $AC_MARKER either: 0: in dynamic DRAM (default) 1: in static SRAM System variables saved in SRAM retain their current values after RESET and Power On. They can be included in the data backup. Related to .... MM_NUM_MARKER Further references /IAD/, Installation and Start--Up Guide E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 4-125 Synchronized Actions (FBSY) 4.2 Channel-specific machine data 08.97 MM_NUM_AC_TIMER 28258 MD number Number of $AC_TIMER time variables Default setting: 0 Min. input limit: 0 Max. input limit: 10000 Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: DWORD Applies from SW version: 4.1 Significance: Number of channel-specific $AC_TIMER time variables for synchronized actions 28260 NUM_AC_FIFO MD number Number of $AC_FIFO1, $AC_FIFO2, ... variables Default setting: 0 Min. input limit: 0 Max. input limit: 10 Changes effective after power ON Protection level: 2 / / Unit: -Data type: DWORD Applies from SW version: 4.1 Significance: Number of FIFO variables, $AC_FIFO1 to $AC_FIFO10, for synchronized actions. Application example(s) Related to .... FIFO variables can be used, for example, to track products: Information (e.g. product length) can be buffered for each part on a conveyor belt in a separate FIFO variable. MD 28262: START_AC_FIFO 28262 START_AC_FIFO MD number Store FIFO variables from R parameter Default setting: 0 Min. input limit: 0 Max. input limit: 10000 Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: DWORD Applies from SW version: 4.1 Significance: Number of R parameter at start of FIFO variable storage area. All R parameters with low numbers can be used as required in the part program. R parameters above the FIFO range cannot be written from the part program. The number of R parameters must be set in machine data MD 28050: $MC_MM_NUM_R_PARAM such that there is space to store all FIFO variables from the R parameter at the start of the FIFO area: $MC_MM_NUM_R_PARAM=$MC_START_FIFO + $MC_NUM_AC_FIFO*($MC_LEN_AC_FIFO+6) The FIFO variable names are $AC_FIFO1 to $AC_FIFOn. They have been set up as fields. Indices 0 -- 5 have special meanings: n= 0: When a variable is written with index 0, a new value is stored in the FIFO. When a variable is read with index 0, the oldest element is deleted from the FIFO. n=1: Access to first element to be read in n=2: Access to last element to be read in n=3: Sum of all FIFO elements n=4: Number of elements available in FIFO n=5: Current write index relative to beginning of FIFO Related to .... MD 28260: NUM_AC_FIFO 28264 LEN_AC_FIFO MD number Length of $AC_FIFO ... FIFO variables Default setting: 0 Min. input limit: 0 Max. input limit: 10000 Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: DWORD Applies from SW version: 4.1 Significance: Length of FIFO variables $AC_FIFO1 to $AC_FIFO10. All FIFO variables in one channel are of the same length. Related to .... MD 28262, MD 28260 4-126 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 08.97 Synchronized Actions (FBSY) 4.2 Channel-specific machine data MODE_AC_FIFO 28266 MD number FIFO processing mode Default setting: 0 Min. input limit: 0 Max. input limit: *** Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: BYTE Applies from SW version: 4.1 Significance: FIFO processing mode: Bit 0 = 1: The sum of all FIFO contents is generated on every write access operation. Bit 0 = 0: No summation Related to .... MD 28260: NUM_AC_FIFO E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 4-127 Synchronized Actions (FBSY) 4.3 Axis/spindle-specific machine data 4.3 12.97 08.97 Axis/spindle-specific machine data 30450 IS_CONCURRENT_POS_AX MD number Competing positioning axis Default setting: 0 Min. input limit: 0 Max. input limit: 1 Changes effective after power ON Protection level: 2 / 7 Unit: 1 Data type: Boolean Applies from SW version: 1 Significance: This axis is a competing positioning axis. From SW4.3 (not FM--NC): If FALSE: At RESET a neutral axis becomes channel axis again. If TRUE: At RESET a neutral axis remains in the neutral axis state, and a channel axis becomes neutral axis. Further references Starting the command axes see Section 2.4.12 32070 CORR_VELO MD number Axis speed for handwheel, ext. ZO, cont. dressing, clearance control Default setting: 100 Min. input limit: 0 Max. input limit: Plus Changes effective after power ON Protection level: 2 / 7 Unit: % Data type: DWORD Applies from SW version: 3.2 Significance: Limitation of axis velocity for handwheel override, external zero offset, continuous dressing, clearance control $AA_OFF via synchronized actions referred to JOG velocity MD: JOG_VELO, MD: JOG_VELO_RAPID, MD: JOG_REV_VELO, MD: JOG_REV_VELO_RAPID. The maximum permissible velocity corresponds to the maximum velocity setting in MD: MAX_AX_VELO. The limitation is applied at this value. An alarm is generated if this maximum setting is exceeded. Conversion to linear or rotary axis velocity is carried out in accordance with MD: IS_ROT_AX. Application example(s) Limitation of velocity for traversal of overlaid motions. 4-128 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 4.3 Axis/spindle-specific machine data 08.97 FRAME_OR_CORRPOS_NOTALLOWED 32074 MD number Effectiveness of frames and tool length compensation Default setting: 0 Min. input limit: 0 Max. input limit: 0xFF Changes effective after power ON Protection level: 2 / 7 Unit: -Data type: DWORD Applies from SW version: 4.2 Significance: The effectiveness of frames and tool length compensations with respect to indexing axes, PLC axes and command axes started from synchronized actions is programmed in this machine data. Bit == 0: Bit assignment: Bit 0 == 1: Frame or compensation values are permitted Programmed zero offset (TRANS) is not permitted with respect to indexing axis. Bit 1 == 1: Scale modification (SCALE) not permitted for indexing axis. Bit 2 == 1: Direction reversal (MIRROR) not permitted for indexing axis Bit 3 == 1: DRF offset not permitted for axis Bit 4 == 1: External zero offset not permitted for axis Bit 5 == 1: Online tool offset not permitted for axis Bit 6 == 1: Synchronized action offset not permitted for axis Bit 7 == 1: Compile cycle offset not permitted for axis Bit 8 == 1: Bit 8 == 0: Axial frames are operative with respect to PLC axes Axial frames are NOT operative with respect to PLC axes (bit evaluation is such for reasons of compatibility) Bit 9 == 1: Axial frames are not operative with respect to command axes Axial frames are not operative with respect to command axes Bit 9 == 0: 32920 AC_FILTER_TIME MD number Filter smoothing constant for Adaptive Control Default setting: 0.0 Min. input limit: 0.0 Max. input limit: Plus Changes effective after power ON Protection level: 2/7 Unit: s Data type: DOUBLE Applies from SW version: 2.1 Significance: The following actual drive values can be acquired by means of main run variables $AA_LOAD, $AA_POWER, $AA_TORQUE and $AA_CURR: -- Drive load -- Active drive power -- Drive torque setpoint -- Actual current value of axis or spindle Measured values can be smoothed via a PT1 filter in order to eliminated peaks. The filter time constant is defined in MD: AC_FILTER_TIME (filter smoothing time constant for Adaptive Control). MD irrelevant for ...... Application example(s) The PT1 filter acts in addition to the filters integrated in the 611-D with respect to the drive torque setpoint or actual current value. The two filters are connected in series if both heavily and weakly smoothed values are required in the system. An input of a 0 second smoothing time deactivates the filter. FM-NC with 611A Smoothing of actual current value for AC Control. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 4-129 Synchronized Actions (FBSY) 4.4 Setting data 10.00 12.97 04.00 08.97 AA_OFF_MODE 36750 MD number Effect of value assignment for axial override with synchronized actions Default setting: 0 Min. input limit: 0 Max. input limit: 7 Changes effective after power ON Protection level: 2/7 Unit: -Data type: BYTE Applies from SW version: 3.2 (As of SW 6 bits 1 and 2) Significance: Main run variable $AA_OFF allows an overlaid motion for the programmed axis to be implemented within a synchronized action. The mode of calculation is defined in axial MD: AA_OFF_MODE, the type of application is defined as follows: Bit0: effect of tool assignment within a synchronized variable: As of SW 3.2: Bit0 = 0: absolute value Bit0 = 1: incremental value (integrator) Bit1: response of $AA_OFF in the case of a reset Bit1 = 0: $AA_OFF is deselected in the case of a reset Bit1 = 1: $AA_OFF is retained beyond the reset (as of SW 6) Bit2: $AA_OFF in JOG mode Bit2 = 0: no overlaid movement on the basis of $AA_OFF Bit2 = 1: overlaid movement is interpolated on the basis of $AA_OFF (as of SW 6) Application example(s) 4.4 S S Clearance control for laser machining (integral) Joystick-controlled axis traversal (proportional) Setting data 43350 AA_OFF_LIMIT MD number Upper limit of compensation value for $AA_OFF clearance control Default setting: 1.0 Ex+8 Min. input limit: 0 Max. input limit: *** Changes effective immediately Protection level: 2 / 7 Unit: mm/degrees Data type: DOUBLE Applies from SW version: 4.2 Significance: Upper limit of compensation value that can be preset from synchronized actions by means of variable $AA_OFF. The limit value is applied to the effective absolute amount of compensation. Application for clearance control in laser machining operations: The compensation value is limited to prevent the laser head from becoming trapped in metal blanks. System variable $AA_OFF_LIMIT can be scanned to determine whether the compensation value is within the limit range. J 4-130 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 08.97 5 Signal Descriptions 5 Signal Descriptions Signals from NCK channel Channel 3 Channel 2 Channel 1 Synchronized actions M, S, H fct. modification M fcts. 1--5 not included in list M fcts. 1--5 Extended addr. M fcts. 1--5 Dynamic M functions: M0-M99 S fcts. 1--3 Extended addr. S fcts. 1--3 H fcts. 1--3 Extended addr. H fcts. 1--3 F fcts. 1--6 Extended addr. F fcts. 1--6 Fig. 5-1 PLC interface signals for synchronized actions The signals generated by auxiliary function outputs from synchronized actions correspond to those described in References: /FB/, H2, Output of Auxiliary Functions to PLC. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 5-131 Synchronized Actions (FBSY) 12.98 08.97 5 Signal Descriptions Signals to channel The PLC application program uses signals DB 21--30 DBB 300 bit 0 to DB 21--30 DBB 307 bit 7 to request disabling of the assigned synchronized actions. In this case, DBB 300 bit 0 corresponds to the first modal synchronized action (ID=1/IDS=1) and DBB 307 bit 7 to the 64th modal synchronized action (ID=64/IDS=64). Notice Only the instance (NCK or PLC) which initiated a disable can cancel the disable again. Signals from channel The channel uses signals DB 21--30 DBB 308 bit 0 to DB 21--30 DBB 315 bit 7 to indicate to the PLC user program which synchronized actions can be disabled by the PLC. In this case,DBB 308 bit 0 corresponds to the first modal synchronized action (ID=1/IDS=1) and DBB 315 bit 7 to the 64th modal synchronized action (ID=64/IDS=64). Disable all synchronized actions Global signal DB21--30 DBB1 bit 2 disables all modal/static synchronized actions as long as they are not protected. Disable selected synchronized actions DB 21 -- 30 DBX280.1 From the synchronized actions that are marked as possible to disable in DB 21 -- 30 DBB 308 bit 0 to DB 21 -- 30 DBB 315 bit 7, disable the ones in DB 21 -- 30 DBB 300 bit 0 to DB 21 -- 30 DBB 307 bit 7 that have been marked to be disabled by means of the set bit. Synchronized actions disabled DB 21 -- 30 DBX281.1 The NCK confirms that the requested synchronized actions have been disabled. J 5-132 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 08.97 6.1 Synchronized Actions (FBSY) Examples of conditions in synchronized actions 6 Examples 6.1 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 ... WHEN $AA_DTEW[X]<= 10 DO ... POS[X]= 10 Path distance from start of block Path 20 mm or more after start of block in basic coordinate system: ...WHEN $AC_PLTBB >= 20 DO ... Condition with function in comparison Actual value for axis Y in MCS greater than 10 x sine of value in R10: ... WHEN $AA_IM[y] > 10*SIN(R10) DO ... Step-by-step positioning Every time input 1 is set, the axis position is advanced by one step. The input must be reset again to allow cold restarting of the system. G91 EVERY $A_IN[1]==1 DO POS[X]= 10 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 system variables that can be read in synchronized actions contained in References: /PGA/, Programming Guide Advanced and in Section 2.3.8. describes the full range of quantities that can be evaluated in the conditions of synchronized actions. E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 6-133 Synchronized Actions (FBSY) 6.2 Reading and writing of SD/MD from synchronized actions 05.98 08.97 6.2 Reading and writing of SD/MD from synchronized actions Infeed and oscillation for grinding operations NC language Setting data whose values remain unchanged during machining are addressed in the part program by their usual names. Example: Oscillation from synchronized actions Remarks N610 ID=1 WHENEVER $AA_IM[Z]>$SA_OSCILL_REVERSE_POS1[Z] DO $AC_MARKER[1]=0 ;Whenever the current position of the reciprocating ;axis ;in the machine coordinate system is ;less than the start of reversal area 2, ;then set the axial override of the ; infeed axis to 0 N620 ID=2 WHENEVER $AA_IM[Z]<$SA_OSCILL_REVERSE_POS2[Z]--6 DO $AA_OVR[X]=0 $AC_MARKER[0]=0 ;Whenever the current position of the reciprocating ;axis in the machine coordinate system ;is equal to reverse position 1, ;then set the axial override of the ; reciprocating axis to 0 ;and set the axial override of the ; infeed axis to 100% (this cancels the ; previous synchronized ; action!) N630 ID=3 WHENEVER $AA_IM[Z]==$SA_OSCILL_REVERSE_POS1[Z] DO $AA_OVR[Z]=0 $AA_OVR[X]=100 ;Whenever the distance to go of the partial infeed ;is equal to 0, ;then set the axial override of the reciprocating ; axis to 100% (this cancels the ; previous synchronized action!) 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 ;Whenever the current position of the reciprocating ;axis in the workpiece coordinate system ;is equal to reverse position 1, ;then set the axial override of the ; reciprocating axis to 100% ;and set the axial override of the ; infeed axis to 0 (this cancels the ; second synchronized ; action!) 6-134 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 05.98 08.97 6.2 Synchronized Actions (FBSY) Reading and writing of SD/MD from synchronized actions N670 ID=7 WHEN $AA_IM[Z]==$SA_OSCILL_REVERSE_POS1[Z] DO $AA_OVR[Z]=100 $AA_OVR[X]=0 Setting data whose value may change during machining (e.g. through an operator input or synchronized action) must be programmed with $$S... : Example: Oscillation from synchronized actions with alteration of oscillation position via operator interface N610 ID=1 WHENEVER $AA_IM[Z]>$$SA_OSCILL_REVERSE_POS1[Z] DO $AC_MARKER[1]=0 ;Whenever the current position of the reciprocating ;axis in the machine coordinate system ;is less than the start of reversal area 2, ;then set the axial override of the ; infeed axis to 0 N620 ID=2 WHENEVER $AA_IM[Z]<$$SA_OSCILL_REVERSE_POS2[Z]--6 DO $AA_OVR[X]=0 $AC_MARKER[0]=0 ;Whenever the current position of the reciprocating ;axis in the machine coordinate system ;is equal to reverse position 1, ;then set the axial override of the ; reciprocating axis to 0 ;and set the axial override of the ; infeed axis to 100% (this cancels the ; previous synchronized ; action!) N630 ID=3 WHENEVER $AA_IM[Z]==$$SA_OSCILL_REVERSE_POS1[Z] DO $AA_OVR[Z]=0 $AA_OVR[X]=100 ;Whenever the distance to go of the partial infeed ;is equal to 0, ;then set the axial override of the ; reciprocating axis to 100% (this cancels ; previous synchronized ; action!) 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 ;Whenever the current position of the reciprocating axis in the ;workpiece coordinate system ;is equal to reverse position 1, ;then set the axial override of the ; reciprocating axis to 100% ;and set the axial override of the ; infeed axis to 0 (this cancels the ; second synchronized ; action!) N670 ID=7 WHEN $AA_IM[Z]==$$SA_OSCILL_REVERSE_POS1[Z] DO $AA_OVR[Z]=100 $AA_OVR[X]=0 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 6-135 Synchronized Actions (FBSY) 6.3 Examples of adaptive control 6.3 08.97 Examples of adaptive control General procedure The following examples use the polynomial evaluation function SYNFCT(). 1. Representation of relationship between input value and output value (realtime variables in each case) 2. Definition of this relationship as polynomial with limitations 3. With position offset: Setting of MD and SD -- MD 36750: $AA_OFF_MODE -- SA 43350: $SA_AA_OFF_LIMIT (optional) 4. Activation of the control in a synchronized action 6.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. Polynomial 1 is defined directly via system variables: Adaptation range of upper limit $AA_OFF[V] 0.5 $AC_FCTUL[1] 0.35 $AC_FCT1[1] 1 $AC_FCT0[1] 0.2 $A_INA[1] Fig. 6-1 6-136 Clearance control with variable upper limit E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 6.3 Examples of adaptive control 08.97 $AC_FCTLL[1]=0.2 ; lower limit $AC_FCTUL[1]=0.5 ; start value for upper limit $AC_FCT0[1]=0.35 ; zero crossover a0 $AC_FCT1[1]=1.5 EX--5 ; pitch a1 STOPRE ; see following note ... ID=1 DO $AC_FCTUL[1]=$A_INA[2]*0.1+0.35 ; adapt upper ; limit dynamically via ; analog input 2, no condition ID=2 DO SYNFCT(1, $AA_OFF[V], $A_INA[1]) ; clearance control by means of override ; no condition ... Notice When system variables are applied 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). 6.3.2 Feed 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) feed override. Feedrate override shall be performed within the range of 100 [mm/min]. Path and axial feedrate override $AC_VC $AA_VC[AX] Unit e.g. mm/min + 200 a0 ULIMIT + 100 1V 2V 3V Analog input $A_INA[1] Unit: V LLIMIT -- 100 Fig. 6-2 Diagram illustrating Adaptive Control Determination of coefficients: E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 6-137 Synchronized Actions (FBSY) 6.3 Examples of adaptive control 08.97 y = f(x) = a0 + a1x +a2x2 + a3x3 a1 = -- 100 mm 1 min 1 V a1 = --100 % control constant, lead a0 = --(--100) 2 = 200 a2 = 0 (not a square component) a3 = 0 (not a cubic component) Upper limit = 100 Lower limit = --100 FCTDEF( polynomial no., LLIMIT, ULIMIT, a0, a1, a2, a3 ) ; y for x = 0 ; pitch ; square component ; cubic component With the values determined above, the polynomial is defined as follows: FCTDEF(1, --100, 100, 200, --100, 0, 0) The following synchronized actions can be used to activate the Adaptive Control functionfor the axis feedrate: ID = 1 DO SYNFCT(1, $AA_VC[X], $A_INA[1]) or for the path feedrate: ID = 2 DO SYNFCT(1, $AC_VC, $A_INA[1]) 6-138 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 6.3 Examples of adaptive control 08.97 6.3.3 Control velocity as a function of normalized path Multiplicative adaptation The normalized path is applied as an input quantity: $AC_PATHN. 0: At block beginning 1: At block end Variation quantity $AC_OVR must be controlled as a function of $AC_PATHN according to a 3rd-degree polynomial. The override must be reduced from 100 to 1% during the motion. Override $AC_OVR 100 Upper limit 100 50 Lower limit 1 0 0.2 Fig. 6-3 0.4 0.6 0.8 1 Path parameter $AC_PATHN Regulate velocity continuously Polynomial 2: Lower limit: 1 Upper limit: 100 a0: a1: a2: a3: 100 --100 --100 Not used With these values, the polynomial definition is as follows: FCTDEF(2, 1, 100, 100, --100, --100) ; activation of variable override as a function of path: ID= 1 DO SYNFCT(2, $AC_OVR, $AC_PATHN) G01 X100 Y100 F1000 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 6-139 Synchronized Actions (FBSY) 6.4 Monitoring of a safety clearance between two axes 6.4 08.97 Monitoring of a safety clearance between two axes Task Axes X1 and X2 operate two independently controlled transport devices used to load and unload workpieces. To prevent the axes from colliding, a safety clearance must be maintained between them. If the safety clearance is violated, then axis X2 is decelerated. This interlock is applied until axis X1 leaves the safety clearance area again. If axis X1 continues to move towards axis X2, thereby crossing a closer safety barrier, then it is traversed into a safe position. NC language Remarks ID=1 WHENEVER $AA_IM[X2] -- $AA_IM[X1] < 30 DO $AA_OVR[X2]=0 ; safety barrier ID=2 EVERY $AA_IM[X2] -- $AA_IM[X1] < 15 DO POS[X1]=0 ; safe position 6.5 Task Store execution times in R parameters Store the execution time for part program blocks starting at R parameter 10. Program Remarks ; The example is as follows without symbolic programming: IDS=1 EVERY $AC_TIMEC==0 DO $AC_MARKER[0] = $AC_MARKER[0] + 1 ; advance R parameter pointer on block change IDS=2 DO $R[10+$AC_MARKER[0]] = $AC_TIME ; write current time from block start in each case ; to R parameter ; The example is as follows with symbolic programming: DEFINE INDEX AS $AC_MARKER[0] ; declarations for symbolic programming IDS=1 EVERY $AC_TIMEC==0 DO INDEX = INDEX + 1 ; advance R parameter pointer on block change IDS=2 DO $R[10+INDEX] = $AC_TIME ; write current time from block start in each case ; to R parameter 6-140 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 6.6 "Centering" with continuous measurement 08.97 6.6 "Centering" with continuous measurement Introduction The gaps between gear teeth are measured sequentially. The gap dimension is calculated from the sum of all gaps and the number of teeth. The center position sought for continuation of machining is the position of the first measuring point plus 1/2 the average gap size. The speed for measurement is selected such that one measured value can be reliably acquired in each interpolation cycle. Probe 2 1 1 Falling edge, beginning of gap 2 Rising edge, end of gap 2 Fig. 6-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 variables *** N1 DEF INT NO.TEETH N5 DEF REAL HYS_POS_EDGE N6 DEF REAL HYS_NEG_EDGE ; input no. of gear wheel teeth ; hysteresis positive edge probe ; hysteresis negative edge probe ;********** Define code name for synchronization marker *********** define M_TEETH as $AC_MARKER[1] ; ID marker for calculation: neg/pos edge per tooth define Z_MW as $AC_MARKER[2] ; read out ID counter MW FIFO define Z_RW as $AC_MARKER[3] ; ID counter MW calculation tooth gaps E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 6-141 Synchronized Actions (FBSY) 6.6 "Centering" with continuous measurement 08.97 ;****** Input values for GEAR WHEEL MEASUREMENT ******* N50 NO.TEETH=26 ; input no. of gear wheel teeth to be measured N70 HYS_POS_EDGE = 0.160 ; hysteresis positive edge probe N80 HYS_NEG_EDGE = 0.140 ; hysteresis negative edge probe Start: R1=0 R2=0 R3=0 R4=0 R5=0 R6=1 R7=1 M_TEETH=NO.TEETH*2 Z_MW=0 Z_RW=2 R13=HYS_POS_EDGE R14=HYS_NEG_EDGE ;******* assign variables ************************ ; ID2 result of computation gap dimension ; ID2 result of computation addition of all gaps ; content of first element read in ; R4 corresponds to distance between teeth ; gap position calculated, end result ; activate ID 3 BACH with MOV ; activate ID 5 MEAC ; calculate ID neg./pos. edge per tooth ; read out ID counter MW FIFO until no. of teeth ; ID counter calculate difference in tooth gaps ; hysteresis in calc. register ; hysteresis in calc. register ;******* Traverse axis, measure, calculate ********** N100 MEAC[BACH]=(0) ; reset measuring job ;reset FIFO1[4] variables and ensure a defined measurement trace N105 $AC_FIFO1[4]=0 ; reset FIFO1 STOPRE ; ******* Read out FIFO until no. of teeth reached ***** ; if FIFO1 is not yet empty and not all teeth have been measured, relocate measured value from FIFO variable ; to synchronized action parameter and increase measured value counter ID=1 WHENEVER ($AC_FIFO1[4]>=1) AND (Z_MW=Z_RW) AND (Z_RW=M_TEETH) DO MEAC[BACH]=(0) ; abort measurement M00 STOPRE ; ******* Fetch FIFO values and store *** N400 R3=$AC_PARAM[0] ; content of first element to be read in ; reset FIFO1[4] variable and ensure ; a defined measurement trace for next measurement job N500 $AC_FIFO1[4]=0 ; ******* Calculate difference between individual teeth N510 R4=R2/(NO.TEETH)/1000 ; R4 corresponds to an average distance between teeth ; "/1000" division is omitted in later SW versions 6-142 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 08.97 Synchronized Actions (FBSY) 6.6 "Centering" with continuous measurement ; ******** Calculate center position ********** N520 R3=R3/1000 ; first measurement position converted to degrees N530 R3=R3 MOD 360 ; first measurement point modulo N540 R5=(R3--R14)+(R4/2) ; calculate gap position M00 stopre R6=0 ; deactivate rotation of BACH axis gotob start M30 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 6-143 Synchronized Actions (FBSY) 6.7 Axis couplings via synchronized actions 6.7 Axis couplings via synchronized actions 6.7.1 Coupling to master axis Task assignment 08.97 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 axes is activated/deactivated. %_N_KOP_SINUS_MPF N5 R1=1 N6 R2=1 N7 R5=36000 N8 STOPRE ; ID 1, 2 activate/deactivate coupling: LEADON (CACB, BACH) ; ID 3, 4 master axis movement on/off: MOV BACH ; BACH feed/min ; **** Define periodic table no. 4 by means of polynomial segments **** N10 CTABDEF (YGEO,XGEO,4,1) N16 G1 F1200 XGEO=0.000 YGEO=0.000 ; approach initial positions N17 POLY PO[XGEO]=(79.944,3.420,0.210) PO[YGEO]=(24.634,0.871,--9.670) N18 PO[XGEO]=(116.059,0.749,--0.656) PO[YGEO]=(22.429,--5.201,0.345) N19 PO[XGEO]=(243.941,--17.234,11.489) PO[YGEO]=(--22.429,--58.844,39.229) N20 PO[XGEO]=(280.056,1.220,--0.656) PO[YGEO]=(--24.634,4.165,0.345) N21 PO[XGEO]=(360.000,--4.050,0.210) PO[YGEO]=(0.000,28.139,--9.670) N22 CTABEND ; **** End of table definition***** ; Traverse master axis and coupled axis in rapid mode to basic setting N80 G0 BACH=0 CACH=0 ; Channel axis names N50 LEADOF(CACH,BACH) ; existing coupling OFF N235 ; ******* Activation of coupled motion for axis CACH ******* N240 WAITP(CACH) ; synchronize axis with channel N245 ID=1 EVERY $R1==1 DO LEADON(CACH, BACH, 4) ; couple by means of table 4 N250 ID=2 EVERY $R1==0 DO LEADOF(CACH, BACH) ; deactivate coupling N265 WAITP(BACH) N270 ID=3 EVERY $R2==1 DO MOV[BACH]=1 FA[BACH]=R5 ; turn master axis endlessly at feedrate in R5 N275 ID=4 EVERY $R2==0 DO MOV[BACH]=0 ; stop master axis N280 M00 N285 STOPRE N290 R1=0 N295 R2=0 N300 R5=180 N305 M30 6-144 ; deactivate coupling condition ; deactivate condition for master axis rotation ; new feedrate for BACH E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 10.00 08.97 6.7.2 Synchronized Actions (FBSY) 6.7 Axis couplings via synchronized actions Non-circular grinding via master value coupling Task assignment A non-circular workpiece that is rotating on axis CACH must be machined by grinding. The distance between the grinding wheel and workpiece is controlled by axis XACH and depends on the angle of rotation of the workpiece. The interrelationship between angles of rotation and assigned movements is defined in curve table 2. The workpiece must move at velocities that are determined by the workpiece contour defined in curve table 1. Solution CACH is designated as the master axis in a coupling. It controls -- the compensatory motion of axis XACH via table 2 and -- "software axis" CASW via table 1. The axis override of axis CACH is determined by the actual values of axis CASW, thus providing the required contour-dependent velocity of axis CACH. Grinding wheel (Section of) workpiece contour CACH XACH Fig. 6-5 Diagrammatic representation of non-circular contour grinding %_N_CURV_TABS_SPF PROC CURV_TABS N160 ; *************** Table 1 Define override ****** N165 CTABDEF(CASW,CACH,1,1) ; Periodic Table 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 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 6-145 Synchronized Actions (FBSY) 6.7 Axis couplings via synchronized actions 10.00 08.97 N160 ; **** Table 2 Define linear compensatory motion of XACH ****** CTABDEF(YGEO,XGEO,2,1) ; Periodic Table 2 N16 XGEO=0.000 YGEO=0.000 N16 XGEO=0.001 YGEO=0.000 N17 POLY PO[XGEO]=(116.000,0.024,0.012) PO[YGEO]=(4.251,0.067,--0.828) N18 PO[XGEO]=(244.000,0.072,--0.048) PO[YGEO]=(4.251,--2.937) N19 PO[XGEO]=(359.999,--0.060,0.012) PO[YGEO]=(0.000,--2.415,0.828) N16 XGEO=360.000 YGEO=0.000 N20 CTABEND M17 %_N_NONCIRC_MPF ; Coupled axis grouping for non-circular machining ; XACH is the infeed axis of the grinding wheel ; CACH is the workpiece axis as a rotary axis and master axis ; Application: Grind non-circular contour ; Table 1 mirrors the override for axis CACH as a function of the position of CACH ; Override of XGEO axis with handwheel infeed for scratching N100 DRFOF ; deselect handwheel override N200 MSG("select DRF, (handwheel 1 active) and select INCREMENT.== handwheel override ACTIVE") N300 M00 N500 MSG() ; reset message N600 R2=1 ; LEADON Table 2, activate with ID=3/4 CACH to XACH N700 R3=1 ; LEADON Table 1, activate with ID=5/6 CACH to CASW, override N800 R4=1 ; endlessly turning rotary axis CACH, start with ID=7/8 N900 R5=36000 ; FA[CACH] speed of endlessly turning rotary axis N1100 STOPRE N1200 ; ********* Set axes and master axis to following axis ******* ; Traverse master and following axes to initial positions N1300 G0 XGEO=0 CASW=10 CACH=0 N1400 LEADOF(XACH,CACH) ; coupling OFF XACH compensatory movement N1500 LEADOF(CASW,CACH) ; coupling OFF CASW override table N1600 CURV_TABS ; subprogram with definition of tables N1700 ; ******* activate LEADON compensatory motion XACH ******* N1800 WAITP(XGEO) ; synchronize axis with channel N1900 ID=3 EVERY $R2==1 DO LEADON(XACH,CACH,2) N2000 ID=4 EVERY $R2==0 DO LEADOF(XACH,CACH) N2100 ; ************ activate LEADON CASW override table **** N2200 WAITP(CASW) N2300 ID=5 EVERY $R3==1 DO LEADON(CASW,CACH,1) ; CTAB coupling ON master axis CACH N2400 ID=6 EVERY $R3==0 DO LEADOF(CASW,CACH) ; CTAB coupling OFF master axis CACH N2500 ; ** control CASH override from position CASW with ID 10 * N2700 ID=11 DO $$AA_OVR[CACH]=$AA_IM[CASW] ; assign "axis position" CASW to OVR CACH N2900 WAITP(CACH) N3000 ID=7 EVERY $R4==1 DO MOV[CACH]=1 FA[CACH]=R5 ; start as endlessly turning rotary axis N3100 ID=8 EVERY $R4==0 DO MOV[CACH]=0 ; stop as endlessly turning rotary axis N3200 STOPRE N3300 R90=$AA_COUP_ACT[CASW] ; status of coupling for CASW for checking N3400 MSG("activate CASW override table with LEADON "< DO LEADOF(XACH, CACH) LEADON(XACH, CACH, ) -- Dressing of grinding wheel by means of online tool offset acc. to Section 2.4.7. On-the-fly parting Task assignment An extruded material which passes continuously through the operating area of a cutting tool must be cut into parts of equal length. X axis: Axis in which the extruded material moves. WCS X1 axis: Machine axis of extruded material, MCS Y axis: Axis in which cutting tool "tracks" the extruded material For the purpose of this example, it is assumed that the cutting tool infeed is controlled via the PLC. The signals at the PLC interface can be evaluated to determine whether the extruded material and cutting tool are synchronized. Actions Activate coupling, LEADON Deactivate coupling, LEADOF Set actual values, PRESETON E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 6-147 10.00 08.97 Synchronized Actions (FBSY) 6.7 Axis couplings via synchronized actions NC program Remarks %_N_SCHERE1_MPF ; $PATH=/_N_WKS_DIR/_N_DEMOFBE_WPD N100 R3=1500 N200 R2=100000 R13=R2/300 N300 R4=100000 N400 R6=30 N500 R1=1 N600 LEADOF(Y,X) N700 CTABDEF(Y,X,1,0) N800 X=30 Y=30 N900 X=R13 Y=R13 N1000 X=2*R13 Y=30 N1100 CTABEND N1200 PRESETON(X1,0) N1300 Y=R6 G0 ; length of a part to be cut off ; start position Y axis ; start condition for belt axis ; delete any existing coupling ; table definition ; value pairs ; end of table definition ; PRESET at beginning ; Start pos. Y axis ; axis is linear N1400 ID=1 EVERY $AA_IW[X]>$R3 DO PRESETON(X1,0) ; PRESET after length R3, PRESTON only permitted with ; WHEN and EVERY ; new start after material parting N1500 WAITP(Y) N1800 ID=6 EVERY $AA_IM[X]<10 DO LEADON(Y,X,1) N1900 ID=10 EVERY $AA_IM[X]>$R3--30 DO LEADOF(Y,X) N2000 WAITP(X) N2100 ID=7 WHEN $R1==1 DO MOV[X]=1 FA[X]=$R4 N2200 M30 6-148 ; couple Y to X via Table 1 when X < 10 ; decouple when X > 30 from start of cutting length ; set extruded material axis continuously in motion E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Synchronized Actions (FBSY) 6.8 Technology cycles "Position spindle" 08.97 6.8 Technology cycles "Position spindle" Application Interacting with the PLC program, the spindle which initiates a tool change must be -- traversed to an initial position or -- positioned at a specific point at which the tool to be inserted is also located. Compare Sections 2.4.12, 2.6.1. Coordination Synchronized actions The PLC and NCK are coordinated by means of the common data that are provided in SW version 4 and later (see Section 2.3.8) -- $A_DBB[0] 1 traverse to initial position -- $A_DBB[1] 1 traverse to target position -- $A_DBW[1] Position value + / -- , PLC calculates the shortest route. %_N_MAIN_MPF ... IDS=1 EVERY $A_DBB[0]==1 DO NULL_POS IDS=2 EVERY $A_DBB[1]==1 DO ZIEL_POS ; if $A_DBB[0] is set by PLC, traverse to initial position ; if $A_DBB[1] is set by PLC, traverse spindle to ; position stored in $A_DBW[1] ... Technology cycle NULL_POS %_N_NULL_POS_SPF PROC NULL_POS SPOS=0 ; move drive for tool change into initial position $A_DBB[0]=0 ; initial position executed in NCK Technology cycle ZIEL_POS %_N_ZIEL_POS_SPF PROC TARGET_POS SPOS=IC($A_DBW[1]) $A_DBW[1] ; traverse spindle to position value that has been stored in $A_DBB[1]=0 ; target position executed in NCK ; by the PLC, incremental dimension E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 6-149 12.97 08.97 Synchronized Actions (FBSY) 6.9 Synchronized actions in the TCC/MC area 6.9 Synchronized actions in the TCC/MC area Introduction The following figure shows the schematic structure of a tool-changing cycle. Y Y "Z released" "Return tool" Level tool pockets WPX "Position magazine" "Fetch TOOL" WPY WPX WPY "Z clamped" ZP1Y "Intermediate point" (can be rounded) ZP1X VPY VPY VPX "Starting point" (Z clamped) VPX "Starting point" (Z released) Z Z X Fig. 6-6 6-150 Schematic sequence for tool-changing cycle E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 12.97 08.97 Synchronized Actions (FBSY) 6.9 Synchronized actions in the TCC/MC area Flowchart Start Tool change cycle in %MPF Block search active? (If $P_SEARCH GOTOF ..) Yes No Spindle positioning beyond block limit (SPOSA= or SPOSA[n]= ) Tool change 'M06' ('D1': activate tool offset) Read preset T number (GETSELT[] or GETSELT[..., n]) Read T number from spindle (ToolSpindle=$TC_MPP6[9998,m]) Change tool ('M06' <== MD 22560) Yes Preselected tool in SP? (If ToolSpindle==Toolcode GOTOF ..) No 'D1': activate tool offset Preselected T No. = 0? (If Toolcode==0 GOTOF ..) Yes No Return tool ('D0': deactivate tool offset) Yes No tool in spindle? (If ToolSpindle==0 GOTOF ..) Fetch tool ('D1': activate tool offset) No Return 1st tool / Fetch 2nd tool ('D1': activate tool offset) End Fig. 6-7 Flowchart for tool-changing cycle E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 6-151 12.97 08.97 Synchronized Actions (FBSY) 6.9 Synchronized actions in the TCC/MC area NC program Remarks %_N_WZW_SPF ;$PATH=/_N_SPF_DIR N10 DEF INT toolcode, ToolSpindle 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 to = 1 when MagAxis traversed N25 ID=4 WHENEVER $A_IN[10]==TRUE DO $AC_MARKER[2]=1 ; marker to = 1 when MagAxis traversed N30 IF $P_SEARCH GOTOF tcc_preprocessing ; block search active ? --> N35 SPOSA=0 D0 N40 GETSELT(toolcode) ; read preselected T No. N45 ToolSpindle=$TC_MPP6[9998,1] ; read tool in spindle N50 M06 N55 IF ToolSpindle==ToolCode GOTOF tool_in_spindle IF ToolCode==0 GOTOF return1 IF ToolSpindle==0 GOTOF fetch1 ;*****Fetch and return tool***** return1fetch1: N65 WHENEVER $AA_VACTM[C2]<>0 DO $AC_MARKER[1]=1 ; if MagAxis traverses marker = 1 N70 G01 G40 G53 G64 G90 X=magazine1VPX Y=magazine1VPY Z=magazine1Zclamped F70000 M=QU(120) M=QU(123) M=QU(9) N75 WHENEVER $AA_STAT[S1]<>4 DO $AC_OVR=0 ; spindle in position N80 WHENEVER $AA_VACTM[C2]<>0 DO $AC_MARKER[1]=1 ; magAxis traversing request N85 WHENEVER $AC_MARKER[1]==0 DO $AC_OVR=0 ; override=0 if axis not traversed N90 WHENEVER $AA_STAT[C2]<>4 DO $AC_OVR=0 ; override=0 if MagAxis not in pos. fine N95 WHENEVER $AA_DTEB[C2]>0 DO $AC_OVR=0 ; override=0 if distance-to-go MagAxis > 0 N100 G53 G64 X=magazine1ZP1X Y=magazine1ZP1Y F60000 N105 G53 G64 X=magazine1WPX Y=magazine1WPY F60000 N110 M20 ; release tool N115 G53 G64 Z=MR_magazine1Zreleased F40000 N120 WHENEVER $AA_VACTM[C2]<>0 DO $AC_MARKER[2]=1; N125 WHENEVER $AC_MARKER[2]==0 DO $AC_OVR=0 N130 WHENEVER $AA_STAT[C2]<>4 DO $AC_OVR=0 N135 WHENEVER $AA_DTEB[C2]>0 DO $AC_OVR=0 N140 G53 G64 Z=magazine1Zclamped F40000 N145 M18 ; clamp tool N150 WHEN $AC_PATHN<10 DO M=QU(150) M=QU(121) ; condition always satisfied N155 G53 G64 X=magazine1VPX Y=magazine1VPY F60000 D1 M17 ;*****Return tool***** return1: N160 WHENEVER $AA_VACTM[C2]<>0 DO $AC_MARKER[1]=1 N165 G01 G40 G53 G64 G90 X=magazine1VPX Y=magazine1VPY Z=magazine1Zclamped F70000 M=QU(120) M=QU(123) M=QU(9) N170 WHENEVER $AA_STAT[S1]<>4 DO $AC_OVR=0 N175 WHENEVER $AA_VACTM[C2]<>0 DO $AC_MARKER[1]=1 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=magazine1ZP1X Y=magazine1ZP1Y F60000 N200 G53 G64 X=magazine1WPX Y=magazine1WPY F60000 N205 M20 ; release tool N210 G53 G64 Z=magazine1Zreleased F40000 N215 G53 G64 X=magazine1VPX Y=magazine1VPY F60000 M=QU(150) M=QU(121) D0 M17 ;*****Fetch tool***** fetch1: N220 WHENEVER $AA_VACTM[C2]<>0 DO $AC_MARKER[2]=1 N225 G01 G40 G53 G64 G90 X=magazine1VPX Y=magazine1VPY Z=magazine1Zreleased F70000 M=QU(120) M=QU(123) M=QU(9) N230 G53 G64 X=magazine1WPX Y=magazine1WPY F60000 N235 WHENEVER $AA_STAT[S1]<>4 DO $AC_OVR=0 N240 WHENEVER $AA_VACTM[C2]<>0 DO $AC_MARKER[2]=1 N245 WHENEVER $AC_MARKER[2]==0 DO $AC_OVR=0 N250 WHENEVER $AA_STAT[C2]<>4 DO $AC_OVR=0 6-152 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 12.97 08.97 Synchronized Actions (FBSY) 6.9 Synchronized actions in the TCC/MC area N255 WHENEVER $AA_DTEB[C2]>0 DO $AC_OVR=0 N260 G53 G64 Z=magazine1Zclamped F40000 N265 M18 ; clamp tool N270 G53 G64 X=magazine1VPX Y=magazine1VPY F60000 M=QU(150) M=QU(121) D1 M17 ;*****Tool in spindle ***** tool_in_spindle: N275 M=QU(121) D1 M17 ;*****Block search***** tc_block search: N280 STOPRE N285 D0 N290 M06 N295 D1 M17 J E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 6-153 Synchronized Actions (FBSY) 6.9 Synchronized actions in the TCC/MC area 04.00 08.97 Notes 6-154 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 08.02 04.97 03.96 08.97 Synchronized Actions (FBSY) 7.1 Interface signals 7 Data Fields, Lists 7.1 Interface signals DB number Bit, byte Name Reference Channel-specific 21--30 280.1 Disable modal synchronized actions acc. to DBX 300.0--307.7 21--30 300.0 -- Disable modal synchronized actions acc. to DBX 300.0--307.7, acknowledgment from NCK 21--30 300.0 -- Modal synchronized actions ID or IDS 1 -- 21--30 307.7 21--30 308.0 -- 21--30 315.7 7.2 Disable 64. Request to NCK channel Modal synchronized actions ID or IDS 1 -64 can be disabled. Message from NCK. Machine data Number Identifier Name Reference General ($MN_ ... ) 11110 AUXFU_GROUP_SPEC Auxiliary function group specification 11500 PREVENT_SYNACT_LOCK Protected synchronized actions H2 Channel-specific ($MC_ ... ) 21240 PREVENT_SYNACT_LOCK_CHAN Protected synchronized actions for channel 28250 MM_NUM_SYNC_ELEMENTS Number of elements for expressions in synchronized actions 28252 MM_NUM_FCTDEF_ELEMENTS Number of FCTDEF elements 28254 MM_NUM_AC_PARAM Number of $AC_PARAM parameters 28255 MM_BUFFERED_AC_PARAM Storage location for $AC_PARAM (as of SW 6.3) 28256 MM_NUM_AC_MARKER Number of $AC_MARKER markers 28257 MM_BUFFERED_AC_MARKER Storage location for $AC_MARKER (as of SW 6.3) 28258 MM_NUM_AC_TIMER Number of $AC_TIMER time variables 28260 NUM_AC_FIFO Number of $AC_FIFO1, $AC_FIFO2, ... variables 28262 START_AC_FIFO Store FIFO variables from R parameter 28264 LEN_AC_FIFO Length of $AC_FIFO ... FIFO variables 28266 MODE_AC_FIFO FIFO processing mode E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 7-155 12.97 03.96 08.97 Synchronized Actions (FBSY) 7.3 Alarms Axis-specific ($MA_ ... ) 30450 IS_CONCURRENT_POS_AX Competing positioning axis P2 32060 POS_AX_VELO Initial setting for positioning axis velocity P2 32070 CORR_VELO Axis velocity for handwheel, ext. ZO, cont. dressing, clearance control (SW 3 and later) H1 32074 FRAME_OR_CORRPOS_NOTALLOWED Effectiveness of frames and tool length compensation 32920 AC_FILTER_TIME Filter smoothing time constant for Adaptive Control (SW2 and later) 36750 AA_OFF_MODE Effect of value assignment for axial override for synchronized actions (SW3 and later) 37200 COUPLE_POS_TOL_COARSE Threshold value for "Coarse synchronism" S3 37210 COUPLE_POS_TOL_FINE Threshold value for "Fine synchronism" S3 V1 Setting data ($SA_ ... ) 43300 ASSIGN_FEED_PER_REV_SOURCE Rotational feedrate for positioning axes/spindles 43350 AA_OFF_LIMIT Upper limit of offset value for $AA_OFF clearance control 43400 WORKAREA_PLUS_ENABLE Working area limitation in pos. direction 7.3 A3 Alarms Detailed explanations of alarms which may occur can be found in References: /DA/, "Diagnostics Guide" or in the online help on systems with MMC 101/102. J 7-156 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition A References General Documentation /BU/ SINUMERIK 840D/840Di/810D/802S, C, D Ordering Information Catalog NC 60 Order No.: E86060-K4460-A101-A9-7600 /IKPI/ Catalog IK PI 2000 Industrial Communication and Field Devices Order No. of bound edition: E86060--K6710-A101-A9-7600 Order No. of single-sheet edition: E86060-K6710-A100-A9-7600 /ST7/ SIMATIC SIMATIC S7 Programmable Logic Controllers Catalog ST 70 Order No.: E86 060-K4670-A111-A3-7600 /Z/ SINUMERIK, SIROTEC, SIMODRIVE Accessories and Equipment for Special-Purpose Machines Catalog NC Z Order No.: E86060-K4490-A001-A8-7600 Electronic Documentation /CD1/ The SINUMERIK System (11.02 Edition) DOC ON CD (includes all SINUMERIK 840D/840Di/810D/802 and SIMODRIVE publications) Order No.: 6FC5 298-6CA00-0BG3 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition A-157 11.02 08.97 Synchronized Actions (FBSY) A References User Documentation /AUK/ /AUP/ /BA/ /BAD/ /BEM/ /BAH/ /BAK/ /BAM/ /BAS/ /BAT/ A-158 SINUMERIK 840D/810D Short Guide AutoTurn Operation Order No.: 6FC5 298-4AA30-0BP2 SINUMERIK 840D/810D AutoTurn Graphic Programming System Programming/Setup Order No.: 6FC5 298-4AA40-0BP3 (09.99 Edition) (02.02 Edition) SINUMERIK 840D/810D Operator's Guide MMC Order No.: 6FC5 298-6AA00-0BP0 (10.00 Edition) SINUMERIK 840D/840Di/810D Operator's Guide HMI Advanced Order No.: 6FC5 298-6AF00-0BP2 (11.02 Edition) SINUMERIK 840D/810D Operator's Guide HMI Embedded Order No.: 6FC5 298-6AC00-0BP2 (11.02 Edition) SINUMERIK 840D/840Di/810D Operator's Guide HT 6 Order No.: 6FC5 298-0AD60-0BP2 (06.02 Edition) SINUMERIK 840D/840Di/810D Short Guide Operation Order No.: 6FC5 298-6AA10-0BP0 (02.01 Edition) SINUMERIK 840D/810D Operation/Programming ManualTurn Order No.: 6FC5 298-6AD00-0BP0 (08.02 Edition) SINUMERIK 840D/810D Operation/Programming ShopMill Order No.: 6FC5 298-6AD10-0BP1 (11.02 Edition) SINUMERIK 840D/810D Operation/Programming ShopTurn Order No.: 6FC5 298-6AD50-0BP2 (03.03 Edition) E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 11.02 08.97 Synchronized Actions (FBSY) A References /BNM/ /CAD/ /DA/ /KAM/ /KAS/ /KAT/ /PG/ /PGA/ /PGK/ /PGM/ /PGT/ SINUMERIK 840D/840Di/810D User's Guide Measuring Cycles Order No.: 6FC5 298-6AA70-0BP2 (11.02 Edition) SINUMERIK 840D/840Di/810D Operator's Guide CAD Reader Order No.: (included in online help) (03.02 Edition) SINUMERIK 840D/840Di/810D Diagnostics Guide Order No.: 6FC5 298-6AA20-0BP3 (11.02 Edition) SINUMERIK 840D/810D Short Guide ManualTurn Order No.: 6FC5 298-5AD40-0BP0 (04.01 Edition) SINUMERIK 840D/810D Short Guide ShopMill Order No.: 6FC5 298-5AD30-0BP0 (04.01 Edition) SINUMERIK 840D/810D Short Guide ShopTurn Order No.: 6FC5 298-6AF20-0BP0 (07.01 Edition) SINUMERIK 840D/840Di/810D Programming Guide Fundamentals Order No.: 6FC5 298-6AB00-0BP2 (11.02 Edition) SINUMERIK 840D/840Di/810D Programming Guide Advanced Order No.: 6FC5 298-6AB10-0BP2 (11.02 Edition) SINUMERIK 840D/840Di/810D Short Guide Programming Order No.: 6FC5 298-6AB30-0BP1 (02.01 Edition) SINUMERIK 840D/840Di/810D Programming Guide ISO Milling Order No.: 6FC5 298-6AC20-0BP2 (11.02 Edition) SINUMERIK 840D/840Di/810D Programming Guide ISO Turning Order No.: 6FC5 298-6AC10-0BP2 (11.02 Edition) E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition A-159 11.02 08.97 Synchronized Actions (FBSY) A References /PGZ/ SINUMERIK 840D/840Di/810D Programming Guide Cycles Order No.: 6FC5 298-6AB40-0BP2 (11.02 Edition) /PI/ PCIN 4.4 Software for Data Transfer to/from MMC Module Order No.: 6FX2 060 4AA00-4XB0 (English, French, German) Order from: WK Furth /SYI/ SINUMERIK 840Di System Overview Order No.: 6FC5 298-6AE40-0BP0 (02.01 Edition) Manufacturer/Service Documentation a) Lists /LIS/ SINUMERIK 840D/840Di/810D SIMODRIVE 611D Lists Order No.: 6FC5 297-6AB70-0BP3 (11.02 Edition) b) Hardware /BH/ /BHA/ /EMV/ /GHA/ A-160 SINUMERIK 840D/840Di/810D Operator Components Manual (HW) Order No.: 6FC5 297-6AA50-0BP2 SIMODRIVE Sensor Absolute Position Sensor with PROFIBUS DP User's Guide (HW) Order No.: 6SN1197-0AB10-0YP1 SINUMERIK, SIROTEC, SIMODRIVE EMC Installation Guide Planning Guide (HW) Order No.: 6FC5 297-0AD30-0BP1 ADI4 -- Analog Drive Interface for 4 Axes Manual Order No.: 6FC5 297-0BA01-0BP0 (11.02 Edition) (02.99 Edition) (06.99 Edition) (09.02 Edition) E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 11.02 08.97 Synchronized Actions (FBSY) A References /PHC/ /PHD/ /PMH/ SINUMERIK 810D Configuring Manual (HW) Order No.: 6FC5 297-6AD10-0BP0 (03.02 Edition) SINUMERIK 840D Configuring Manual NCU 561.2-573.4 (HW) Order No.: 6FC5 297-6AC10-0BP2 (10.02 Edition) SIMODRIVE Sensor Hollow-Shaft Measuring System SIMAG H Configuring/Installation Guide (HW) Order No.: 6SN1197-0AB30-0BP1 (07.02 Edition) c) Software /FB1/ SINUMERIK 840D/840Di/810D Description of Functions, Basic Machine (Part 1) (the various sections are listed below) Order No.: 6FC5 297-6AC20-0BP2 A2 A3 B1 B2 D1 D2 F1 G2 H2 K1 K2 K4 N2 P1 P3 R1 S1 V1 W1 /FB2/ Various Interface Signals Axis Monitoring, Protection Zones Continuous Path Mode, Exact Stop and LookAhead Acceleration Diagnostic Tools Interactive Programming Travel to Fixed Stop Velocities, Setpoint/Actual-Value Systems, Closed-Loop Control Output of Auxiliary Functions to PLC Mode Group, Channel, Program Operation Mode Axes, Coordinate Systems, Frames, Actual-Value System for Workpiece, Work Offset External Communication EMERGENCY STOP Transverse Axes Basic PLC Program Reference Point Approach Spindles Feeds Tool Offset SINUMERIK 840D/840Di/810D(CCU2) Description of Functions, Extended Functions (Part 2) including FM-NC: Turning, Stepper Motor (the various sections are listed below) Order No.: 6FC5 297-6AC30-0BP2 A4 B3 B4 F3 H1 K3 (11.02 Edition) (11.02 Edition) Digital and Analog NCK I/Os Several Operator Panels and NCUs Operation via PG/PC Remote Diagnostics JOG with/without Handwheel Compensations E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition A-161 11.02 08.97 Synchronized Actions (FBSY) A References K5 L1 M1 M5 N3 N4 P2 P5 R2 S3 S5 S6 S7 T1 W3 W4 /FB3/ SINUMERIK 840D/840Di/810D(CCU2) Description of Functions, Special Functions (Part 3) (the various sections are listed below) Order No.: 6FC5 297-6AC80-0BP2 F2 G1 G3 K6 M3 S8 T3 TE0 TE1 TE2 TE3 TE4 TE5 TE6 TE7 TE8 V2 W5 /FBA/ DS1 DU1 (11.02 Edition) 3-Axis to 5-Axis Transformation Gantry Axes Cycle Times Contour Tunnel Monitoring Coupled Motion and Leading Value Coupling Constant Workpiece Speed for Centerless Grinding Tangential Control Installation and Activation of Compile Cycles Clearance Control Analog Axis Master-Slave for Drives Transformation Package Handling Setpoint Exchange MCS Coupling Retrace Support Path-Synchronous Switch Signal Preprocessing 3D Tool Radius Compensation SIMODRIVE 611D/SINUMERIK 840D/810D Description of Functions Drive Functions (the various sections are listed below) Order No.: 6SN1 197-0AA80-0BP9 DB1 DD1 DD2 DE1 DF1 DG1 DL1 DM1 A-162 Mode Groups, Channels, Axis Replacement FM-NC Local Bus Kinematic Transformation Measurement Software Cams, Position Switching Signals Punching and Nibbling Positioning Axes Oscillation Rotary Axes Synchronous Spindles Synchronized Actions (up to and including SW 3) Stepper Motor Control Memory Configuration Indexing Axes Tool Change Grinding (11.02 Edition) Operational Messages/Alarm Reactions Diagnostic Functions Speed Control Loop Extended Drive Functions Enable Commands Encoder Parameterization Linear Motor MD Calculation of Motor/Power Section Parameters and Controller Data Current Control Loop Monitors/Limitations E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 11.02 08.97 Synchronized Actions (FBSY) A References /FBAN/ /FBD/ SINUMERIK 840D/SIMODRIVE 611 digital Description of Functions ANA MODULE Order No.: 6SN1 197-0AB80-0BP0 SINUMERIK 840D Description of Functions Digitizing Order No.: 6FC5 297-4AC50-0BP0 DI1 DI2 DI3 DI4 /FBDN/ /FBDT/ /FBFA/ /FBFE/ /FBH/ /FBMA/ (07.99 Edition) Start-up Scanning with Tactile Sensors (scancad scan) Scanning with Lasers (scancad laser) Milling Program Generation (scancad mill) IT Solutions System for NC Data Management and Data Distribution (DNC NT-2000) Description of Functions Order No.: 6FC5 297-5AE50-0BP2 (01.02 Edition) SINUMERIK 840D/810D IT Solutions SinDNC NC Data Transfer via Network Description of Functions Order No.: 6FC5 297-5AE70-0BP0 (09.02 Edition) SINUMERIK 840D/840Di/810D Description of Functions ISO Dialects for SINUMERIK Order No.: 6FC5 297-6AE10-0BP2 (11.02 Edition) SINUMERIK 840D/840Di/810D Description of Functions Remote Diagnosis Order No.: 6FC5 297-0AF00-0BP2 (11.02 Edition) SINUMERIK 840D/840Di/810D HMI Configuring Package Order No.: (supplied with the software) (11.02 Edition) Part 1 Part 2 /FBHLA/ (02.00 Edition) User's Guide Description of Functions SINUMERIK 840D/SIMODRIVE 611 digital Description of Functions HLA Module Order No.: 6SN1 197-0AB60-0BP2 (04.00 Edition) SINUMERIK 840D/810D Description of Functions ManualTurn Order No.: 6FC5 297-6AD50-0BP0 (08.02 Edition) E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition A-163 11.02 08.97 Synchronized Actions (FBSY) A References /FBO/ SINUMERIK 840D/810D Configuring OP 030 Operator Interface Description of Functions Order No.: 6FC5 297-6AC40-0BP0 BA EU PS PSE IK /FBP/ /FBR/ Operator's Guide Development Environment (Configuring Package) Online only: Configuring Syntax (Configuring Package) Introduction to Configuring of Operator Interface Screen Kit: Software Update and Configuration SINUMERIK 840D Description of Functions C-PLC Programming Order No.: 6FC5 297-3AB60-0BP0 SINUMERIK 840D/810D IT Solutions Description of Functions Computer Link (SinCOM) Order No.: 6FC5 297-6AD60-0BP0 NFL NPL (09.01 Edition) (03.96 Edition) (09.01 Edition) Host Computer Interface PLC/NCK Interface /FBSI/ SINUMERIK 840D / SIMODRIVE 611 digital (09.02 Edition) Description of Functions SINUMERIK Safety Integrated Order No.: 6FC5 297-6AB80-0BP1 /FBSP/ SINUMERIK 840D/810D Description of Functions ShopMill Order No.: 6FC5 297-6AD80-0BP1 (11.02 Edition) /FBST/ SIMATIC Description of Functions FM STEPDRIVE/SIMOSTEP Order No.: 6SN1 197-0AA70-0YP4 /FBSY/ SINUMERIK 840D/840Di/810D Description of Functions Synchronized Actions Order No.: 6FC5 297-6AD40-0BP2 (10.02 Edition) SINUMERIK 840D/810D Description of Functions ShopTurn Order No.: 6FC5 297-6AD70-0BP2 (03.03 Edition) SINUMERIK 840D/810D IT Solutions SINUMERIK Tool Data Communication SinTDC Description of Functions Order No.: 6FC5 297-5AF30-0BP0 (01.02 Edition) /FBT/ /FBTC/ A-164 (01.01 Edition) E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 11.02 08.97 Synchronized Actions (FBSY) A References /FBTD/ SINUMERIK 840D/810D IT Solutions Tool Information System (SinTDI) with Online Help Description of Functions Order No.: 6FC5 297-6AE00-0BP0 (02.01 Edition) /FBU/ SIMODRIVE 611 universal/universal E Closed-Loop Control Component for Speed Control and Positioning Description of Functions (02.02 Edition) Order No.: 6SN1 197-0AB20-0BP5 /FBW/ SINUMERIK 840D/840Di/810D Description of Functions Tool Management Order No.: 6FC5 297-6AC60-0BP1 (10.02 Edition) /FBWI/ SINUMERIK 840D/840Di/810D Description of Functions WinTPM (02.02 Edition) Order No.: The document is an integral part of the software /HBA/ SINUMERIK 840D/840Di/810D Manual @Event Order No.: 6AU1900-0CL20-0AA0 (03.02 Edition) SINUMERIK 840Di Manual Order No.: 6FC5 297-6AE60-0BP1 (09.02 Edition) /HBI/ /INC/ SINUMERIK 840D/840Di/810D Commissioning Tool SINUMERIK SinuCOM NC (02.02 Edition) System Description Order No.: (an integral part of the online help for the start-up tool) /PAP/ SIMODRIVE Sensor Absolute Encoder with PROFIBUS DP User's Guide Order No.: 6SN1197--0AB10--0YP1 /PFK/ SIMODRIVE Planning Guide 1FT5, 1FT6, 1FK6 Motors AC servo motors for feed and main spindle drives Order No.: 6SN1 197-0AC20-0BP0 (02.99 Edition) (12.01 Edition) E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition A-165 11.02 08.97 Synchronized Actions (FBSY) A References /PJE/ SINUMERIK 840D/810D Configuring Package HMI Embedded (08.01 Edition) Description of Functions: Software Update, Configuration Installation Order No.: 6FC5 297-6EA10-0BP0 (the document PS Configuring Syntax is supplied with the software and available as a pdf file) /PJFE/ SIMODRIVE Planning Guide 1FE1 Built-In Synchronous Motors Three-Phase AC Motors for Main Spindle Drives Order No.: 6SN1 197-0AC00-0BP1 (09.01 Edition) /PJLM/ SIMODRIVE Planning Guide 1FN1, 1FN3 Linear Motors (11.01 Edition) ALL General Information about Linear Motors 1FN1 1FN1 Three-Phase AC Linear Motor 1FN3 1FN3 Three-Phase AC Linear Motor CON Connections Order No.: 6SN1 197-0AB70-0BP2 /PJM/ SIMODRIVE Planning Guide Motors (11.00 Edition) Three-Phase AC Motors for Feed and Main Spindle Drives Order No.: 6SN1 197-0AA20-0BP5 /PJTM/ SIMODRIVE Planning Guide Integrated Torque Motors 1FW6 Order No.: 6SN1 197--0AD00--0BP0 (08.02 Edition) SIMODRIVE 611 Planning Guide Inverters Order No.: 6SN1 197-0AA00-0BP5 (05.01 Edition) /PJU/ /PMS/ SIMODRIVE (04.02 Edition) Planning Guide ECO Motor Spindle for Main Spindle Drives Order No.: 6SN1 197-0AD04-0BP0 /POS1/ SIMODRIVE POSMO A (08.02 Edition) Distributed Positioning Motor on PROFIBUS DP, User's Guide Order No.: 6SN2197-0AA00-0BP3 /POS2/ SIMODRIVE POSMO A Installation Instructions (enclosed with POSMO A) /POS3/ SIMODRIVE POSMO SI/CD/CA Distributed Servo Drive Systems, User's Guide Order No.: 6SN2197-0AA20-0BP3 A-166 (08.02 Edition) E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 11.02 08.97 Synchronized Actions (FBSY) A References /PPH/ /PPM/ SIMODRIVE Planning Guide Motors 1PH2, 1PH4, 1PH7 AC Induction Motors for Main Spindle Drives Order No.: 6SN1 197-0AC60-0BP0 SIMODRIVE Planning Guide Hollow-Shaft Motors for 1PM4 and 1PM6 Main Spindle Drives Order No.: 6SN1 197-0AD03-0BP0 (12.01 Edition) (10.01 Edition) /S7H/ SIMATIC S7--300 -- Manual: CPU Data (Hardware) -- Reference Manual: Module Data -- Manual: Technological Functions -- Installation Manual Order No.: 6ES7 398-8FA10-8BA0 (2002 Edition) /S7HT/ SIMATIC S7--300 Manual STEP7, Fundamentals, V. 3.1 Order No.: 6ES7 810-4CA02-8BA0 (03.97 Edition) /S7HR/ SIMATIC S7--300 Manual STEP7, Reference Manuals, V. 3.1 Order No.: 6ES7 810-4CA02-8BR0 (03.97 Edition) /S7S/ SIMATIC S7--300 FM 353 Positioning Module for Stepper Drive Order together with configuring package (04.97 Edition) /S7L/ SIMATIC S7--300 FM 354 Positioning Module for Servo Drive Order together with configuring package (04.97 Edition) /S7M/ SIMATIC S7--300 FM 357.2 Multimodule for Servo and Stepper Drives Order together with configuring package (01.01 Edition) /SP/ SIMODRIVE 611--A/611--D, SimoPro 3.1 Program for Configuring Machine-Tool Drives Order No.: 6SC6 111-6PC00-0AAj, Order from: WK Furth E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition A-167 11.02 08.97 Synchronized Actions (FBSY) A References d) Installation and Start-Up /IAA/ SIMODRIVE 611A Installation and Start-Up Guide Order No.: 6SN 1197-0AA60-0BP6 (10.00 Edition) /IAC/ SINUMERIK 810D Installation and Start-Up Guide (03.02 Edition) (incl. description of SIMODRIVE 611D start-up software) Order No.: 6FC5 297-6AD20-0BP0 /IAD/ SINUMERIK 840D/SIMODRIVE 611D Installation and Start-Up Guide (11.02 Edition) (incl. description of SIMODRIVE 611D start-up software) Order No.: 6FC5 297-6AB10-0BP2 /IAM/ SINUMERIK 840D/840Di/810D HMI/MMC Installation and Start-Up Guide Order No.: 6FC5 297-6AE20-0BP2 AE1 BE1 HE1 IM2 IM4 TX1 (11.02 Edition) Updates/Supplements Expanding the Operator Interface Online Help Starting up HMI Embedded Starting up HMI Advanced Creating Foreign Language Texts J A-168 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 09.01 11.02 08.97 Synchronized Actions (FBSY) Index E Symbols End of program, 2-112 Extensions in SW 5, 3-122 $AA_OFF, 1-76 F A AA_OFF_LIMIT, MD 43350, 4-130 AC_FILTER_TIME, MD 32920, 4-129 Adaptive Control, 6-136 Additive control, 2-71 Example, 6-137 Multiplicative control, 2-72 Axial feed, 2-85 B Block search, 2-113 C Calculate master value, 2-92 Calculate slave value, 2-92 Change in operating mode, 2-111 Command axes, 2-82 Configurability, 2-115 Configuring, 2-115 Control system response, 2-110 Coordination, 2-103 CORR_VELO, MD 32070, 4-128 CORROF, 1-77 Coupled axes, 2-91 Couplings, 2-91 D Detection of synchronism, 2-93 Diagnostics, 2-117 FCTDEF, 2-69 FIFO variables, 2-33 FRAME_OR_CORRPOS_NOTALLOWED, MD 32074, 4-129 FTOC, Online tool offset, 2-78 G General machine data, 4-123 I ID number, 2-15 Identification number, 2-16 IS_CONCURRENT_POS_AX, MD 30450, 4-128 L LEN_AC_FIFO, MD 28264, 4-126 M Measurements from synchronized actions, 2-94 MM_NUM_AC_MARKER, MD 28256, 4-125 MM_NUM_AC_PARAM, MD 28254, 4-125 MM_NUM_AC_TIMER, MD 28258, 4-126 MM_NUM_FCTDEF_ELEMENTS, MD 28252, 4-125 MM_NUM_SYNC_ELEMENTS, MD 28250, 4-124 MODE_AC_FIFO, MD 28266, 4-127 Motion synchronous actions, Detailed description, 2-15 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Index-169 Synchronized Actions (FBSY) N NC STOP, 2-111 NUM_AC_FIFO, MD 28260, 4-126 O Online tool offset, 2-78 Output of M, S and H auxiliary functions, 2-65 Overlaid movements, 2-76 Overlaid movements up to SW 5.3, 2-76 P Polynomial evaluation, 2-71 Polynomials, 2-69 Power On, 2-110 PREVENT_SYNACT_LOCK, MD 11500, 4-123 PREVENT_SYNACT_LOCK_CHAN, MD 21240, 4-124 Program interruption by ASUB, 2-113 Protected synchronized actions, 2-107 R Real--time variables, 2-23 Reading, 2-67 Writing, 2-67 Real-time variables Display, 2-118 Log, 2-119 Regulate velocity continuously, 6-139 REPOS, 2-113 RESET, 2-110 Response to alarms, 2-114 S Setting actual values, 2-90 Setting alarm, 2-99 Special real--time variables, 2-29 Spindle motions, 2-86 START_AC_FIFO, MD 28262, 4-126 Index-170 09.01 08.97 Status of synchronized actions, 2-118 Supplementary conditions, 3-121 Synchronization procedure, DELDTG, 2-80 Synchronized action parameters, 2-31 Synchronized actions Actions, 2-19, 2-22, 2-63 Additive adjustment via SYNFCT, 2-71 Alter setting data, 2-68 Availability, 3-121 Components, 2-15 Conditions, 2-18 Control, 2-105 Control via PLC, 2-105 Definition, 2-21 Deletion, 2-17 Detailed description, 2-15 Disable axis, 2-82 Example: AC control, 6-136 Example: Conditions, 6-133 Example: Control via dyn. override, 6-139 Example: Feed control, 6-137 Example: Presses, coupled axes, 6-144 Examples: SD / MD, 6-134 Execution of synchronized actions, 2-21 Extensions in SW 4, 3-121 FIFO variables, 2-33 Introduction, 1-13 Machine and setting data, 2-32 Marker and counter variables, 2-29 Multiplicative control via SYNFCT, 2-72 Processing, 2-19 Processing sequence, 2-20 R parameters, 2-32 Real--time calculations, 2-23 Scanning frequency, 2-17 Scope of performance, 3-121 Scope of validity, 2-15 Short Description of Functions, 1-13 Timers, 2-30 Synchronous procedure RDISABLE, 2-80 STOPREOF, 2-80 SYNFCT Examples, 6-136 Polynomial evaluation, 2-71 System variables SW version 4, Synchronized actions, 2-37 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition 09.01 08.97 Synchronized Actions (FBSY) T W Technology cycle, 2-100 Technology cycles, 2-100 Call, 2-100 Wait markers Deletion, 2-98 Setting, 2-98 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition Index-171 Synchronized Actions (FBSY) 09.01 08.97 Notes Index-172 E Siemens AG 2002. All rights reserved SINUMERIK 840D/840Di/810D Descrip. of Functions Synchronized Actions (FBSY) -- 11.02 Edition To SIEMENS AG A&D MC BMS P.O. Box 3180 Suggestions Corrections For publication/manual: D--91050 Erlangen, Germany (Tel. +49 (0) 180 5050 -- 222 [hotline] Fax +49 (0) 9131 98 -- 2176 [documentation] E--mail: motioncontrol.docu@erlf.siemens.de) SINUMERIK 840D/840Di/810D Description of Functions Synchronized Actions Manufacturer/Service Documentation Description of Functions From Order No.: Edition: Name 6FC5 297--6AD40--0BP2 11.02 Company/Dept. Should you come across any printing errors when reading this publication, please notify us on this sheet. Suggestions for improvement are also welcome. Address Phone: / Fax: / Suggestions and/or corrections Overview of SINUMERIK 840D/840Di/810D Documentation (11.02) General Documentation SINUMERIK SINUMERIK 840D/810D 840D/840Di/ 810D/ Brochure Catalog Ordering Info. NC 60 *) User Documentation SINUMERIK SIROTEC SIMODRIVE Accessories Catalog Accessories NC-Z User Documentation SINUMERIK SINUMERIK 840D/840Di/ 810D 840D/810D Program. Guide -- Short Guide -- Fundamentals *) -- Advanced *) -- Cycles -- Measuring Cycles -- ISO Turning/Milling SINUMERIK SINUMERIK SINUMERIK SINUMERIK 840D/810D/ FM-NC 840D/840Di/ 810D 840D/840Di/ 810D 840D/840Di/ 810D AutoTurn -- Short Guide -- Programming (1) -- Setup (2) Operator's Guide - HT 6 Diagnostics Guide *) Operator's Guide *) -- Short Guide -- HMI Embedded -- HMI Advanced Manufacturer/Service Documentation SINUMERIK SINUMERIK 840Di Operator's Guide System Overview -- ManualTurn -- Short Guide ManualTurn -- ShopMill -- Short Guide ShopMill -- ShopTurn -- Short Guide ShopTurn Configuring (HW) *) -- 810D -- 840D SINUMERIK SINUMERIK SINUMERIK 840D/840Di/ 810D 840D/810D 840D/840Di/ 810D Operator Components (HW) *) Description of Functions - ManualTurn - ShopMill - ShopTurn Description of Functions Synchronized Actions Manufacturer/Service Documentation SINUMERIK SIMODRIVE SINUMERIK SINUMERIK SINUMERIK SINUMERIK 611D 840D/810D 840D/840Di/ 810D 840D/840Di/ 810D 840D/810D 840D/810D Description of Description of Functions Functions Drive Functions *) -- Basic Machine *) -- Extended Functions -- Special Functions Description of Functions Tool Management Configuring Kit HMI Embedded Description of Functions Operator Interface OP 030 SINUMERIK 840D/840Di/ 810D IT Solutions - Computer Link - Tool Data Information System - NC Data Management - NC Data Transfer Manufacturer/Service Documentation SINUMERIK SIMODRIVE SINUMERIK SINUMERIK SIMODRIVE 840D Description of Functions SINUMERIK Safety Integrated Description of Functions Digitizing Installation & Start-up Guide *) -- 810D -- 840D/611D -- HMI Electronic Documentation SINUMERIK SIMODRIVE 840D/840Di 810D 611D Lists *) SINUMERIK SIMODRIVE 840D 611D Description of Functions Linear Motor Description of EMC Functions Guidelines - Hydraulics Module - Analog Module Manufacturer/Service Documentation SINUMERIK SIMODRIVE 840D/840Di/ 810D 611, Motors SINUMERIK 840D/840Di/ 810D SINUMERIK 840Di SINUMERIK 840D/810D DOC ON CD *) The SINUMERIK System *) These documents are a minimum requirement Description of Functions ISO Dialects for SINUMERIK SINUMERIK SIMODRIVE SIROTEC SINUMERIK SIMODRIVE 840D 611D Manual (HW + Installation and Start-up) Description of Functions Remote Diagnosis Siemens AG Automation and Drives Motion Control Systems Postfach 3180, D - 91050 Erlangen Fed. Rep. of Germany www.ad.siemens.de E Siemens AG 2002 Subject to changes without prior notice Ref.: 6FC5297--6AD40--0BP2 Printed in the Fed. Rep. of Germany