Rover C9 Error 9678 Documentation
Rover C9 Error 9678 Documentation
Technical Documentation
AU-049/04N
Contents
1. Ripositioning and commands regarding the objects that compose the work table ............ 3
Introduction ............................................................................................................. 3
ISO Programming...................................................................................................... 4
Examples ................................................................................................................. 6
Summary of parameters for launching cycle GWTEXE ................................................... 11
Errors .................................................................................................................... 12
Fixed cycle GWTEXE ................................................................................................ 12
2. Extension of the locking logic ............................................................................................ 13
Introduction ........................................................................................................... 13
Debug ................................................................................................................... 16
3. Multizone Locking............................................................................................................... 19
2
Document: AU-049/04N
1. Ripositioning and commands regarding the objects that compose the work
table
Introduction
ISO instructions are available for carrying out different types of operation on the objects
making up the work table.
The commands to activate for each type of operation must be described in matrix type
program variables according to the following table:
The following definitions will help understand the significance of PCR() and PCRS():
• master carriage is a carriage that is positioned by the motor,
• slave carriage is a carriage that is positioned by the movement of a master
carriage to which it is connected through the piece locked onto them.
Each array of commands has an extra line and column than that required. The offset for
accessing the commands of each object is 1: this means that the first element is at position
1,1 if the array is two-dimensional, while it is at position number 1 if the array is
monodimensional.
Element 0,c is used to “broadcast” the command specified for all the index c carriages of all
the tables, while element p,0 is used to broadcast the command specified for all the carriages
of table p.
Element 0,0 is used to “broadcast” the command specified for all the carriages of all the
tables.
These indications also apply to PFST() and PLST() where the second number is not a carriage
but a row.
The broadcast is not managed for PNOX() in that, for example, command PNOX(0)=100 would
signify “move all tables to position 100” which is physically impossible!
As regards the PBSP() array of commands for the bar unloaders, the command orientated
towards the carriage has been used. In practice, as the plant is currently used for semiareas,
the command can be given by simply using the table broadcast: PBSP(1,0)=1 activates the
plant on table 1, which is the same as the left-hand area.
NB: If a value other than –1, 0 or 1 is assigned to an array element for binary type
commands, the “ING 206 > Cannot execute program line runtime; Machine data write error
(incorrect setting of RDM parameters)” error is generated.
3
Document: AU-049/04N
ISO Programming
The commands specified are activated when fixed cycle GWTEXE is called and they must be
preceded by a call to fixed cycle GWTINIT1.
The structure of cycle GWTEXE is as follows:
• Executes instruction M, which enables all the commands and only returns a step completed
when the commands themselves have been completed (tables positioned, carriages
positioned and locked, stops down, delay time expired in the case of commands to objects
without sensors, …).
Initialising a matrix after it has been copied to the table ensures that only the commands for
the objects requiring a status change need to be specified before the next GWTEXE fixed cycle
call. The only exception being vectors with carriage positions (PCR) and table positions
(PNOX): in these cases, if the current position of an object is confirmed, the command is not
enabled.
Of all the commands received, the PLC only enables those relating to the objects used for
locking the piece or the various pieces associated to the program (dimensions specified in the
program). The function is therefore independent of the locking sequences used (standard or
multi-panel).
Furthermore, the vacuum ON/OFF commands and uniclamp ON/OFF commands are only
activated if they are compatible with the status of the selector that enables either one or the
other of the two piece locking systems.
It is possible to include parameter PDLY in the cycle, which represents the delay introduced
after the execution of the requested commands. The delay time is expressed in seconds.
Unless specified otherwise, the default value of 0 seconds is used.
Warning
In any case it is good practice to specify all parameters required for launching cycle
GWTEXE, even when this parameter is not used.
For instance, if no delay needs to be entered for parameter PDLY, it is better to set it to
= 0 especially if it is not sure whether this parameter is used in other parts of the
program:
N20 L=GWTINIT
…
…
N100 L=GWTEXE PDLY=0
Through parameter PINC it is possible to specify that the movements set for the carriages and
work tables are incremental (value 1). If the parameter is not specified or not set to 0, the
movements of the carriages and work tables are absolute.
For example:
N20 L=GWTINIT
N30 PCR(1,1)=120
1
If this rule is not followed, PLC locking error 9691 is displayed.
2
When the program starts, the arrays are initialised by the FIRST fixed cycle by the call to the GWTINIT fixed
initialisation cycle. This cycle defines the various arrays and initialises the elements representing the binary commands
at –1 and the elements representing the target positions at 99999.
4
Document: AU-049/04N
The GWTEXE cycle is the basic component required to execute more complicated cycles such
as, for example, the uniclamp positioning cycle for "machining all the sides of a piece for door
and window frames”.
Execution of a block of instructions included between the calls to the two fixed cycles GWTINIT
and GWTEXE is not locking. This means that during execution of the actions and movements
programmed, the execution of a program goes to the lines below the line containing the call to
cycle GWTEXE. In practice it is possible to run a tool change or to activate a spindle during the
execution of the actions and movements programmed.
It is possible to use instruction M233 to wait for the end of the execution of a block of
instructions included between GWTINIT and GWTEXE.
The carriages for which a position has been defined using PCR() are positioned using the belts
of the table to which they belong, while tables for which a position has been defined using
PNOX() are positioned using the relative motors.
1. a position is defined for each carriage and each table using PCR() and PNOX()
respectively,
The first case is used for retooling the entire work table during the execution of a program
and without locked pieces.
The current EPS movement logic of the locking cycle is used.
The second case is used to move some carriages as required during the machining of pieces
for door and window frames using uniclamps or as required when "opening" a piece that has
been previously cut into two parts.
The carriages for which PCR() (masters) has been specified are commanded simultaneously.
On completion of the movement, the positions of the carriages for which PCRS() (slaves) has
been specified are updated in line with the movements made by the master carriages.
It is not possible to command some of the carriages and some of the tables simultaneously.
5
Document: AU-049/04N
Examples
Example 1: repositioning uniclamps when machining a piece for door and window
frames
If, for example: You want to pass from the initial situation to the final situation as indicated in
the following figure.
1 2 3 1 2 3
Y = 200
Row
Y = 500
Row
Initial situation Final situation
The intermediate situation is that in which both rows of uniclamps lock the piece.
…
…
; *** end machining on sides 1, 2 and 3 ***
;
; *** approach uniclamp row 2 ***
;
;preparation of commands for raising uniclamp row 2
N90 L=GWTINIT
N100 PUNI(1,2)=0 PUNI(2,2)=0 PUNI(3,2)=0
;activate command
N110 L=GWTEXE
;preparation of commands for positioning carriages row 2
N115 L=GWTINIT
N120 PCR(1,2)=500 PCR(2,2)=500 PCR(3,2)=500
;activate command
N130 L=GWTEXE
;preparation of commands for lowering uniclamp row 2
N135 L=GWTINIT
N100 PUNI(1,2)=1 PUNI(2,2)=1 PUNI(3,2)=1
;activate command
N150 L=GWTEXE ; piece also clamped on side 2
;
; *** retract uniclamp row 1 ***
;
;preparation of commands for raising uniclamp row 1
N155 L=GWTINIT
6
Document: AU-049/04N
…
…
; *** end machining on sides 1, 2 and 3 ***
;
; *** approach uniclamp row 2 ***
;
;preparation of commands for raising uniclamp row 2
N90 L=GWTINIT
N100 PUNC(0,2)=0
;activate command
N110 L=GWTEXE
;preparation of commands for positioning carriages row 2
N115 L=GWTINIT
N120 PCR(0,2)=500
;activate command
N130 L=GWTEXE
;preparation of commands for lowering uniclamp row 2
N135 L=GWTINIT
N140 PUNC(0,2)=1
;activate command
N150 L=GWTEXE ; piece also clamped on side 2
;
; *** retract uniclamp row 1 ***
;
;preparation of commands for raising uniclamp row 1
N165 L=GWTINIT
N170 PUNC(0,1)=0
;activate command
N180 L=GWTEXE ; piece only clamped on side 2
;preparation of commands for positioning carriages row 1
N185 L=GWTINIT
N190 PCR(0,1)=200
;activate command
N200 L=GWTEXE
;
; *** start machining side 4 ***
;
…
…
This second example is more general. The GWTEXE cycle asks the PLC to activate the
commands specified for all the objects (uniclamps and carriages) on rows 1 and 2 of all the
tables. The PLC will only activate the commands for objects on the tables being used by the
program, thus allowing a single program to be used for pendular work (command broadcasting
renders the program independent of the work origin).
7
Document: AU-049/04N
In practice, the program can be written in a more compact manner by removing the comments
and defining the various arrays of commands on the same line on which the GWTEXE cycle is
called:
…
…
N90 L=GWTINIT
N100 PUNC(0,2)=0 L=GWTEXE
N105 L=GWTINIT
N110 PCR(0,2)=500 L=GWTEXE
N115 L=GWTINIT
N120 PUNC(0,2)=1 L=GWTEXE
N125 L=GWTINIT
N130 PUNC(0,1)=0 L=GWTEXE
N135 L=GWTINIT
N140 PCR(0,1)=200 L=GWTEXE
…
…
NOTA BENE: in the present-day plants, carriage release causes the uniclamp to move up,
while carriage locking causes the uniclamp to move down. That is why the code above can be
further reduced as follows:
…
…
N90 L=GWTINIT
N100 PCR(0,2)=500 L=GWTEXE
N110 L=GWTINIT
N120 PCR(0,1)=200 L=GWTEXE
…
…
or:
…
…
N90 L=GWTINIT
N100 PCR(0,2)=500
N110 L=GWTEXE
N120 L=GWTINIT
N130 PCR(0,1)=200
N140 L=GWTEXE
…
…
8
Document: AU-049/04N
1 2 3
2
cut
3
…
…
; *** end cut that divides the panel in two ***
;
;define the target position of carriage 4 of each table
N90 L=GWTINIT
N100 PCR(0,4)=1200
;define the slave carriage of each table
N100 PCRS(2,3)=1 ; carriage 3 of table 2 is a slave, it will move due to the
effect of the movement of another carriage to which it is connected, in that the
piece is locked onto both of them
N110 PCRS(3,2)=1 PCRS(3,3)=1 ; carriages 2 and 3 of table 3 are slaves
;activate commands
N110 L=GWTEXE
;
; *** panel “open” ***
;
…
…
It could be said that in the example, each of the three tables has just one master carriage (4),
there are no slave carriages on table 1, on table 2 carriage 3 is a slave, on table 3 carriages 2
and 3 are slaves.
The rules to follow when programming the opening of the piece are as follows:
1. each table can have more than one master carriage3,
3
If the following is programmed:
N10 L=GWTINIT
N20 PCR(1,4)=1200
N30 PCR(1,3)=800
N40 L=GWTEXE
It is declared that there are two master carriages on table 1: 3 and 4. In this case, PLC locking error 9678 is
generated. The error message ends with the number of the table on which the programming error has been made.
9
Document: AU-049/04N
Each time a carriage is programmed, a collision check is carried out before the movement is
effected6.
Warning: in a particular case in the second example, only master carriages may be present
(no carriages are moved by the piece). In this case, in order to be able to indicate that the
master carriages must be moved of the same amount as specified in rule 5, parameter
PSYN=1 must be passed on to the GWTEXE fixed cycle. This forces the PLC to check that the
rule in question is respected even if there are no slave carriages (if there are slave carriages,
rule 5 is always checked).
When there are no slave carriages and PSYN has not been defined or PSYN=0 has been
explicitly defined, the rule in question is not checked. In this way, in the first example, the
start position of each uniclamp of row 2 does not need to be the same as the other clamps
which will be moved together.
4
If no master carriages are programmed but only slave carriages are defined, PLC locking error 9688 is generated. For
example:
N10 L=GWTINIT
N20 PCRS(1,4)=1
N30 PCRS(1,3)=1
N40 PCRS(2,3)=1
N50 PCRS(4,3)=1
N60 L=GWTEXE
5
If this rule is not followed, PLC locking error 9681 is generated.
6
In the case of a collision, PLC error 9682 is generated. The error message ends with the number of the table and the
number of the carriage on the table that would collide. The error is a locking error and the collision is avoided.
10
Document: AU-049/04N
1 2 3 4
cut
…
…
; *** end cut that divides the panel in two ***
;
;define target position of table 3
N90 L=GWTINIT
N100 PNOX(3)=1300
;define target position of table 4
N110 PNOX(4)=1600
N120 L=GWTEXE
;
; *** panel “open” ***
;
…
…
Parameter Meaning
PDLY This is the delay introduced after execution of the commands
specified in PVAC(), PUNC(), PBSP(), PFST(), PLST() variables. It
is expressed in seconds. If there is no need to specify it, then it is
advisable to set to 0.
PINC If it equals 1, it indicates that the PCR() carriage quotes or the
PNOX() table quotes are incremental, otherwise if it equals 0, it
means that the quotes are absolute.
PSYN If it equals 1, PLC must make sure that all the carriages with a
quote programmed using PCR() move of the same amount, even
if they have not been defined as slave carriages.
11
Document: AU-049/04N
Errors
The following errors are possible:
PLC 9678 More than one carriage have been requested to move onto the same mobile support
(table)
PLC 9679 Some mobile supports (tables) and some carriages have been requested to move at the
same time.
PLC 9680 Carriage or mobile support positioning request: case not included in the commands
received from ISO.
PLC 9681 At least two carriages belonging to different mobile supports have target quotes that
imply movement of different entities (each carriage must be moved with the same
entity).
PLC 9682 On a mobile support, the programmed quote for a carriage implies a collision with an
adjacent carriage (table, carriage)
PLC 9691 Programming error: the call to cycle GWTEXE is not preceded by the call to
cycle GWTINIT
PLC 9702 Warning: the programmed quote for a carriage is the same as its position. The
movement requested has been cancelled. Carriage, work table
(<carriage>,<work table>)
Data Array
PVAC1, ..., PVAC4 PVAC (work table, carriage)
PUNC1, ..., PUNC4 PUNC (work table, carriage)
PBSP1, ..., PBSP4 PBSP (work table, carriage)
PFST1, ..., PFST6 PFST (work table, row)
PLST1, ..., PLST6 PLST (work table, row)
PCR1, ..., PCR4 PCR (work table, carriage)
PCRS1, ..., PCRS4 PCRS (work , carriage)
PSCR1, ..., PSCR4 PSCR (work table, carriage)
PNOX PNOX (table)
This means that command PVAC(1,1) is copied in data item PVAC1 of the first column of table
WTDATIPM, that quote PNOX(3) is copied in data item PNOX of the third column, etc.
12
Document: AU-049/04N
2. reset of each array (-1 for binary commands, 99999 for position commands) via the call to
fixed cycle GWTINIT7,
3. execution of instruction M232 which activates all the commands. M232 reads the
commands from table WTDATIPM and executes them. Blocks the execution of the steps
until activation of the commands received is completed.
In addition to array-type parameters, the cycle also receives the following parameters in input:
• PNUP: number of mobile tables defined in table PIA_MOB
• PNUC(PNUP): number of carriages for each table
• PDLY: Delay introduced after execution of commands (in seconds)
Variables PNUP and PNUC(PNUP) are only defined at the first execution of fixed cycle GWTINIT
at the beginning of the program, whereas PDLY can be specified each time fixed cycle GWTEXE
is called.
The following names of variables: PVAC, PUNC, PBSP, PFST, PLST, PCR, PCRS, PSCR, PNOX,
PNUP, PNUC are therefore reserved for this application and cannot be used for other purposes
inside programs, subprograms and fixed cycles.
Introduction
In view of the applications for the work table and the possibility to have a work table where
each carriage has its own independent outputs for:
• standard vacuum,
• uniclamp and
• release of carriage from table,
PLC has been modified.
Table PIA_MOB must now also be set for non EPS machines. Just set data item AreaMas to
associate a single work table to its own semi-area and data item NumVen to specify the
number of carriages present on the table.
If the machine is fitted with a traditional vacuum system, i.e. with 2 or 4 independent areas, it
is not necessary to set any other data.
In the case where the machine has new carriages with the characteristics described above
(independent outputs for standard vacuum, uniclamp and release) or it has the carriages
grouped in locking zones, then it is necessary to set the new tables correctly as follows:
This table contains the data of all the standard vacuum electrovalves. Each column
corresponds to an electrovalve. An electrovalve can be associated to a single carriage or to a
group of them.
7
Cycle GWTINIT is used to initialise the array-type arrays. defines these arrays at the first execution.
13
Document: AU-049/04N
This table contains the data of all the uniclamp electrovalves. Each column corresponds to an
electrovalve. An electrovalve can be associated to a single carriage or to a group of them.
WTPIA1 Table for the work table carriages and for the configuration
of the locking zones 1
Field name Values Description
ZonaVu1, 0…n Vacuum locking zone (standard) to which the carriage belongs.
ZonaVu2,
ZonaVu3,
ZonaVu4
ZonaUn1, 0…n Uniclamp locking zone to which the carriage belongs.
ZonaUn2,
ZonaUn3,
ZonaUn4
VuoStd1, 0…n Number of the vacuum electrovalve (standard) associated to the
VuoStd2, carriage if it is greater than zero (number of the column in table
VuoStd3, WTVUOSTD). If it equals zero, it means that no independent
VuoStd4 electrovalve is associated to the carriage: so the carriage receives
from its own semi-area the inputs for the standard vacuum (from
data AREELAV\O_VenON and AREELAV\O_VenOFF).
Unicl1, 0…n Number of the uniclamp electrovalve associated to the carriage if it is
Unicl2, greater than zero (number of the column in table WTUNICL). If it
Unicl3, equals zero, it means that no independent electrovalve is associated
Unicl4 to the carriage: so the carriage receives the uniclamp inputs from its
own semi-area (from data AREELAV\O_UniON and
AREELAV\O_UniOFF).
14
Document: AU-049/04N
NB: Each and every carriage must have a data item indicating the zone to which each
carriage belongs (ZonaVu1, ZonaVu2, …, ZonaUn1, ZonaUn2, …) and a data item indicating
the number of electrovalves (VuoStd1, VuoStd2, …, Unicl1, Unicl2, …).
If the work table is divided into zones (not into independent carriages), the data has the
same meaning in that several carriages with the same electrovalve belong to the same zone.
If the work table is divided into independent carriages then more carriages with
different electrovalves can be associated to a locking zone.
These tables contain the data to define the configurations of the locking zones from 2 to 15.
Refer to section Static multizone locking.
Tables WTVUOAUX is used for ancillary vacuum, table WTBARRE is used for lifting,
WTBATFR is used for front stops, WTBATLAT is used for side stops and all of these tables
can be used just like tables WTVUOSTD and WTUNICL. To associate a carriage to one of the
electrovalves, data WTPIA1\VuoAux, WTPIA1\Barre, WTPIA1\BatFr, WTPIA1\BatLat having the
same meaning as data WTPIA1\VuoStd and WTPIA1\Unicl must be entered for each carriage.
At the moment, given the fact that there are no practical advantages to using these
electrovalves independently for each carriage, the tables as well as the connection data in
table WTPIA1 are not displayed with password below level 16. The management exists but the
data cannot be viewed so as not to complicate things too much for the final user (Biesse
Technician), at least until it is not necessary to use such data.
15
Document: AU-049/04N
Debug
A new table WTDEBUG has been introduced to indicate the status of the inputs present for
each of the six electrovalves managed at WTPIA1 [Link] in this case, the electrovalves do
not actually exist yet and so have data with a level 16 password.
NB: The output status is updated only if these outputs are controlled through the functions
dedicated to the carriage that retrieve data from tables WTBATLAT, WTBATFR (WTVUOAUX,
WTBARRE, WTBATFR and WTBATLAT).
Below is an example of this table defining the various standard vacuum electrovalves. The
“photo“ shows the situation in which the panel is blocked (it is long in the example).
Information “O800=1, O801=0” means that activation output O800 is active, whereas
deactivation output O801 is disabled.
16
Document: AU-049/04N
The definition of the standard vacuum electrovalves is highlighted in table WTVUOSTD shown
below:
The association between each carriage and its own standard vacuum electrovalve is
highlighted in table WTPIA1 shown below:
17
Document: AU-049/04N
Messages are also printed on file [Link] for the [Link] message is BBOX_73 indicating
the command on one of the [Link] has four parameters with the following meaning:
• 1st parameter table number,
• 2nd parameter carriage number,
• 3rd parameter command,
• 4th parameter type of electrovalve (0=standard vacuum, 1=uniclamp, 2=ancillary
vacuum, 3=bars, 4=side stops, 5=front stops).
18
Document: AU-049/04N
3. Multizone Locking
Introduction
The multizone locking mode allows the locking of more pieces associated to the same
program inside a unique locking cycle: all the pieces are locked and so machining can start
with a unique program on a unique origin with the added advantage that tool change can be
optimised.
The CAM can optimise the machining operations regarding individual pieces and will generate
an ISO list in which the machining operations are optimised in a unique program.
LPX and LPY will be programmed in such a way as to include all the machining operations on
all the pieces; as for the standard management, only the active objects on the work table are
those relating to the origin selected and to the LPX dimension described in the program.
The execution of the program will be possible only if the origin is the same for all the objects;
alternatively some start buttons configuring KA variable in line N10 of the program will have to
be disabled.
The tooling system must also know how to control the electrovalves of vacuum and uniclamp
systems so as to prevent any piece loading operations that could be incompatible with the
machine actual locking possibilities.
Table (WTPIA1) will be made available listing every carriage of every work table and
indicating which electrovalve and which zone control the activation of the vacuum and which
control the activation of the uniclamps..
WTPIA1
1 2 3 4 5 6 7 8
ZonaVu1 1 1 2 2 3 3 4 4
ZonaVu2 1 1 2 2 3 3 4 4
ZonaVu3 1 1 2 2 3 3 4 4
ZonaVu4 1 1 2 2 3 3 4 4
ZonaUn1 1 1 2 2 3 3 4 4
ZonaUn2 1 1 2 2 3 3 4 4
ZonaUn3 1 1 2 2 3 3 4 4
ZonaUn4 1 1 2 2 3 3 4 4
In the case described there are only four vacuum electrovalves and four uniclamp
electrovalves (work tables 1-2, 3-4, 5-6 and 7-8).
19
Document: AU-049/04N
WTPIA1
1 2 3 4 5 6 7 8
ZonaVu1 1 5 9 …
ZonaVu2 2 6 10
ZonaVu3 3 7 …
ZonaVu4 4 8
ZonaUn1 1 5 9 …
ZonaUn2 2 6 10
ZonaUn3 3 7 …
ZonaUn4 4 8
In the case described there is a vacuum electrovalve and a uniclamp electrovalve for each
carriage.
Generally speaking the number of vacuum electrovalves could be different from the number
of uniclamp electrovalves.
There are two ways to manage their coexistence on the same machine:
The data configuration tables are the same as for the dynamic multizone locking mode.
20
Document: AU-049/04N
These functions can be used from the "Locking" menu on the console, which has the following
structure.
Item Function
Associate stops This item generates a new submenu for associating the side stops
and front stops.
Select zones This function enables and disables each single locking zone. When
this item is selected, a display appears as shown in the following
figure:
The UP ARROW and DOWN ARROW can be used to set the zone
configuration to activate. Press ENTER to confirm the selection
made.
Item Function
Left side Associates the left side stops with each other.
Right side Associates the right side stops with each other.
External side Associates the outer side stops with each other.
Front Associates a row of front stops with row 1.
When this item is selected, a display appears as shown in the
following figure:
The symbols “[1]” and “[0]” represent the selectors: “[1]” indicates
that the selector is enabled, while “[0]” indicates that the selector
21
Document: AU-049/04N
Data configuration
To make the configuration uniform through PLC tables, this new version allows for the data to
be configured with table WTPIA1 and both WTVUOSTD and WTUNICL tables. This is valid only
in case the remote console is used.
Data item INFOMACC\Si_zoneY must be set to 2. .
In case of machine update with this application (without the console), configuration takes
place with the already existing and configured table ZONE_BL.
In table WTPIA1 it is possible to associate each carriage to the locking zone to which it
belongs. Data ZonaVu1, ZonaVu 2, … can be used to specify the zone to which the carriage
belongs as regards vacuum locking, whereas data ZonaUn1, ZonaUn2, … can be used to
specify the zone to which the carriage belongs as regards uniclamp locking.
Table WTPIA1 contains the data to define configuration 1 of zones (ZonaVu1, … ZonaVu4 e
ZonaUn1, …, ZonaUn4). The next configurations from 2 to 15 are defined using tables WTPIA2,
…, WTPIA15 which only contain the data to define the zones that are different from the ones of
table WTPIA1 in that it also contains information on the electrovalve connected to each
carriage.
Each vacuum and uniclamp system is associated to both outputs of their own electrovalve by
means of table WTVUOSTD and WTUNICL. Connection between carriage and electrovalve is
performed by means of data VuoStd1, …, VuoStd4 and Unicl1, …, Unicl4.
Each locking zone has a number according to the actual position associated to the zone. The
following layout indicates the numbers associated to each one of the 16 zones managed ( 16
vacuum + 16 uniclamp).
1 5 9 13
2 6 10 14
3 7 11 15
4 8 12 16
22
Document: AU-049/04N
Variable PMZS must be defined in line N10 of the program file to contain the zone
configuration number. The contents of variable PMDS must be copied on bit 10 to 13 of KA
[Link] is an example:
[PARAMETRI01]
N10 … PMZS=13 … KA=13312 …
If a configuration not defined using table WTPIA is activated from console and program, then
<n> the following error appears “PLC 9703 Number of zone configuration wrong”.
23
Document: AU-049/04N
Examples of configuration
Let us see some examples of configuration of tables WTPIA1, WTVUOSTD and WTUNICL
according to existing vacuum or uniclamp zones.
What was said for table WTPIA1 also applies to tables WTPIA2, … WTPIA15: the only difference
between the table associated to configuration 1 and those associated to the remaining
configurations is the fact that these latter ones only contain data ZonaVu1, …, ZonaVu4,
ZonaUn1, …, ZonaUn4 for the definition of the zones.
Let us assume to have a machine with 8 extrusions and 4 carriages for each extrusion.
In this case we have all the possible vacuum and uniclamp zones.
Table WTPIA1 must be set as follows:
1 2 3 4 5 6 7 8
ZonaVu1 1 1 5 5 9 9 13 13
ZonaVu2 2 2 6 6 10 10 14 14
ZonaVu3 3 3 7 7 11 11 15 15
ZonaVu4 4 4 8 8 12 12 16 16
VuoStd1 1 1 5 5 9 9 13 13
VuoStd2 2 2 6 6 10 10 14 14
VuoStd3 3 3 7 7 11 11 15 15
VuoStd4 4 4 8 8 12 12 16 16
ZonaUn1 1 1 5 5 9 9 13 13
ZonaUn2 2 2 6 6 10 10 14 14
ZonaUn3 3 3 7 7 11 11 15 15
ZonaUn4 4 4 8 8 12 12 16 16
Unicl1 1 1 5 5 9 9 13 13
Unicl2 2 2 6 6 10 10 14 14
Unicl3 3 3 7 7 11 11 15 15
Unicl4 4 4 8 8 12 12 16 16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Enable 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
O_On # # # # # # # # # # # # # # # #
O_Off # # # # # # # # # # # # # # # #
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Enable 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
O_Dw # # # # # # # # # # # # # # # #
O_Up # # # # # # # # # # # # # # # #
The virtual selectors appearing on the remote console display are those indicated in the
following figure:
24
Document: AU-049/04N
Each selector can be used to select a vacuum and uniclamp locking zone.
1 13
2 14
1 2 3 4 5 6 7 8
ZonaVu1 1 1 1 1 13 13 13 13
ZonaVu2 1 1 1 1 13 13 13 13
ZonaVu3 2 2 2 2 14 14 14 14
ZonaVu4 2 2 2 2 14 14 14 14
VuoStd1 1 1 1 1 3 3 3 3
VuoStd2 1 1 1 1 3 3 3 3
VuoStd3 2 2 2 2 4 4 4 4
VuoStd4 2 2 2 2 4 4 4 4
ZonaUn1 0 0 0 0 0 0 0 0
ZonaUn2 0 0 0 0 0 0 0 0
ZonaUn3 0 0 0 0 0 0 0 0
ZonaUn4 0 0 0 0 0 0 0 0
Unicl1 0 0 0 0 0 0 0 0
Unicl2 0 0 0 0 0 0 0 0
Unicl3 0 0 0 0 0 0 0 0
Unicl4 0 0 0 0 0 0 0 0
25
Document: AU-049/04N
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Enable 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
O_On # # # # # # # # # # # # # # # #
O_Off # # # # # # # # # # # # # # # #
The virtual selectors appearing on the remote console display are those indicated in the
following figure:
1 5 9 13
1 13
2 14
26
Document: AU-049/04N
1 2 3 4 5 6 7 8
ZonaVu1 1 1 5 5 9 9 13 13
ZonaVu2 1 1 5 5 9 9 13 13
1 1 5 5 9 9 13 13
ZonaVu3
ZonaVu4 1 1 5 5 9 9 13 13
VuoStd1 1 1 2 2 3 3 4 4
VuoStd2 1 1 2 2 3 3 4 4
VuoStd3 1 1 2 2 3 3 4 4
VuoStd4 1 1 2 2 3 3 4 4
ZonaUn1 1 1 1 1 13 13 13 13
ZonaUn2 1 1 1 1 13 13 13 13
ZonaUn3 2 2 2 2 14 14 14 14
ZonaUn4 2 2 2 2 14 14 14 14
Unicl1 1 1 1 1 3 3 3 3
Unicl2 1 1 1 1 3 3 3 3
Unicl3 2 2 2 2 4 4 4 4
Unicl4 2 2 2 2 4 4 4 4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Enable 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
O_On # # # # # # # # # # # # # # # #
O_Off # # # # # # # # # # # # # # # #
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Enable 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
O_Dw # # # # # # # # # # # # # # # #
O_Up # # # # # # # # # # # # # # # #
The virtual selectors appearing on the remote console display are those indicated in the
following figure:
vacuum zone
selector
uniclamp zone
selector
27
Document: AU-049/04N
The information must be saved in the CUSTOM section of the program file as indicated in the
following example:
[CUSTOMSEZ01]
<MULTIPAN>
; first piece on origin 1 using carriages 1, 2 and 3 of work tables 1 and 2
GROUP=1
ORIGIN=1
SUPPORT=1
CARRIAGE=1
CARRIAGE=2
CARRIAGE=3
SUPPORT=2
CARRIAGE=1
CARRIAGE=2
CARRIAGE=3
28
Document: AU-049/04N
GROUP Indicates the number of the carriage group (each group corresponds
to a piece to lock).
FRONTSTOPS Indicates the number of the front stop row requested by the piece.
Row 1 is the rear row. This data item is used only if ORIGIN is not
defined or if ORIGIN equals 0.
SIDESTOPS Indicates the number of the side stop row requested by the piece.
The numbers of the rows are:
• row 1 is the left external row,
• row 2 is the left central row,
• row 3 is the right central row,
• row 4 is the right external row,
This data item is used only if ORIGIN is not defined or if ORIGIN
equals 0.
On the basis of the information passed onto section MULTIPAN, it is possible to activate the
stops as per the following criterion.
If tag ORIGIN equals 0 then stops specified in tags FRONTSTOPS and SIDESTOPS are used.
If tag ORIGIN is greater than 0 the stops used are specified in the follow table:
Origins
1 2 3 4 5 6 7 8 9 10 11 12 13 14 …
Front stops raw 1 1 1 1 2 2 2 2 3 3 3 3 4 4 …
Side stops raw 1 2 3 4 1 2 3 4 1 2 3 4 1 2 …
29
Document: AU-049/04N
Pendular machining
To perform pendular machining, the CUSTOM section can contain descriptions of all the pieces
to be machined on different origins. The PLC will use the data regarding the pieces that are on
the carriages according to the origin selected and the semi-areas engaged.
Here is an example. Let us suppose we want to lock pieces 1 and 2 when working on the left
and pieces 3 and 4 when working on the right as indicated in the following figure.
1 2 4 3
This working mode is selected from the program parameter box by means of option DYNAMIC
MULTIZONE LOCKING.
This data item can be:
30
Document: AU-049/04N
In line N10 of the program file, variable PMZD must be defined to contain the values described
above. The contents of variable PMDZ must be copied on bits 25 to 26 of KA instruction. Here
is an example:
[PARAMETRI01]
N10 … PMZD=1 … KA=33554432 …
If the program requires this locking mode, the PLC will activate the external process at the
beginning of the locking cycle.
In data item PLCTRAN\NomeProg, the PLC writes the full name of the ISO program file that
must be processed in order to extract the information on dynamic multizone locking from
section CUSTOMSEZ. The external process writes the information read in PLC table MULTIPAN.
PLC PrgAnalyser
PLC
A symbol of a set of traffic lights is used to synchronise the PLC and PrgAnalyser whereby the
external process is suspended until the PLC sends a request. When output table MULTIPAN is
ready, the exchange signal ACK_DATPAN informs the PLC (logic level high).
31
Document: AU-049/04N
During locking phase the PLC behaves as represented in the following layout.
no
START origin
pressed
yes
ye
ACK_DATPAN=1
no
no
ACK_DATPAN=1
ye
ye no
ERR_DATPAN=0 error
ACK_DATPAN=0
ok
32
Document: AU-049/04N
Any errors during data reading phase is codified on exchange signal ERR_DATPAN.
ERR_DATPAN takes the following values:
ERR_DATPAN Meaning
0 No error: data correct.
1 Error during opening of program file.
2 Error during reading of program file.
3 Section CUSTOMSEZ not found in program file.
4 Section marked incorrectly: one of the two tags <MULTIPAN> or
</MULTIPAN> is not present or is corrupted.
PLC 9678 Error during access to program file to read the data needed for the locking cycle
The value of signal ERR_DATPAN appears between brackets at the end of the message.
33
Document: AU-049/04N
PrgAnalyser application
The application behaves as represented in the following flow chart. This application can also
analyse section CUSTOMSEZ to provide the PLC with information on the Excel xp 600 mobile
stops [Link] topic will not be dealt with in this document.
no
Wake-up from
traffic lights
ye
ye no Management of
other
COD_APP=1 applications.
If COD_APP=2, the
section regarding
the positioning
of Excel XP600
mobile stops will
be searched for
Reading information from file in the file.
specified in PLCTRAN\NomeProg.
ACK_DATPAN=1
no
Reading
without errors ERR_DATPAN=error code
ye
ko
ERR_DATPAN=0
ok
34
Document: AU-049/04N
The application can be started with launch option –SiLogStdout to activate printing of logs on
file home\d_xnc\logfile\[Link]. A typical sequence of these prints is as follows:
It is possible to view the version of the application in the NC version box. The line containing
the version of this application looks like the following text:
Table MULTIPAN
This table contains the information retrieved from section CUSTOMSEZ of the program and
used by the PLC to perform the locking cycle.
Each column contains the information regarding one of the pieces that will be locked and on
which the nest program will be run.
Here below is the data contained in this table.
35
Document: AU-049/04N
In particular, data item Enab is set by the PLC. It equals 1 only for pieces that will be locked
with the current part of the program, otherwise it equals 0.
If for example:
• some pieces on the left and some pieces on the right are associated to a program and
• the dimensions in X take only one area and
• if start 1 is selected on the left
then only the columns corresponding to the pieces on the left will have Enab equal to 1. The
application on remote console needs this information (see next paragraph) for the piece
selection mode that must make it possible to select only those pieces that can actually be
locked according to the dimension in X of the program and of the origin on which the program
will be run.
The number between symbols “< >” indicates the piece currently selected, i.e. to lock (10 in
the example). The name of the origin to which the piece refers appears in the line under the
number of the piece selected.
Each time a select origin button is pressed to reserve the origin for a new program, piece 1
and relating origin are selected on the display of the remote console. Press right arrow to
increase the number of the piece selected and press left arrow to decrease the [Link] the
current program does not provide for the dynamic multizone locking mode, the console display
looks like this:
When a program has section CUSTOM correctly set and one of the two dynamic multizone
locking modes has been activated in the Parameter Box (through option DYNAMIC MULTIZONE
LOCKING), the locking sequence of each piece associated to is as follows:
36
Document: AU-049/04N
locked; when a new piece is selected and the mode is 2, then also the front stops for
that piece move up.
9. when all the pieces have been locked at least once, the light flashes at higher speed
which, as for the standard locking cycle, indicates that it is possible to press the origin
selection button to start running the program.
10. press origin selection button to deactivate all the stops.
11. execution of the program
12. at the end of the program, all the pieces are released and the bar supports are
activated if requested.
When a piece is locked, the bar supports are disabled. When a new piece is locked that shares
the same bar support electrovalve as the piece just locked, the bar supports are not activated
as otherwise they could hit the piece already locked.
When a piece is locked (pedal released), the following messages are printed in the log file
([Link]):
…
…
CicloMultipan: pezzo 2 bloccato
CicloMultipan: 2 pezzi bloccati (3 rimanenti)
…
…
The first message indicates which piece has been locked, whereas the second one indicates
how many pieces have been locked at least once and how many remain to [Link] the
example, the messages indicate that the second piece has just been locked, that two more
have been locked and that three remain to be locked (so the program has associated five
pieces).
When the last piece is locked, the following messages are printed:
…
…
CicloMultipan: pezzo 5 bloccato
CicloMultipan: tutti i pezzi sono bloccati
…
…
If definition of reference carriage or table fails then the cycle is interrupted and the following
message appears:
“PLC 9748 Dynamic multizone locking : error in the data of section CUSTOM of the
program (<number of piece>)”.
37
Document: AU-049/04N
If the number of the side stop row is lower than 1 and greater than 4, the cycle is
interrupted and the same message appears. The following message is printed in the log file:
…
…
MultiPanLetturaDati(): valore <numero fila> non ammesso per MULTIPAN\FilaBaLa (pezzo=<numero pezzo>)
…
…
If the number of the front stop row is lower than 1 and greater than 6, the cycle is
interrupted and the same message appears. The following message is printed in the log file:
…
…
MultiPanLetturaDati(): valore <numero fila> non ammesso per MULTIPAN\FilaBaFr (pezzo=<numero pezzo>)
…
…
If the number of origin is lower than 1 and greater than 24, the cycle is interrupted and the
same message appears. The following message is printed in the log file:
…
…
MultiPanLetturaDati(): valore <numero origine> non ammesso per MULTIPAN\Orig (pezzo=<numero pezzo>)
…
…
The same message is printed if from the remote console the number of piece to be selected
were greater then the total number of pieces associated to the program. This situation is
practically impossible in that the application on the console makes sure that the number of
piece is between one and the total number of pieces associated to the program.
If an origin is selected for the execution of a program, but on the work tables involved there
are no pieces of the dimension in X of the piece, then the cycle is interrupted and the following
message appears:
“PLC 9749 Dynamic multizone locking: no piece to lock with regards to the origin
selected for the program”.
Warning
1. The only M instruction that can be used for suspension is the M212 which
commands suspension without the release of the piece. If the other instructions
are given, the program is interrupted with error message “PLC 9019 Instruction
Incompatible”.
2. No dynamic multizone locking cycle is available yet with clamps and with
vacuum used together with the clamps.
38
Document: AU-049/04N
• configure data VuoStd1, …, VuoStd4, Unicl1, …, Unicl4 in WTPIA1 for the vacuum and
uniclamp electrovalves of each carriage,
• configure the outputs of the vacuum and uniclamp electrovalves for each carriage in
tables WTVUOSTD, WTUNICL,
39
Document: AU-049/04N
• The program must be generated with section CUSTOMSEZ as specified (any programs
already made with previous versions of the software must be adapted).
• The program does not have to be generated with section CUSTOMSEZ as specified (any
programs already made with previous versions of the software do not have to be
adapted). The program can therefore be generated without any reference inside as to
how the pieces must be locked.
• If the work table has independent carriages (independent vacuum and uniclamp for each
single carriage), all that needs to be done is statically group together the carriages in
locking zones by means of data ZonaVu1, ZonaVu2, … ZonaUn1, ZonaUn2, … in tables
WTPIA1, …, WTPIA15.
Comparison of both implementations shows that the first one is really useful when the work
table has independent carriages and a single piece needs to be associated to any configuration
of [Link] the other hand, the second implementation can also be used when the work
table has independent carriages, but it does not allow a piece to be associated to any
combination of carriages (it is possible to choose among the zones of the 15 configurations).
Warning
40