840D FBSY 1102 en
840D FBSY 1102 en
840D FBSY 1102 en
Synchronized Actions
SINUMERIK 840D/840Di/810D
Brief Description 1
Detailed Description 2
Supplementary Conditions 3
Data Descriptions 4
SINUMERIK 840D/840Di/810D Signal Descriptions 5
References A
Index B
Valid for
11.2002 Edition
SINUMERIKr Documentation
3ls
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.
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
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: Other functions not described in this documentation might be
http://www.ad.siemens.de/sinumerik 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
We have checked that the contents of this document correspond to
The reproduction, transmission or use of this document or its the hardware and software described. Nonetheless, differences might
contents is not permitted without express written authority. Offenders still exist. The information contained in this document is, however,
will be liable for damages. All rights, including rights created by patent reviewed regularly and any necessary changes will be included in the
grant or registration of a utility model or design, are reserved. next edition. We welcome suggestions for improvement.
E Subject to technical changes without prior notice.
Siemens AG 1994 -- 2002 All rights reserved.
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 appli-
cable 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 func-
tions when the equipment is first supplied or for service cases.
Hotline If you have questions about the control, please contact the hotline:
Aims and This document describes the Synchronized Actions function for SINUMERIK
objectives 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
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
Software version 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 indi-
cated specifically. Equivalents are as follows:
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 dam-
age will occur if the appropriate precautions are not taken.
Warning
! This symbol indicates that death, grievous injury or substantial property dam-
age 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.
Important
! This symbol always appears in the documentation when important information
is being conveyed.
Notice
Additional facts are referred to.
Contents
Notes
Brief Description 1
Definition Motion-synchronous actions (or “Synchronized actions” for short) are instruc-
of synchronized tions programmed by the user which are evaluated in the interpolation cycle of
actions 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 remain-
der 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.
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”
Detailed Description 2
Structure of a
synchronized
action
Component: Validity, Frequency G code Condition Action G code Action or
identifica- for code for technology
tion number cond. and word action cycle See
action (fixed) 2.5
Example: IDS=1 EVERY G70 $AAA_IM[B] > 15 DO G71 POS[X]=100
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, There are three possible methods by which the scope of validity of a
ID number synchronized action can be defined, i.e.:
S No status
S ID
S IDS
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.
IDS 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 For modal synchronized actions (ID, IDS) identification numbers between 1 and
numbers 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.
Notice
The following actions are operative only in AUTOMATIC mode when the
program is running:
STOPREOF,
DELDTG
Frequency 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.
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/tech-
nology 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.
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 In SW 5 and later, G codes can be programmed in synchronized actions. This
condition and allows defined settings to exist for the evaluation of the condition and the action/
action technology cycle to be executed, independent of the current part program sta-
tus. It is necessary to separate the synchronized actions from the program envi-
ronment, 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.
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.
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:
Notice
G code for the The G code may specify a different G code from the condition for all actions in
action 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 ful-
filled. If several actions are programmed in one synchronized action, they are
executed within the same interpolation cycle.
Example: 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.
Program/ A program (name) can also be specified as an action. This program may con-
technology cycle tain 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.
N5 block1
N10 block2
N15 ID=1 block1’
N20 block4
N25 block5 block2’
... [ -- ]
block4’
block5’
Program ...
preprocessing
Actions, Setpoints
technology cycles
Deletion
Processing of The check on synchronized actions to determine whether they contain actions
synchronized to be activated is carried out in the interpolation cycle.
actions Action(s) are executed in synchronism with path control if the preconditions pro-
grammed on the left of the action(s) are fulfilled.
Processing Modally active synchronized action instructions are processed in order of their
sequence 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.
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
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 The term “Real--time expression” refers below to all calculations that can be
application carried out in the interpolation cycle. Real--time expressions are used in condi-
tions and in assignments to NC addresses and variables.
Real--time All real--time variables are evaluated (read) at interpolation cycle and
variables can be written as part of an action.
Real--time variable Real--time variables are all variables that begin with:
identifiers $A... (main run variable) or
$V... (servo values).
To identify these variables unambiguously, they can be programmed in syn-
chronized 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 opera-
tion 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 lan-
guage, calculations are performed in the data type of the real--time variables
involved.
... DO $R10 = $AC_PARAM[0] ; admissible: REAL, REAL
... DO $R10 = $AC_MARKER[0] ; 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
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 com-
pared in real time.
Conversion There is not implicit type conversion from REAL to INT and vice versa for syn-
routines (SW 5.2) chronized actions. However, the user may explicitly call two conversion routi-
nes RTOI( ) and ITOR( ) for type conversion. The functions can be called
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 “Motion-
synchronous 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 con- In SW 6.4 and later, variables of various data types can be assigned to one an-
version (SW 6.4) other 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 con-
version 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] : 561
Basic arithmetic Real--time variables of the REAL and INT type can be linked logically by the
operations 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.
Priority of In order to produce the desired logical result in multiple expressions, the
operators 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: /PG/, Programming Guide
/PGA/ Programming Guide Advanced
Indexing 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.
Restrictions:
-- It is not permissible to nest indexes with real--time variables.
-- A real--time index cannot be generated by a variable that is not genera-
ted itself in real time. The following programming would lead to errors:
$AC_PARAM[1]=$P_EP[$AC_MARKER[0]]
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 Special real--time variables, i.e. timers, R parameters, machine and setting data
and FIFO variables are available from SW 4.
Also as of As of software release 6.3, it is possible to select the memory location for
SW 6.3 $AC_MARKER[n] between DRAM and SRAM using
MD 28257: MM_BUFFERED_AC_MARKER.
0: dynamic memory DRAM, (default)
1: 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
2.3.2 Timers
Stopping timer Incrementation of a timer variable is stopped through the assignment of a nega-
tive 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
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 syn-
chronized actions.
Also as of As of software release 6.3, it is possible to select the memory location for
SW 6.3 $AC_PARAM[n] between DRAM and SRAM using
MD 28255: MM_BUFFERED_AC_PARAM.
0: dynamic memory DRAM, (default)
1: 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
2.3.4 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 By programming the $ sign in front of R parameters, they can also be used in
synchronized synchronized actions.
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
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:
Reading invariable Machine and setting data whose settings do not vary are addressed from syn-
MD, SD chronized 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: /FB/, P5, Oscillation
Reading variable Machine data and setting data whose values may change during machining are
MD, SD 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.
Application Up to 10 FIFO variables are provided to allow storage of related data se-
quences: $AC_FIFO1[n] to $AC_FIFO10[n] .
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.
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
$AC_FIFO1[0]
$AC_FIFO1[4]
Number: 4
$AC_FIFO1[5] Current write index: 10
$AC_FIFO1[6] 10.3
$AC_FIFO1[7] 17.8563
$AC_FIFO1[8] 17.8500
$AC_FIFO1[9] 12.5
$AC_FIFO1[11]
$AC_FIFO1[12] xxxxxx
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: /IAD/, Installation and Start--Up Guide
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 Read
w Write
R Read with implicit preprocessor stop
W Write with implicit preprocessor stop
PP Part program
SA Synchronized action
SW 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.
User variables
R parameters
System data
Tool data
G groups
Channel statuses
ASUBs
Inputs/outputs
Link variables
Direct PLC_IO
Tool management
References: /FBW/, Tool Management
Timers
Path motion
Velocities,
channel--specific
Spindle data
Channel statuses
Positions
Indexing axes
Encoder values
Axial measurement
Offsets
Axial paths
Oscillation
Velocities,
axis--specific
Drive data
Axis states
Electronic gear 1
Synchronous spindle
Safety Integrated 1
Electronic gear 2
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 The following actions can be programmed in the “Action” section of
actions synchronized actions:
For general information about auxiliary function outputs, please refer to:
References: /FB/, H2, “Output of Auxiliary Functions to PLC”
Machining sequence
M07
10 20
10 20
Output of auxiliary M, S or H auxiliary functions can be output to the PLC as a synchronized action.
functions to PLC 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.
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 pro-
cessed until all auxiliary functions in the preceding block have been acknowl-
edged by the PLC.
Writing The real--time variables marked with a + sign for access “Write from synchro-
nized actions” in the list in Section 2.3.8 can be written in actions contained in
synchronized actions.
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 remain-
der 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 ; set machine data
... DO $$SA_OSCILL_REVERSE_POS1 = 10 ; set setting data
... DO $A_OUT[1]=1 ; set digital output
... DO $A_OUTA[1]= 25 ; set analog value
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 ... ; read distance from block end in
condition
DO $R5= $A_INA[2] ; read value of analog input 2 and
assign arithmetic variable
Introduction The “Software cams” function allows position--dependent cam signals to be out-
put to the PLC or NCK I/Os.
References: /FB/, N3, Software Cams, Position Switching Signals
Function 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] ; Positions of minus cams
$$SN_SW_CAM_MINUS_POS_TAB_2[0..7] ; Positions of minus cams
$$SN_SW_CAM_PLUS_POS_TAB_1[0..7] ; Positions of plus cams
$$SN_SW_CAM_PLUS_POS_TAB_2[0..7] ; Positions of plus cams
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.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.
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
Block--syn- FCTDEF(
chronous Polynomial no.,
polynomial Lower limit,
definition Upper limit,
a0,
a1,
a2,
a3)
The relationship between output quantity y and input quantity x is as follows:
y= a0+ a1x+ a2x2 + a3x3
Call of Stored polynomials can be used in conjunction with the following functions:
polynomial -- Online tool offset, FTOC()
evaluation
Operating The polynomial identified by the “Polynomial number” is evaluated with the
principle of value of the “Real--time variable input”. The result is then limited by maximum
SYNFCT and minimum limits and assigned to the “Real--time variable output”.
Example:
FCTDEF(1,0,100,0,0.8,0,0) ; Polynomial 1 is already defined
...
Synchronized action:
Additive feedrate In the case of additive control, the programmed value (F word with respect to
control 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
500
F
[mm/min]
a0
+ 100 Upper limit
0
4 5 6 I [A]
($AA_LOAD[X])
Lower limit -- 100
Drive load in %
Multiplicative In the case of multiplicative control, the F word is multiplied by a factor (over-
control ride in the case of an Adaptive Control). Factive = Fprogrammed ¡ factorAC
Variable $AC_OVR that acts as a multiplicative factor on the machining pro-
cess is used as the real-time variable output.
OVR [%]
160 %
⁄ (100)
(50)
0 30 % 80 % Load [%]
Base value
Position offset System variable $AA_OFF controls an axis-specific override that takes imme-
with limitation diate 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 synchro-
nized 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 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.
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
Override X
0.5
a1 Upper limit (UPPER)
0.35 1
a0
0.2
Lower limit (LOWER)
--10V +10V
%_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 ; Subprogram for clearance control OFF
CANCEL(1) ; Cancel synchronized action for clearance
control
CANCEL(2) ; Cancel limit range check
RET
ENDPROC
Overlaid Whatever the current tool and processing level, an overlaid movement is possi-
movements up to ble for each axis of the channel via the system variable $AA_OFF. The offset is
SW 5.3 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 con-
trol” laser power control)!
$AA_OFF, position offset as output variable for synchronized actions for clear-
ance control is disabled via the options bit!
Speed limitation with MD 32070: CORR_VELO.
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 sub-
program. 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 S The part program command CORROF with DROF is also gathered up
later 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
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.
Online tool Machining of the workpiece and dressing of the grinding wheel for grinding
offset 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
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].
2.4.8 RDISABLE
2.4.9 STOPREOF
2.4.10 DELDTG
Deletion of Synchronized actions can be used to activate deletion of distance-to-go for the
distance-to-go path and for specified axes as a function of a condition.
Example
DELDTG ... DO DELDTG
N100 G01 X100 Y100 F1000
N110 G01 X...
IF $AC_DELT > 50
...
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).
Task The axis is programmed within a machining routine and, in particular circum-
stances, 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:
Notice
Axis motion disable can also be programmed for PLC axes
(e.g. magazine axis).
Introduction Axes can be positioned, started and stopped completely asynchronously to the
part program from synchronized actions. This type of programming is recom-
mended for cyclical operations or for operations that are predominantly event-
controlled. Axes started from synchronized actions are called command axes.
Supplementary An axis cannot be moved from the part program and from synchronized actions
condition 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.
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
...
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 depen-
ding 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.
Absolute/ The end position can be programmed either absolutely or incrementally. The
incremental end position is approached absolutely or incrementally depending on whether G90
position 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
Example 2 The traversing path is generated in real time from a real-time variable:
Current value
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.
Suppression The effect of frames and tool lengths can be suppressed by means of
MD 32074: FRAME_OR_CORRPOS_NOTALLOWED
Suppressing Axial frames that travel incrementally to indexing positions have no effect on a
axial frames 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
Notice
If a command axis travels to indexing positions incrementally, axial frames
usually have no effect on this command axis.
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:
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.
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
Examples ... DO MOV[u]=0 ; stop axis motion as soon as condition has been fulfilled
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 pro-
gram or by controlling the axis motion from synchronized actions.
Starting/stopping The use of these functions is recommended for cyclical operations or for opera-
tions that are predominantly event-controlled.
Auxiliary These functions are programmed in the action section of the synchronized
functions, action by exactly the same method as used in the part program.
speed, position 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
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 chrono-
logical 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, The restrictions imposed by SW limit switches and working area limitations also
working area apply to axis/spindle movements activated from synchronized actions.
limitations
Influence of Working area limitations programmed by G25/G26 are taken into account as a
limitations on function of setting data:
movements from SD 43400: $SA_WORKAREA_PLUS_ENABLE.
synchronized Activation and deactivation of working area limitations by G functions WALIMON
actions / WALIMOF in the part program does not affect command axes.
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 In typical cases, an axis is either moved from the part program (PP) in motion
PP and SA blocks or as a positioning axis from a synchronized action (SA). However, if the
alternately 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
...
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.
On-the-fly Positioning axis motions and movements resulting from axis couplings
transitions for axis programmed via synchronized actions can be activated alternately.
couplings -- 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.
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)
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.
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.
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 Slave axis
LA Master axis
Kf Coupling factor
The commands for separating the coupled axis grouping are as follows:
... DO TRAILOF(FA, LA, LA2)
where:
FA Slave axis
LA Master axis
LA2 Master axis2, optional
Curve tables 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):
Calculate The slave value calculated from a master value on the basis of curve table n
slave value must be assigned to an arithmetic variable.
Example:
... DO $R17=CTAB(LW, n, deg)
where:
LW Master value
n Number of curve table
grad 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)
where:
FW Master value
aprLW Approximated master value which will allow
an unambiguous master value to be determined when the
curve table inverse function is ambiguous
n Number of curve table
grad 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.
Deactivate axis If the axis master value coupling must be canceled again on the fulfillment of
coupling from syn- another condition, the action must be programmed as follows:
chronized action ... DO LEADOF(FA, LA)
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 System variable $AA_SYNC[ax] can be read from the part program and syn-
synchronism chronized 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 Couplings directly activated in the part program are activated at block limits.
application With the additional option of activating couplings from synchronized actions, it is
possible to implement event-controlled, differential activation, e.g.
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 imple-
mented by means of a curve table.
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:
Notice
With static synchronized actions, measurements are also available in
JOG mode.
Trigger_event_1 to trigger_event_4:
1: Rising edge probe 1
--1: Falling edge probe 1 optional
2: Rising edge probe 2 optional
--2: Falling edge probe 2 optional
Measurement memory: Number of a FIFO variable
Measured values are supplied exclusively for the machine coordinate system.
Notice
System variable $AC_MEA does not supply any useful information about the
validity of a measurement called from a synchronized action.
System variables:
$AA_MEAACT[axis] supplies the instantaneous measuring status of an axis.
1 Measurement active
0 Measurement not active
$A_PROBE[probe] supplies the instantaneous status of the
measuring probe.
1 Probe switched, high signal
0 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
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.
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 ; 2 FIFOs
MD 28262: START_AC_FIFO = 100 ; first FIFO starts at R100
MD 28264: LEN_AC_FIFO = 22 ; each FIFO can store 22 values
MD 28266: MODE_AC_FIFO = 0 ; 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
; mode = 1, simultaneous
; no. FIFO =1
; trigger event 1= rising edge, probe 1
N2 STOPRE ; stop preprocessing
N3 MEAC[X]=( 0) ; abort continuous measurement
N4 NUMBER= $AC_FIFO1[4] ; number of measured values transferred to FIFO variables
N5 NUMBER= NUMBER -- 1
N6 FOR INDEX_R= 0 TO NUMBER
N7 R[INDEX_R]= $AC_FIFO1[0] ; enter FIFO contents in R0 -- ...
N8 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 G0 X0 ; rapid traverse to starting point
N1 $AC_MARKER[1]=1 ; marker 1 as index for arithmetic variable R[..]
N2 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
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) ; end condition as synchronized action:
; if 10 or more measured values are stored in FIFO
; variable,
; deselect
; continuous measurement and delete
; distance-to-go
N2 MEAC[X]=( 1,1,1,--1) G01 X100 F500 ; 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
Priority with more Only one measuring job can be active for an axis at any given time.
than one
If a measuring job for the same axis is started, the trigger events are re-
measurement activated 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 before-
hand.
Measuring jobs started from the part program cannot be influenced from syn-
chronized actions.
An alarm is generated if a measuring job is started for an axis from a syn-
chronized 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.
Measuring jobs When a measuring job has been executed from a synchronized action, the
and control system responds in the following way:
status changes
Status Response
Operating mode A measuring job activated by means of a modal synchronized
switchover action is not affected by a change in operating mode. It remains
active beyond block limits.
RESET Measuring job is aborted
Status 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.
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 Command CLEARM (marker number) can be programmed in the part program
marker 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).
Application:
The SETAL command can be programmed to set cycle alarms from syn-
chronized actions.
Cycles and For information about cycles and cycle alarms, please refer to
cycle alarms
References: /PGC/, Programming Guide Cycles
Processing With respect to processing sequence, the user must select the most suitable
sequence method from the following options:
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.
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
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
Action_12 Action_13
M100 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
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
Control of Technology cycles / synchronized actions are controlled via the identification
technology cycles number of the synchronized action in which they are programmed as an action:
Means of
coordination
Keyword Meaning PP SA
Call legal in part program +
Call legal in synchr. action / technology cycle +
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. +
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.
Part program:
; Define/activate synchronized actions
Define/
activate ID=1 WHENEVER $A_IN[1]==1 DO M130
Define/
ID=2 WHENEVER $A_IN[2]==1 DO LOCK(1) activate
...
CANCEL(2) ; Delete
...
ID=1 .... ; Overwrite
... existing
synchronized action
WHENEVER WHENEVER
$A_IN[1]==1 $A_IN[2]==1
DO M130 DO LOCK(1)
Block ID1
/unblock (UNLOCK (1))
PLC
Function Modal synchronized actions (ID, IDS) can be locked or enabled from the PLC.
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 syn- The PLC application program can set DB 21--30, DBB1 bit 2 to disable (lock
chronized actions 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 One bit is reserved for each of the 64 IDs (1--64) in the PLC interface
of selective (DB 21--30, DBB 300 bit 0 to DB21--30 DBB 307 bit 7).
disabling 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.
Updating the If the PLC user program has made changes in the range DB 21--30, DBB 300
selective disabling bit 0 to DB 21--30, DBB 307 bit 7, the changes must be activated with DB 21--30
DBX280.1.
Selective disabling If selective disabling was activated by the NCK, as status signal is set in
status signal DB 21--30 DBX.281.1.
References: /LIS/, Lists, Interface Signals
Part program:
Path motion,
selection of technology cycles
Subprogram 1 Subprogram n
Control bit in
When ID=1 PLC interface
When ID=n
PLC:
Parameter transfer
Initiation of axis functions
Reading/writing of In SW version 4 and later, PLC data can be read and written from the part
PLC data 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.
Global protection
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 pre-
venting the end customer from defining his own synchronized actions within this
protected area.
Channel--specific protection
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.
2.7.2 RESET
Positioning axis All positioning motions initiated from synchronized actions are aborted on
motions NC reset. Active technology cycles are reset.
IDS Static synchronized actions (programmed with IDS = ...) remain active after
NC reset. Motions can be restarted from static actions after NC reset.
$MA_SPIND_ACTIVE_AFTER_RE- $MA_SPIND_ACTIVE_AFTER_RE-
SET==FALSE: SET==FALSE:
Spindle stops Spindle stops
Master value coupling $MC_RESET_MODE_MASK, bit13 $MC_RESET_MODE_MASK, bit13
== 1: == 1:
Master value coupling remains active Master value coupling remains active
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
$MA_SPIND_ACTIVE_AFTER_RE-
SET==FALSE:
Spindle stops
$MC_RESET_MODE_MASK, bit13
== 0:
Master value coupling is canceled
Measuring operations Measuring operations started from Measuring operations started from
synchronized actions are aborted static synchronized actions remain
active
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 Polynomial coefficients programmed with FCTDEF are collected with calcula-
coefficients tion during a block search, i.e. they are written to system variables.
ASUB start Modal and static motion synchronous actions remain active and are also opera-
tive 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 subpro-
gram. The coefficients from the asynchronous subprogram continue to be
applied in the call program.
Axis and spindle motions started by means of synchronized actions are decele-
rated 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.8 Configuring
2.8.1 Configurability
Use of One synchronized action element is required for each of the following:
elements
-- 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.
$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.
Number of The number of programmable FCTDEF functions for each block can be
FCTDEF functions 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 syn-
chronized actions programmed. It may be necessary for the start-up engineer to
lengthen the interpolation cycle accordingly.
Guide values for As a guide, individual times required to perform operations within synchronized
lengthening inter- actions (measured on an 840D with NCU 573.x) are given below:
polation cycle Times may be different for other control types.
Diagnostic The following special test tools are provided for diagnosing synchronized
functionality actions:
S Status display
S The current values of all synchronized action variables can be displayed.
(display real-time variables)
Log real-time
Display real-time variables variables
Definition of views:
-- Scope (which variables) Definition of logs:
-- Representation mode -- Compile list of values
to be logged
-- Define sampling cycle
-- Define log file size
Management of views
Start log
Display log
Display values
graphically as time
characteristics
S Line number
S Code denoting synchronized action type
S ID number of synchronized action (for modal actions)
S Status
Complete synchro- A search function can be used to display the originally programmed line in
nized actions NC language for each displayed synchronized action.
Views “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.
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 real- The values assigned to a view are displayed by calling the corresponding user-
time variables of defined view.
a view
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
Logging ON
Values/signals
Signal
NCK
Interpolation cycle
Operation For information about operating the logging function, please refer to:
References: /BA/, Operator’s Guide
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 over-
written, 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 This function terminates the acquisition of log data in the NCK. The file con-
taining the logged data is made available on the MMC for storage and evalua-
tion (graphic log). Logging can be stopped by
-- an operator input or
-- setting of system variable $A_PROTO=0 from the part program
“Graphic log” The measured values (up to 6) of a log are represented graphically as a func-
function tion 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 Several log definitions can be stored under names of the user’s choice. They
logs can be called later for initialization and start of recording or for modification and
deletion.
J
Supplementary Conditions 3
Availability/ The scope of performance provided by the “Synchronized actions” function
scope of package depends on the following:
performance
S The type of SINUMERIK control system
-- HW
-- SW (export / standard versions)
S Configurability
-- Number of simultaneously active synchronized actions
-- Number of special variables for synchronized actions
S Static synchronized actions IDS that are active beyond the program end
and are effective in all operating mode are possible using the option “Inter-
mode group actions, ASUBs and synchronized actions”.
J
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
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 custo-
mer from modifying or deactivating the safety logic integrated by the machine manufactu-
rer.
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.
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
28252 MM_NUM_FCTDEF_ELEMENTS
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 synchro-
nized actions. This MD determines the number of these elements.
28254 MM_NUM_AC_PARAM
MD number Number of $AC_PARAM parameters
Default setting: 50 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 MM_NUM_AC_MARKER
MD number Number of $AC_MARKER markers
Default setting: 8 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
28258 MM_NUM_AC_TIMER
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) 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.
Related to .... 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_FI-
FO*($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
28266 MODE_AC_FIFO
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
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 dres-
sing, 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.
32074 FRAME_OR_CORRPOS_NOTALLOWED
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 assignment:
Bit 0 == 1: Programmed zero offset (TRANS) is not permitted with respect to
indexing axis.
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).
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.
MD irrelevant for ...... FM-NC with 611A
Application example(s) Smoothing of actual current value for AC Control.
36750 AA_OFF_MODE
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:
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 compensa-
tion value is within the limit range.
Signal Descriptions 5
Signals from
NCK channel
Channel 3
Channel 2
Channel 1
M, S, H fct.
modification
Synchronized actions
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
Notice
Only the instance (NCK or PLC) which initiated a disable can cancel the
disable again.
Synchronized DB 21 -- 30 DBX281.1
actions disabled The NCK confirms that the requested synchronized actions have been
disabled.
J
Examples 6
6.1 Examples of conditions in synchronized actions
Path distance from Axial distance from block end: 10 mm or less (workpiece coordinate system):
end of block ... WHEN $AC_DTEW <= 10 DO ...
G1 X10 Y20
Path distance from Path 20 mm or more after start of block in basic coordinate system:
start of block ...WHEN $AC_PLTBB >= 20 DO ...
Condition with Actual value for axis Y in MCS greater than 10 x sine of value in R10:
function in ... WHEN $AA_IM[y] > 10*SIN(R10) DO ...
comparison
Step-by-step Every time input 1 is set, the axis position is advanced by one step. The input
positioning must be reset again to allow cold restarting of the system.
G91
EVERY $A_IN[1]==1 DO POS[X]= 10
OVR in every inter- In order to selectively disable a path motion until a programmed signal arrives,
polation cycle $AC_OVR must be set to zero in every interpolation cycle (keyword
WHENEVER).
WHENEVER $A_IN[1]==0 DO $AC_OVR= 0
Other system The list of system variables that can be read in synchronized actions contained
variables 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.
Infeed and oscilla- Setting data whose values remain unchanged during machining are addressed
tion for grinding in the part program by their usual names.
operations Example: Oscillation from synchronized actions
NC language 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
General procedure The following examples use the polynomial evaluation function SYNFCT().
1. Representation of relationship between input value and output value (real-
time 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
Example of poly- For the purpose of clearance control, the upper limit of the output ($AA_OFF,
nomial with dyn. override value in axis V) is varied as a function of the spindle override (analog
upper limit 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:
0.5
$AC_FCTUL[1]
$AC_FCT1[1]
0.35 1
$AC_FCT0[1]
0.2
$A_INA[1]
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).
ULIMIT
a0 + 100
1V 2V 3V Analog input
$A_INA[1]
Unit: V
LLIMIT
-- 100
Determination of coefficients:
Override
$AC_OVR
100
Upper limit 100
50
Lower limit 1
0
0.2 0.4 0.6 0.8 1
Path parameter
$AC_PATHN
Polynomial 2:
Lower limit: 1
Upper limit: 100
a0: 100
a1: --100
a2: --100
a3: 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:
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
Task 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=1 EVERY $AC_TIMEC==0 DO INDEX = INDEX + 1 ; advance R parameter pointer on block change
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 posi-
tion 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 Falling edge, beginning of gap
%_N_MEAC_MITTEN_MPF
;measure using rotary axis B (BACH) with display of difference between measured values
; if 2 measured values are available, start to calculate. Calculate gap dimension ONLY and total gap
; increment calculated value counter by 2
N500 $AC_FIFO1[4]=0
Task assignment A cyclic curve table is defined by means of polynomial segments. Controlled by
means of arithmetic variables, the movement of the master axis and the
coupling process between master and slave axes is activated/deactivated.
%_N_KOP_SINUS_MPF
; 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
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 ; deactivate coupling condition
N295 R2=0 ; deactivate condition for master axis rotation
N300 R5=180 ; new feedrate for BACH
N305 M30
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 inter-
relationship 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.
Grinding wheel
(Section of)
workpiece contour
CACH
XACH
%_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
%_N_NONCIRC_MPF
; Coupled axis grouping for non-circular machining
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
Expansion options The example above can be expanded by the following components:
-- Introduction of a Z axis to move the grinding wheel or workpiece from
one non-circular operation to the next on the same shaft
(cam shaft).
-- Switchover between tables if the cams have different contours, e.g. for
inlet and outlet.
ID = ... <condition> DO LEADOF(XACH, CACH) LEADON(XACH,
CACH, <new table number>)
-- Dressing of grinding wheel by means of online tool offset acc. to
Section 2.4.7.
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.
NC program Remarks
%_N_SCHERE1_MPF
; $PATH=/_N_WKS_DIR/_N_DEMOFBE_WPD
N100 R3=1500 ; length of a part to be cut off
N200 R2=100000 R13=R2/300
N300 R4=100000
N400 R6=30 ; start position Y axis
N500 R1=1 ; start condition for belt axis
N600 LEADOF(Y,X) ; delete any existing coupling
N700 CTABDEF(Y,X,1,0) ; table definition
N800 X=30 Y=30 ; value pairs
N900 X=R13 Y=R13
N1000 X=2*R13 Y=30
N1100 CTABEND ; end of table definition
N1200 PRESETON(X1,0) ; PRESET at beginning
N1300 Y=R6 G0 ; 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) ; couple Y to X via Table 1 when X < 10
N1900 ID=10 EVERY $AA_IM[X]>$R3--30 DO LEADOF(Y,X) ; decouple when X > 30 from start of cutting length
N2000 WAITP(X)
N2100 ID=7 WHEN $R1==1 DO MOV[X]=1 FA[X]=$R4 ; set extruded material axis continuously in motion
N2200 M30
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 The PLC and NCK are coordinated by means of the common data that are pro-
vided 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.
Synchronized %_N_MAIN_MPF
actions
...
IDS=1 EVERY $A_DBB[0]==1 DO NULL_POS ; if $A_DBB[0] is set by PLC, traverse to initial position
IDS=2 EVERY $A_DBB[1]==1 DO ZIEL_POS ; if $A_DBB[1] is set by PLC, traverse spindle to
; position stored in $A_DBW[1]
...
PROC NULL_POS
SPOS=0 ; move drive for tool change into initial position
$A_DBB[0]=0 ; initial position executed in NCK
PROC TARGET_POS
SPOS=IC($A_DBW[1]) ; traverse spindle to position value that has been stored in
$A_DBW[1]
; by the PLC, incremental dimension
$A_DBB[1]=0 ; target position executed in NCK
Introduction The following figure shows the schematic structure of a tool-changing cycle.
Y Y
“Z released”
“Position magazine”
“Return tool”
Level tool pockets WPY “Fetch TOOL” WPY
WPX WPX “Z clamped”
“Intermediate point” ZP1Y
(can be rounded)
ZP1X
VPY VPY
Z Z
Flowchart
Start
Tool change cycle in %MPF
Yes
Block search active?
(If $P_SEARCH GOTOF ..)
Change tool
(’M06’ <== MD 22560)
No
’D1’: activate tool offset
No
Return tool
(’D0’: deactivate tool offset)
No tool in spindle? Yes
(If ToolSpindle==0 GOTOF ..)
Fetch tool
(’D1’: activate tool offset)
No
Return 1st tool / Fetch 2nd tool
(’D1’: activate tool offset)
End
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
Notes
36750 AA_OFF_MODE Effect of value assignment for axial override for syn-
chronized 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
Setting data ($SA_ ... )
43300 ASSIGN_FEED_PER_REV_SOURCE Rotational feedrate for positioning axes/spindles V1
43350 AA_OFF_LIMIT Upper limit of offset value for $AA_OFF clearance
control
43400 WORKAREA_PLUS_ENABLE Working area limitation in pos. direction A3
7.3 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
/ST7/ SIMATIC
SIMATIC S7 Programmable Logic Controllers
Catalog ST 70
Order No.: E86 060-K4670-A111-A3-7600
Electronic Documentation
User Documentation
Manufacturer/Service Documentation
a) Lists
b) Hardware
c) Software
/FBDN/ IT Solutions
System for NC Data Management and Data
Distribution (DNC NT-2000) (01.02 Edition)
Description of Functions
Order No.: 6FC5 297-5AE50-0BP2
/PFK/ SIMODRIVE
Planning Guide 1FT5, 1FT6, 1FK6 Motors (12.01 Edition)
AC servo motors for feed and main spindle drives
Order No.: 6SN1 197-0AC20-0BP0
/PJFE/ SIMODRIVE
Planning Guide 1FE1 Built-In Synchronous Motors
Three-Phase AC Motors for Main Spindle Drives (09.01 Edition)
Order No.: 6SN1 197-0AC00-0BP1
/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 (08.02 Edition)
Order No.: 6SN1 197--0AD00--0BP0
/PPH/ SIMODRIVE
Planning Guide Motors 1PH2, 1PH4, 1PH7 (12.01 Edition)
AC Induction Motors for Main Spindle Drives
Order No.: 6SN1 197-0AC60-0BP0
/PPM/ SIMODRIVE
Planning Guide Hollow-Shaft Motors (10.01 Edition)
for 1PM4 and 1PM6 Main Spindle Drives
Order No.: 6SN1 197-0AD03-0BP0
d) Installation and
Start-Up
/IAA/ SIMODRIVE 611A
Installation and Start-Up Guide (10.00 Edition)
Order No.: 6SN 1197-0AA60-0BP6
Index
E
End of program, 2-112
Extensions in SW 5, 3-122
Symbols
$AA_OFF, 1-76
F
FCTDEF, 2-69
A FIFO variables, 2-33
AA_OFF_LIMIT, MD 43350, 4-130 FRAME_OR_CORRPOS_NOTALLOWED,
AC_FILTER_TIME, MD 32920, 4-129 MD 32074, 4-129
Adaptive Control, 6-136 FTOC, Online tool offset, 2-78
Additive control, 2-71
Example, 6-137
Multiplicative control, 2-72 G
Axial feed, 2-85
General machine data, 4-123
B I
Block search, 2-113
ID number, 2-15
Identification number, 2-16
IS_CONCURRENT_POS_AX, MD 30450, 4-128
C
Calculate master value, 2-92
Calculate slave value, 2-92 L
Change in operating mode, 2-111
LEN_AC_FIFO, MD 28264, 4-126
Command axes, 2-82
Configurability, 2-115
Configuring, 2-115
Control system response, 2-110 M
Coordination, 2-103
Measurements from synchronized actions, 2-94
CORR_VELO, MD 32070, 4-128
MM_NUM_AC_MARKER, MD 28256, 4-125
CORROF, 1-77
MM_NUM_AC_PARAM, MD 28254, 4-125
Coupled axes, 2-91
MM_NUM_AC_TIMER, MD 28258, 4-126
Couplings, 2-91
MM_NUM_FCTDEF_ELEMENTS,
MD 28252, 4-125
MM_NUM_SYNC_ELEMENTS, MD 28250, 4-124
D MODE_AC_FIFO, MD 28266, 4-127
Motion synchronous actions,
Detection of synchronism, 2-93
Detailed description, 2-15
Diagnostics, 2-117
T W
Technology cycle, 2-100 Wait markers
Technology cycles, 2-100 Deletion, 2-98
Call, 2-100 Setting, 2-98
Notes
Company/Dept.
Should you come across any printing errors
Address when reading this publication, please notify us
on this sheet.
Suggestions for improvement are also welcome.
Phone: /
Fax: /
SINUMERIK
SIROTEC
SINUMERIK SINUMERIK SIMODRIVE SINUMERIK SINUMERIK SINUMERIK SINUMERIK
840D/810D 840D/840Di/ Accessories 840D/810D/ 840D/840Di/ 840D/840Di/ 840D/840Di/
810D/ FM-NC 810D 810D 810D
Program. Guide Operator’s Guide System Overview Configuring Operator Description of Description of
-- Short Guide -- ManualTurn (HW) *) Components Functions Functions
-- Fundamentals *) -- Short Guide ManualTurn -- 810D (HW) *) - ManualTurn Synchronized
-- Advanced *) -- ShopMill -- 840D - ShopMill Actions
-- Cycles -- Short Guide ShopMill - ShopTurn
-- Measuring Cycles -- ShopTurn
-- ISO Turning/Milling -- Short Guide ShopTurn
Manufacturer/Service Documentation
SINUMERIK
SIMODRIVE SINUMERIK SINUMERIK SINUMERIK SINUMERIK SINUMERIK
611D 840D/840Di/ 840D/840Di/ 840D/810D 840D/810D 840D/840Di/
840D/810D 810D 810D 810D
Manufacturer/Service Documentation
SINUMERIK
SINUMERIK SINUMERIK SINUMERIK SINUMERIK SINUMERIK SIMODRIVE
SIMODRIVE SINUMERIK SIMODRIVE SIMODRIVE SIMODRIVE SIMODRIVE SIROTEC
840D 840D/840Di 840D 840D
810D 611D 611D
611D
SINUMERIK
SIMODRIVE
840D/840Di/ SINUMERIK SINUMERIK SINUMERIK
810D
611, Motors 840D/840Di/ 840Di 840D/810D
810D
DOC ON CD *)
The SINUMERIK System
Description of Manual Description of
Functions (HW + Installation Functions
ISO Dialects for and Start-up) Remote Diagnosis
*) These documents are a minimum requirement SINUMERIK
Siemens AG