Motion synchronous actions
10.3 Main run variables for synchronized actions
Job planning
570 Programming Manual, 07/2010, 6FC5398-2BP40-0BA0
Example: Circulating memory
During a production run, a conveyor belt is used to transport products of different lengths
(a, b, c, d). The conveyor belt of transport length therefore carries a varying number of
products depending on the lengths of individual products involved in the process. With a
constant speed of transport, the function for removing the products from the belt must be
adapted to the variable arrival times of the products.
O
G
F
E
D
Program code Comments
DEF REAL INTV=2.5 ; Constant distance between products
that are placed down.
DEF REAL TOTAL=270 ; Distance between the length
measurement and removal position.
EVERY $A_IN[1]==1 DO $AC_FIFO1[4]=0 ; At the start of the process, reset
FIFO
EVERY $A_IN[2]==1 DO $AC_TIMER[0]=0 ; If a product interrupts the light
barrier, start the time measure-
ment.
EVERY $A_IN[2]==0 DO $AC_FIFO1[0]=$AC_TIMER[0]*$AA_VACTM[B] ; If the product leaves the light
barrier, calculate the product
length from the measured time and
transport speed and save in FIFO.
EVERY $AC_FIFO1[3]+$AC_FIFO1[4]*ZWI>=GESAMT DO POS[Y]=-30
$R1=$AC_FIFO1[0]
; As soon as the sum of all product
lengths and intermediate distances
are greater than/equal to the
length between the position where
the product is placed down and
where it is removed, remove the
product from the conveyor belt at
the removal position, read-out the
associated product length from
FIFO.