Schneider Electric Extension Application simulation software SIMACTEL 6.0 User Guide
تبلیغات
تبلیغات
1
1
1. Preface
A
SIMACTEL Extension, like SIMACTEL, runs under MINI XTEL-BASE, or XTEL-
BASE (version V52 or later). Certain precautions should be taken when selecting parameters for WIN-OS2 sessions, depending on which version of OS/2 is used
(OS2 2.2, WARP Red, WARP Blue). Further details can be found in part A, section 1 : Introduction and installation.
P/1
A
P/2
Introduction and installation
Section
1.3 Checking the material supplied
1.5-3 Installing SIMACTEL extension software
1.5-4 Operations following installation
Contents
Part A
A
Page
A/1
A
Introduction and installation
Chapitre
Contents
Part A
Page
A/2
1
Section 1
1
1. Introduction
1.1 General
This document describes the installation and use of SIMACTEL Extension application simulation software, reference TXT L SIM V6 EXT , on one of the following terminals equipped with an OS/2 operating system and the X-TEL software workshop :
•
FTX 507 terminal,
•
IBM PS/2 or IBM PC compatible microcomputer.
This design office software is used to develop a virtual representation of a machine or process. It then uses this representation to validate and test PLC programs.
It is an addition to the basic product TXT L SIM V6 (refer to the relevant documentation) in order to cover all the functions of a control application (discrete or analog I/O, axis control, fast counting, variable speed control etc), where the application consists of a station or a network of stations.
Functions offered by SIMACTEL Extension software
A PC equipped with SIMACTEL Extension software connected to one or more
PLCs replaces all the elements upstream of the PLC, such as the Discrete or
Analog I/O cards, the electrical interface and the process itself. A model configured using SIMACTEL Extension has the same characteristics as the installation and thus reacts in exactly the same way in relation to the control system.
To do this, SIMACTEL Extension software has the following functions :
• representation of a machine giving a full description of its mechanical and electrical parts,
• validation of this representation by simulation in offline mode,
• control of the "virtual machine" in online mode,
• display and analysis of the state of the process,
• triggering of faults in the application for debugging the PLC program(s).
A
1/1
A
1.2 Required configuration
SIMACTEL Extension requires the following minimum hardware configuration
(the same as for the basic version) :
•
PS/2 or IBM PC compatible computer with OS/2 operating system version 2.1
or version 3.0 “Warp” (the “Warp” version is recommended, ”Warp blue” or “Warp red” with the IBM fix N°11).
• a VGA screen (a high resolution screen is recommended),
• an 80386 or higher processor and an 80387 coprocessor (a 486 DX is recommended),
•
16 Mb of RAM,
• a hard disk with 20 Mb of free space,
• a mouse.
Important :
⇒
The XTEL (or Mini-XTEL) software workshop, version
≥
5.6, must be installed in the terminal.
XTEL version 5.6 requires update C for SIMACTEL Extension to operate properly.
Version 6 does not require this UPDATE.
⇒
A SIMACTEL Extension application can only be connected to TSX or PMX processors with software version 5.0 or later (see the label on the processor).
EPSON and HP Laser Jet compatible printers are necessary for printing trend diagrams of movements. To print machine and model dossiers, use your usual printer.
1.3 Checking the material supplied
SIMACTEL Extension software comprises :
• a set of 3" 1/2 SIMACTEL Extension software floppy disks,
• a set of 3" 1/2 XTEL update C floppy disks,
• a software protection key, containing the right for the Extension software
• a license agreement,
• this manual.
1/2
Introduction 1 A
1.4 Connections
This section assumes that all connections specific to the terminal (monitor, keyboard, mouse, printer, key support, PLC network connection, etc) have been made, and thus only explains how to install the software key.
This is done by inserting the software key in the free slot in the key support.
Note :
This software key contains the access right which is essential for gaining access to SIMACTEL Extension software. The Key Manager tool, supplied with X-TEL
BASE, is used to transfer this right to the master key, thus concentrating all the rights in a single key (master key) and freeing a slot in the key support. Refer to the XTEL documentation for the relevant installation procedures.
The software requires the rights of the basic SIMACTEL product, contained on the corresponding key. If necessary, these rights can be merged with the rights of the extension.
1/3
A
1.5 Software installation
1.5.1 Preliminary operations
Before installing SIMACTEL Extension software on the hard disk, it is advisable to :
• read the license certificate and warranty concerning restrictions on copying and installing the software,
• make a copy of the original installation floppy disks and use these backup copies to work with, so as to avoid any accidental damage to the originals.
Important :
The floppy disks (3” 1/2) are supplied write-protected. Do not change the position of the tab.
1.5.2 Installation procedure
The following operations must be carried out before installing SIMACTEL
Extension software :
1. Check that the version of the X-TEL V5 or MINI X-TEL software workshop installed on the terminal is at least 5.6, and that the update C is also installed
(refer to the relevant documentation). If so, proceed with the installation of
SIMACTEL Extension . If this is not the case, the software workshop must be installed first (refer to the relevant documentation).
2. Close all current XTEL tools sessions.
1.5.3 Installing SIMACTEL Extension software
• open an OS/2 full screen session,
• insert the first “SIMACTEL Extension Software” floppy disk in the drive,
• enter the driver identifier (a: or b:), then confirm with “Enter”,
• at the new prompt (for example [A:\] or [B:\], enter the SETUP command
• follow the procedure displayed on the screen for installing all the “SIMACTEL
Extension Software” floppy disks,
• once installation is complete, check the configuration. Confirm with “Enter”,
• remove the floppy disk from the drive and return to X-TEL by pressing “Ctrl” and “Esc”.
Note for users who already have the SIMACTEL basic version : installation replaces the version on the disk. It is not always necessary to install basic
SIMACTEL before SIMACTEL Extension.
1/4
Introduction 1 A
1.5.4 Operations following installation
Problems connected with the operating system
As with all software running under WINDOWS (or WIN/OS2), SIMACTEL
Extension uses the system default parameters found in the "WIN/OS2 Setup" tool
(which can be accessed via the OS2 "System Setup" group).
If any problems arise when launching SIMACTEL Extension , check that the following parameters are set correctly :
- WIN_RUN_MODE set to 3.1 Enhanced Compatibility
- DOS_FILES set to 30 (at least)
- DPMI_DOS_API set to AUTO
- DPMI_MEMORY_LIMIT set to 12 (at least)
- VIDEO_SWITCH_NOTIFICATION set to OFF
Font problem
SIMACTEL requires "Courier New" to be installed on the terminal (at WINDOWS or WIN/OS2 level). If this font is not installed, the software signals an error and cannot start up. If this occurs, the font should be added at Program Manager level
(WINDOWS or WIN-OS/2). Refer to WINDOWS documentation for instructions on how to add fonts.
Briefly, the procedure is as follows :
From the "Program Manager" group (WINDOWS or WIN-OS/2), select the "Control Panel" icon, and then the "Fonts" icon. The list of fonts installed on the terminal is displayed, as is the "Add" button. Click on this button, and then select the SYSTEM subdirectory from the directory in which WINDOWS is installed. If the "Courier New Normal (TrueType)" font is available in the list displayed, simply add it.
If the font is not displayed (ie. it is not present on the hard disk) repeat the operation using SIMACTEL Extension floppy disk no. 1 and selecting drive A.
1/5
A
1.6 Accessing the software
The access procedure is exactly the same as that used for all other
Station / Project Tools under XTEL.
However, access to multi-PLC functions is only given at project level.
XTEL workshop
Volume
Ä
Project
Ä
SIMACTEL Extension Project Tool
XTEL workshop
Volume
Ä
Project
Ä
Stations
Ä
SIMACTEL Extension Station Tool
1/6
Introduction 1 A
The procedure for accessing a SIMACTEL Extension station tool from the XTEL workshop is as follows :
Procedure
1. Open the Desktop Manager window,
2. Open the Telemecanique group,
3. Open the User window,
4. Enter the user parameters, which opens the Volumes window,
5. Open a volume,
6. Open a project,
7. Open a station,
8. Select New from the Define menu in the Station Tools window
(if the Simactel icon is not already available among the Station
Tools),
9. Select SIMACTEL,
Mouse Keyboard double-click on the icon
<Ctrl><Esc>
<
↑
> or <
↓
> double-click on
<Enter>
<
↑
> or <
↓
>
Telemecanique <Enter> double-click on XTEL <
↑
> or <
↓
> click in the data entry
<Enter>
<
↓
>, xxx, field, xxx, OK <Enter> double-click on the volume icon double-click on the project icon double-click on the station icon click on Define menu,
New double-click on simactel
10. Open the SIMACTEL window.
double-click on the
Simactel icon
<Alt>
<
→
> Window
<
↓
>
<
↓
> Volumes
<Enter>
<Tab>
<F2> as for Volumes
<
↓
> Projects as for Volumes
<
↓
> Stations
<Alt>
<
→
> Window
<
↓
>
<
↓
><StationTools>
<Enter>
<Alt>
<
→
><Define>
<
↓
><New>
<Enter>
<
↓
><simactel>
<Enter> as for Volumes
<
↓
> Station Tools
1/7
A
Alternatively, the XTEL BROWSER can be used.
Procedure
1. Open the Desktop Manager window,
2. Open the Telemecanique group,
3. Open the Xtel Browser window,
4. Enter the user parameters, which opens the browser,
5. Use the browser to find the
Simactel station tool for the required station,
6. Open the SIMACTEL window.
Mouse Keyboard double-click on the icon <Ctrl><Esc>
<
↑
> or <
↓
>
<Enter> double-click on Telemecanique <
↑
> or <
↓
> double-click on Xtel Browser click in the data entry field, xxx,
OK click on the items
<Enter>
<
↑
> or <
↓
>
<Enter>
<
↓
>, xxx,
<Enter>
<
→
> simactel double-click on the simactel item
<Enter>
To access the SIMACTEL Extension PROJECT tool (multi-station access), simply select the corresponding icon from the list of XTEL project tools.
1/8
Creating an application Contents
Part B
Section
1.1-2 Numeric variables : definition and evaluation
1.1-3 Taking account of logic expressions
1.1-4 Variable speed of movements
1.1.6 External numeric variables
1.3 Methodology and recommendations for use
2.2 Declaring numeric variables
2.2-1 References to numeric variables
2.2-2 Management at Grafcet chart level
2.5 Declaring exchange word tables
2.7 Multistation configuration
Page
B
1
Creating an application
B
Chapitre
Contents
Part B
Page
2
Section 1
1. Introduction
Note
We hereafter assume that the reader is familiar with the basic product
(SIMACTEL) configuration as the extension product is in fact an addition to that product :
• description of the axes and the mechanical part,
• description of the relay interface,
• description of the I/O modules,
• description of the operator panels,
• description of the views,
• description of the models,
• entering Grafcet charts for offline simulation.
Readers unfamiliar with the above should refer to the relevant parts of the basic product documentation (part B of the SIMACTEL manual).
1.1 Numeric aspects
The concept of an axis with sensors is highly suitable for modeling actuators whose position is only perceived by the PLC at certain well-defined points at which Boolean reports are sent. It is, however, impractical if the position of a moving part, or the value of a physical measurement, has to be monitored
"continuously", or at least treated as a discrete value for a given step.
For example, this is the case for modeling an encoder where the position on an axis is identified by a certain number of bits.
For this reason the concepts of sampled axes and numeric variables have been introduced into SIMACTEL Extension .
Moreover, Simactel Extension can handle numeric variables, which means it is possible to tackle particularly difficult model conversions with the SIMACTEL basic product.
Let us take the example of a vat which is filled using two “discrete” control valves and emptied by a third. If it is not possible to describe the change in level of this vat by a movement of variable speed, 5 movements - perhaps 7 if the inflows have different values - must be defined and activated depending on the possible opening combinations of the valves. Moreover, if the valves are proportional valves, the concept of movement at constant speed is too limiting.
B
1/1
B
Numeric aspects introduced into SIMACTEL Extension : sampled axes and description of numeric variables, which can be used to extend the use of
SIMACTEL to applications with a high analog component, which is often translated in control system architecture by the use of special modules such as : analog I/O modules, axis control modules, fast counters, speed controllers, etc.
SIMACTEL Extension can therefore be used to integrate these modules and reproduce during the simulation all the associated bit and word exchanges : I/O,
RI/RO, IW/OW, RIW/ROW. These read/write possibilities have been extended to take account of Wi words : up to 512 words, processed as output words, can be read and up to 512 words, processed as input words, can be written.
1.1.1 Sampled axes
A sampled axis, as compared with a "standard" axis, has an additional characteristic, its "step", which is defined by a numeric value. This corresponds to the precision with which the measurement associated with the axis is modeled.
If the axis "ax-i" is sampled, the variable "ax-i" takes the value of the current number of steps in this axis and can be used as a numeric measurement for modeling. In particular, it can be converted into code.
On this basis, the modeling of an encoder over 10 bits can be performed by means of an axis with a length of 1023 and step of 1. Code conversion will be performed, if necessary, by means of a numeric variable, as will be seen later.
Apart from the number of steps of a sampled axis, two other data items, which are Boolean, are available and can be used in the combined description variables and sensors equations : they are "+ax-i" and "-ax-i". They are true momentarily when the number of steps in the axis is incremented and decremented respectively.
1.1.2 Numeric variables : definition and evaluation
The value of a numeric variable is defined by an "assignments table", a series of assignment lines which may be conditioned.
The assignment can be a constant, a numeric variable or a position on the sampled axis, or an output register. We will return to this possibility in the section about the link with I/O (see 1.1.5).
1/2
3
Introduction 1
The assignment can also be an elementary process which requires an "operator" and an "operand" :
• code conversion of another numeric measurement,
• incrementation or decrementation when an expression changes to "1",
• arithmetic operation on a constant or other numeric variable : addition, subtraction, multiplication, division,
• mathematical expression as a function of a constant or other numeric variable : cos, sin, exp, sqrt, log, abs,
• logic expression : shift left or right (shl,shr), logic and/or.
Opposite the assignment, a relative Boolean condition can be inserted :
• event on a Boolean variable (rising or falling edge),
• state of a Boolean variable,
• equality or comparison test on numeric variables,
• logic expression of several Boolean or numeric variables.
A numeric variable, which is being simulated, is evaluated by executing sequentially on each simulation "cycle" assignments whose condition has been verified. At the end of the cycle the value of the variable will be equal to the result of the last assignment made. In the case of incrementation or decrementation, the operation is performed when the condition changes to its true state.
Let us suppose that we wish to define a variable Y which continuously verifies the following equation :
Y = A * X² + B * X + C where X is a numeric variable.
The assignment table for Y will be as follows :
B
Assignments
A
* X
+ B
* X
+ C
1/3
B
All of the numeric variables present in the modeling of a machine are processed according to the same principles as Boolean variables : an evaluation is made when one of the terms in the variable assignment table changes state, or value if another numeric variable is concerned.
All variables in which this term is used are evaluated "synchronously", ie. only assigning new values, if there are any, when all the variables concerned have been evaluated. This ensures that the result of the evaluation does not depend on the order in which these variables have been described.
This makes it possible, for example, to model a shift register containing numeric values. Let us suppose that each position in the register is represented by a numeric variable "Ri". To be able to shift to the "right" or to the "left" as variables
"shr" and "shl" respectively change to 1, the assignment table for RI will be as follows :
•
Ri:
Assignments Conditions
Ri-1
Ri+1
< +shr
< +shl
Explanation : variable Ri will have the value Ri-1 when variable shr appears, it will have the value Ri+1 when variable shl appears.
1.1.3 Taking account of logic expressions
Numeric variables and sampled axes can be used in Boolean description variables and in movement equations in two ways :
•
Either by means of comparisons with other numeric variables or constants, for example : level > 10,
• or by bit extraction : "varnum,n" is true if the nth bit (counting from 0) of the binary coding of the value of variable "varnum" is "1".
This also applies for conditions on assignments of numeric variables.
1/4
5
Introduction 1
1.1.4 Variable speed of movements
The speed of a movement in SIMACTEL Extension can be the value of a numeric variable. If the variable has a negative value, the direction of movement is reversed in relation to that defined during configuration.
INLET VALVE 1 INLET VALVE 2
B variable speed
VALVE V
Vat with 3 valves
The example of the vat mentioned in the introduction can be processed in the following way :
Suppose that valves valve1 and valve2 give inflows which cause a variation in the level of the vat with respective speeds of 10 and 5, while the outflow via valve3 causes the level in the vat to fall at a speed of 12.
From a default value of 0, the assignment table below can be used to calculate the variation speed resulting from the level of the vat, by algebraic summation as a function of Boolean conditions representing the opening of the valves :
• speed :
•
Assignments Conditions
0
+ 10
+ 5
- 12
< valve1
< valve2
< valve3
1/5
B
Explanation : the speed is 0 if valves 1, 2 and 3 are closed, the speed is plus 10 if valve 1 is opened, the speed is plus 5 if valve 2 is opened, it is minus 12 if valve 3 is opened.
The activation condition - or equation - of the filling/emptying movement is thus the logical sum of the opening of the valves, ie. : valve1 + valve2 + valve3.
When the axis end limit is reached - the vat is full or empty - movement is deactivated. However, the variable which describes the speed can retain a nonzero value as long as one of the valves remains open.
On the contrary, if the variable speed of a movement is canceled, movement stops.
Since the speed of a movement can be varied, it is possible to do without the equation which defines the activation condition, required for movements at constant speed. This equation may however still be necessary for describing - for example - an energy condition, (useless here in the example of the vat, as the actuator is gravity).
1.1.5 Links with the I/O
SIMACTEL Extension exchanges numeric data via the PLC IW/OW, RIW/ROW registers. Communication with the PLC is as follows :
• to send a numeric value to the simulator, simply assign this value to a PLC output register, and, if necessary, perform rescaling. For example, the speed of a movement can be read from the PLC by the following assignment table :
Assignments
0
+ OW1,2
+ 5
- 12
Conditions
< valve1
< valve2
< valve3
• reciprocally, a numeric value is transmitted to the PLC by copying it to an input register, for example IW20,0 = position, position being a numeric variable calculated by SIMACTEL Extension .
1/6
7
Introduction 1
An encoder feeding back a Gray code (or "reflected binary code") value to a PLC is modeled in the following way : the number of steps of a sampled axis is converted by means of ad hoc code conversion into a numeric variable, ie.
"val-gray". The value of the val-gray variable is transmitted to the appropriate register in the PLC.
For example : monitored axis (sampled) : ax-1 ; corresponds to the
step of the axis numeric variable val-g ray assignment table : gray ax-1 input register assignment :
IW5,8 val-gray
B
1.1.6 External numeric variables
Unlike external Boolean variables which appear implicitly when a non-defined term is introduced into a logic expression, external numeric variables must be defined explicitly by the user, insofar as any numeric variable whose assignment table is empty becomes an external numeric variable. The user has the opportunity - during simulation - to introduce a value to this variable at any moment.
1.2 Multistation aspects
The SIMACTEL Extension product makes it possible to simulate an automated system whose control system is divided between several PLCs.
This possibility is available at project tool level.
A multi-PLC configuration consists of describing as many I/O configurations as there are PLCs in the control architecture, and this within a single machine. Each
I/O configuration is associated with a project station.
The I/O addresses of each of the PLCs are prefixed by the index of the corresponding I/O configuration.
Each I/O configuration can be described in 3 different ways :
• by retrieval ("Linking") directly from the station XTEL-CONF configuration,
• by reading an FNES format file,
• by manually declaring the simulated DISCRETE/ANA modules.
For each I/O configuration, mnemonics/comments associated with the I/O are retrieved using the SDBASE tool.
1/7
B
1.3 Methodology and recommendations for use
1.3.1 Numeric aspects
The principle of sampled axes can be used to simulate developments of certain measurements "continuously" such as the mechanical position of a moving part, level of a vat, weight of a product, physical measurements of temperature, pressure etc.
Nevertheless, the simulation principle is still that of simulation by events : any change of step on an axis is classed as a change of sensor state type event.
It is thus clear that, for performance reasons, sampled axes must be used with caution. It is particularly advisable to limit the number of steps on an axis as much as possible, in each case taking into consideration the real need of the systems engineer responsible for debugging the application.
Moreover, sampled axes and numeric variables can be used to reproduce the behavior of certain physical measurements, after preliminary analysis. In the case of a "2nd order" measurement. it is possible, for example, to create an axis simulating the variable for which the rate of change will itself be given by the position of a second axis corresponding to the "derivative" of the variable! On the second axis, the corresponding speed is therefore the "second derivative".
For modeling via a transfer function (the case for linear systems), transforms
(especially the "Z transform") are used to obtain simple equations (to transcribe to the assignment tables) calculating the successive samples of a variable. A rotary axis can therefore generate "0 markers" corresponding to the sampling period.
Nevertheless, as SIMACTEL Extension is still based on the principle of simulation by events, and not on the principle of realtime simulation, these modeling methods should be used with great care, simply because it is impossible to guarantee a sampling frequency for the calculated variables in all cases. Consequently, it is not possible, in principle, to use SIMACTEL
Extension to test the behavior of control loops on a test bed.
Experience also shows that the gains made do not relate to the efforts necessary for modeling since :
• on the one hand, it is often difficult to obtain enough information for detailed modeling,
• on the other hand, loop adjustments must always be made on site with the actual process.
As for the selection of a step on a sampled axis, the SIMACTEL Extension user must analyze the real need for tuning on a test bed in order to define the required, sufficient, level of modeling for the physical measurements.
1/8
9
Introduction 1
1.3.2 Multistation aspects
Multistation simulation consists of developing a single model of the machine or plant controlled by a control architecture divided between several stations. It is justified in the following cases :
• when the PL7-3 applications on each station are highly interdependent
(exchanges of COM words, redundancy management, production flow control strategy etc),
• when “level 2” functions exist within the architecture which interact with the stations and which also require testing (monitoring, production management),
• when there is strong interaction between the zones of the machine or plant controlled by different stations (production flow, materials handling systems, etc).
However, the following methodology is strongly recommended :
• first simulate a single station, station by station, as far as possible,
• then reserve the multistation simulation for specific predefined additional tests, linked to the architecture.
This structured approach is essential to avoid a multitude of diverse nonconformances when multistation simulation begins, and also to ensure exhaustive multistation tests (which assume very specific scenarios depending on the tests performed).
Two methodological approaches can be used to switch from single station simulation to multistation simulation :
• first approach
- each single station simulation is treated independently, according to the usual methodology (refer to the SIMACTEL documentation)
- global modeling of the application can then be developed by concatenating the constituent applications. The machines must be copied from the station machines where necessary. To do this, the best approach is to select one of the applications and transform it into a multistation application : its I/O configuration thus becomes I/O configuration No. 1. Each of the other applications should be transformed into a "model" (reducing a machine to a model), then instantiated as a model in the first application (this allows the user to make use of the "clashes" function which handles redundant terms).
To do this, refer to the SIMACTEL documentation.
B
1/9
B
• second approach
- a global multistation application is created at the outset, corresponding to the whole of the machine or plant with its various I/O configurations. The control charts can be used, as for any SIMACTEL application, to create a simulation in offline mode.
- setting up a single station simulation in online mode can make use of this global model, the station physically connected substitutes itself for control charts for the part of the application concerned. The other parts of the application continue to be simulated, but are controlled locally by SIMACTEL charts.
- setting up a multistation simulation in online mode (all or some of the stations) consists in the same way of not loading the SIMACTEL control charts for the parts of the application physically controlled by stations. One restriction is that only a single Grafcet file can be loaded to simulate all or part of the application in offline mode. It is therefore necessary to provide a
Grafcet file for each possible configuration (division between offline and online mode) containing only the required control charts.
The selection of one or other of these approaches depends on the organization of the project (planning and resource management, ie. whether or not to develop stations in parallel), and also on the degree of "stability” of the design of the machine or plant. In fact, the machine or plant can sometimes develop during simulations. The second approach (which is oriented towards single stations in parallel), will rigorously propagate any possible development of the machine or plant on the various platforms. Nevertheless, this second approach can be used to construct a global model as quickly as possible, and to make use of it, using simulation in offline mode, for functional analysis confirmation actions, even for testing the size of installations (especially in materials handling), and to confirm initial flow simulations.
1/10
Section 2
2. Configuration
2.1 Declaring sampled axes
In the axis configuration window, checking the "Sampled" box defines that axis as sampled. The number entered via the keyboard will correspond to the "step" of the axis, namely the distance between 2 successive movements of the axis
(except for real sensors)
B
Axis configuration window
2/1
B
2.2 Declaring numeric variables
The window for editing the axes accesses (by pressing the Num. Var.
button) the numeric variables configuration.
Numeric variables editor window
A numeric variable is defined by its mnemonic (10 characters)
A minimum and maximum value can also be associated with it, which determine its variation range.
Its value is updated by a conditioned assignments table.
The Edit , Replace and Delete commands relate to the selected line in the assignments table.
The Add and Insert commands can be used to add the contents of the
Assignment and Condition fields to the assignment table.
Unlike external Boolean variables which appear implicitly when a non-defined term is introduced into a logic expression, external numeric variables must be defined explicitly. This is done by checking the Ext. Var.
box in the configuration window.
The OK command is used to associate the table with the variable.
2/2
Configuration 2
The “posi” variable described below describes the target position for an axis control module.
In the case of a PIC 2 program step it is 30 (line 1 in the table)
In the case of an initial positioning of the moving part, the position of the moving part is given by the PLC (line 4), using the OW11,0 register. Taking account of the unit selected in the model, line 5 can be used to readjust the value by dividing it by 10000.
Details of assignments :
• simple assignment output register output table <output>[n]
(integer n from 1 to 32) integer constant constant expressed in hexadecimal other numeric variable
• coding btd <numeric variable> dtb <numeric variable> btg <numeric variable> gtb <numeric variable> bdr <numeric variable> example
OW03,1
O03,1[5]
13
H00FE level binary->decimal conversion decimal-> binary conversion binary->gray conversion gray->binary conversion binary->BDR+3 code conversion
• increment, decrement
+, -
• addition, subtraction
+ <numeric variable>
- <numeric variable> example
+ position
- HFF02
• multiplication, division
* <numeric variable>
/ <numeric variable>
• reading "number of steps" of a sampled axis ax-i
• mathematical functions cos,sin,exp,sqrt,log,abs <numeric variable>
•
"logic" functions shl n shift left
(integer n from 1 to 15) shr n and n shift right logic AND or n xor n logic OR exclusive OR
* scale
/ 100 example shr 3
B
2/3
B
2.2.1 References to numeric variables
Numeric variables can be referenced :
.
• in relay logic, logic variables, movement and input logic equations, via comparisons or variable bits,
Examples : forward = (position < 20) automode = mode,2
• in movement speeds :
To do this, instead of designating the name of the numeric variable which varies this speed, simply enter a number in the movement edit window,
• in the input registers IW, RIW:
To do this, simply associate an equation containing the numeric variable as the only term with the register,
Example : IW1,2 = position
• in the assignments table (or associated conditions) of other numeric variables.
2.2.2 Management at Grafcet chart level
At Grafcet chart level, it is possible to assign a value to a numeric variable, provided it is declared as external, in a step action.
Example : speed = 4
The value of a numeric variable can be tested in a transition or action condition.
2.2.3 Views
The current value of numeric variables can be displayed in a box on the views
(absolute number or number coded in hexadecimal format if the Hex. box is checked).
2/4
Configuration 2
2.3 Declaring analog modules
In the I/O configuration edit window, it is possible to declare analog modules.
As for discrete modules, these can be retrieved directly from the XTEL-CONF configuration of the current station. This operation can be performed when creating or modifying the I/O configuration, with the item "XTEL->CASC" of the
XTEL-CONF tool having already been activated.
This retrieval determines the objects associated with each module (or TBX) : I/O,
RI/RO, IW/OW, RIW/ROW.
Example : In the XTEL-CONF tool an AXM 172 module is declared at slot
2 of the main rack. The retrieval of the XTEL configuration generates objects I02,8 to I02,F, O02,0 to O02,7, IW02,0 to
IW02,7 and OW02,0 to OW02,7 and can access them in edit mode.
If there is no XTEL configuration, it is still possible to enter "generic” types, representative of the number of I/O associated with the modules (I/O).
Generic codes :
Rack modules
16 inputs + NUM
16 outputs + NUM
8 I/O + NUM
FIPIO modules
4 numeric inputs
6 numeric inputs/2 numeric outputs
2 numeric outputs
8 numeric I/O
16 numeric I/O
For the example above (axis control module), the "8 I/O+NUM" type should be selected from the list offered.
It is also possible, for all these modules, to select the "non-simulated" type, which corresponds to modules which are physically present, whose outputs and output registers the user wishes to simulate, while reading their inputs explicitly.
B
2/5
B
2.4 Editing I/O registers
The I/O configuration determines the addresses of the I/O and the IW/OW,
RIW/ROW registers and is used to edit them. For I/O/RI/RO I/O, the same edit windows as for discrete modules can be accessed (see basic product).
For numeric registers, an edit window is accessed in which the various register fields can be completed :
• add a mnemonic or comment,
• define an assignment for the input register (the name of a numeric variable).
Input register edit window
2/6
2.5 Declaring exchange word tables
A special window is used to declare the 2 word zones :
• the table of words sent ("written") by the simulator,
• the table of words received ("read") by the simulator.
The length of the tables is 512 maximum.
Configuration 2
B
Exchange word table configuration window
A consistency check between the 2 tables is performed (they must be separate).
Pressing OK generates associated objects (Wi and DWi).
In the above example :
• start of W1 input words table, length 10,
• start of W20 output words table, length 15.
Input words W1 to W10, and double words DW1 to DW10 are generated ; output words W20 to W34, and double words DW20 to DW34 are generated.
A possible use of the words is to simulate exchanges with the PLC, either in explicit reading (AEM 16 channels...), or in transferring text blocks on the X-WAY network. However, it is then necessary to modify the PL7_3 program.
Example : extract of PL7-3 program simulated mode value in W10 otherwise explicit reading
! if mode_simul then W10 -> Level
else readext( Ixy ; Level )
! if Level > Max-tolerated then set valve1
! if Level > Max-safety then set valve2 mode _simul having been obtained by system bit SY122 which shows that the application is simulating
2/7
B
2.6 Editing words
The exchange word table configuration determines the list of input and output words, which can then be edited.
The following can be associated with each word and double word written by the simulator :
• an equation containing a term (the name of a numeric variable),
• a mnemonic and a comment.
The type of double word is 32 bits signed by default.
This can be changed by checking the Floating radio button in the double word edit window.
Input words edit window
A word or double word can be referenced in a numeric variable.
Example :
• speed = DW1(speed is a numeric variable),
• the speed is copied into a speed of movement along an axis,
• as the axis is sampled, a monitoring variable can be associated with it and it can be copied to a word or double word :
DW10 = position
2/8
Configuration 2
2.7 Multistation configuration
Warning
Multistation operation is only offered in the SIMACTEL Extension project tool.
From the I/O configuration item in the XTEL project level description environment, the following window can be accessed :
B
Multistation edit window
The stations are those of the selected project, TSX7 or PMX7 type.
8 I/O configurations can be configured in the machine.
To add a given I/O configuration to the machine, first select the project from the
XTEL projects available in the current volume, then the project station. Then click on the Edit/Add item of the menu.
The objects generated all start with a figure indicating the number of the I/O configuration (from 1 to 8).
Example : input I02,A of I/O configuration No. 1 has the reference 1I02,A.
2/9
B
The other commands available from the menu are :
•
Edit
- Clear : deletes, after confirmation, the selected I/O configuration.
•
Zoom : on the selected I/O configuration
- I/O configuration : accesses the configuration window of the I/O configuration modules, with the possibility of manually declaring the modules (control modules and TBX DISCRETE or ANA modules) and the non-simulated modules, where there is no XTEL configuration available,
- I/O -> accesses the I/O edit window (equations + mnemonics).
•
Linking on the current selected station :
- retrieval of module slots ( XTEL-CONF item or FNES File item) : generation of objects I,O,RI,RO,IW,OW,RIW,ROW,
- retrieval of mnemonics ( SDBASE File item or Neutral File item).
Notes :
•
It is possible to edit a single station machine developed with the
SIMACTEL Base or SIMACTEL Extension tool. A multi-PLC item situated in the I/O edit window can be used to complete the machine with other I/O configurations.
•
It is possible to associate a station with the selected I/O configuration, if it does not have an associated station (ie. if the selection from the list of I/O configurations contains an I/O configuration not associated with a station, adding a station determines the station of this I/O, without adding another).
•
At station tool level, it is not possible to edit a multistation I/O configuration.
A warning message appears.
2/10
Simulation Contents
Part C
Section
2.2 Examining numeric variables
2.3 Examining input and output registers
2.4 Actions on external numeric variables
2.5 Taking account of numeric variables in contexts
2.6 Taking account of numeric variables in traps
2.7 Numeric variables in scenarios
3. Single station online simulation
3.2-2 Principle of loading the OFB
3.3 Exchanges during simulation
3.3-1 Exchange modes (implicit/explicit)
3.3-2 Mechanism for the exchanges
Page
C
1
Simulation Contents
Part C
C
Section
3.4-1 Display of register evolution graphs
3.4-2 Displaying exchange words
3.4-3 Default setting of in-rack and remote I/O modules
4. Multistation online simulation
Page
2
Section 1
1
1. Introduction
Note
We hereafter assume that the reader is familiar with simulation using the basic
SIMACTEL product.
Readers unfamiliar with the above should refer to the relevant parts of the manual.
The SIMACTEL Extension product has the same interfaces as the basic product, notably concerning the simulation environment.
In the section which follows, we will only refer to differences from the basic product, in particular :
• numeric variables
• exchanges with the PLC and access to the registers
• multistation simulation
C
1.1 "Analog" simulation
"Analog" simulation consists of reproducing as closely as possible changes over time of numeric measurements. Within the framework of SIMACTEL Extension, it is necessary to keep in mind the time processing mode. Simulation is said to be "by events", namely that time progression is made following the time of the occurrence of the last "discrete" event (generally the change of state of a sensor).
Depending on the outputs transmitted by the control system, the machine model can be used to determine which inputs will evolve and in which order.
As for numeric measurements, two types of processing have been added to
“Boolean” processing :
• the re-evaluation at the current time of the numeric variables assignment tables, and propagation to the variables which depend on these,
• adding "modification of the current step" events for sampled axes which evolve, and propagation to the machine or plant.
1/1
C
1.2 Multistation simulation
This is specific to the SIMACTEL Extension PROJECT tool.
As we have seen in the description part, several I/O configurations can be created within a single machine. In the XTEL environment, these I/O configurations are associated with stations.
For the simulation part, these stations are connected via an X-WAY network.
1/2
Section 2
2
2. Simulation environment
2.1 Introduction
In the simulation environment, differences from the basic product most notably occur with the following tools :
• examining numeric variables and registers,
• processing numeric variables in simulation contexts,
• modifying the value of external numeric variables,
• comparison test on numeric variables in traps,
• using numeric variables in scenarios.
C
2.2 Examining numeric variables
Like Boolean variables, numeric variables can be examined (only in simulator interrupt mode).
There are two possible ways to access examination of numeric variables :
• from the Examination item of the main menu,
• by double-clicking in a view on the box associated with the required numeric variable (it should have been declared during description of the views).
The current value of the numeric variable is displayed.
The table associated with the variable is also displayed. Assignments whose associated condition has been checked are displayed in bold with the corresponding intermediate result.
Examination can be performed by clicking on a variable used in an assignment or in the condition which may be associated with an assignment.
Numeric variable examination window
2/1
C
2.3 Examining input and output registers
In online single or multistation simulation, it is possible to examine (in simulation interrupt mode only) the input or output registers of the current machine.
The current value of the variable is displayed. It is also possible for input registers to return to the screen of the numeric variable used in the associated equation.
Example : if the user has configured IW00,1 = position the value of the register is displayed; the user can access the examination of numeric variable position.
IW register sequenced examination windows
2/2
Simulation environment 2
2.4 Actions on external numeric variables
External numeric variables are defined explicitly during configuration.
Their value, which is not determined by an assignment table, should be set by the operator during simulation.
These variables are accessed via the "Modify External Variables" window, activated by the External item in the Simulation screen. The external numeric variables figure among the external Boolean variables in the left-hand list.
Selecting one of these variables displays a window : the editor in this window can be used to enter the value to be given to the variable.
2.5 Taking account of numeric variables in contexts
The concept of "contexts", which can be used to restore, on each initialization of the simulation, a logic state of the external Boolean variables and operator panels, is extended to external numeric variables. The value assigned to them can thus be saved and restored on initialization.
C
2.6 Taking account of numeric variables in traps
Traps can be used to interrupt the progress of simulation when a situation characterized by an event and/or condition occurs.
Numeric variables and sampled axes can change the condition of these traps by means of comparisons affecting their value.
Example : condition of threshold trap :
(position > 150)
2/3
C
2.7 Numeric variables in scenarios
Scenarios can be used to save actions on operator panels and external variables in order to be able to restore them automatically. This possibility is extended to external numeric variables.
Scenarios also have the concept of reaction. For Boolean variables a reaction consists simply of a change of state. These reactions are saved for variables which have been associated with the scenario in the "preparation" phase.
Another way of introducing reactions into a scenario is to edit the scenario in order to insert an appropriate syntax line.
Reactions are not saved for numeric variables and sampled axes. It is however possible to test these variables with a simulation trap condition and to save then check during execution of the scenario - the changes in state of these traps, as it is possible to declare reactions on traps.
Alternatively, it is possible to insert a reaction affecting a numeric variable in a scenario using the edit function. The following syntax should be used :
=> <numeric variable> <predicate> <value> with an indication, if necessary, of the duration if there is a delay in the reaction appearing.
2/4
Section 3
3
3. Single station online simulation
3.1 Introduction
3.1.1 Exchanges with the PLC
This is similar to the SIMACTEL/PLC dialog mode.
In online mode, SIMACTEL exchanges the I/O with the PLC to simulate the behavior of the application. These exchanges are performed using the two software modules : the communication server and the simulation OFB.
SIMACTEL communicates with the communication server which exchanges the
I/O with the simulation OFB. The simulation OFB is responsible for providing the
PLC with the I/O changes. The diagram below illustrates the I/O exchanges between SIMACTEL and the PLC according to 4 modules :
• the SIMACTEL Extension kernel
• the communication server
• the OFB
• the PLC program
FTX - P.C + WINOS2 TSX 7 - PMX 7 V5
C
SIMACTEL
Extension
DDE
Communication
Server
X-WAY
OFB
Extension
PLC
Program
The main differences between SIMACTEL and SIMACTEL Extension are as follows :
• exchanges involve discrete I/O, I/O registers and words at the same time.
• the simulation OFB is designed for these exchanges : it is the OFB Extension called up in the PL7-3 interface : SIMACEXT.
• the communication sever (software module) can be used to display the changes in IW/OW and words.
3/1
C
3.2 Setup
3.2.1 Hardware setup
Like the basic product, SIMACTEL Extension relies on the X-WAY services available on the X-TEL workshop to communicate (terminal port, UNI-TELWAY link, FIPWAY, ETHWAY, MAPWAY), as long as the corresponding physical supports are used.
The user need only refer to the corresponding documentation for the relevant drivers.
As a reminder, the terminal port and UNI-TELWAY connections are performed in the following way :
•
The PLC/SIMACTEL connection is via the CL/RS485 or RS232 port on the
FTX, or via the RS232 port in the case of a PC.
•
For type xx.455 CPUs, the use of an SCM 21 communication card will be required for any RS485 simulation (UNI-TELWAY).
As an example, the connections required when using an FTX terminal are listed below :
FTX - PLC connection
The possible connections are as follows :
•
FTX C.L output
•
FTX RS 232 output
>>
>>
Terminal Port
Terminal Port
(TSX TE 01 converter)
•
FTX RS 232 output >> Integral UNI-TELWAY port
(Cpu xx.425)(TSX SCA 72 converter)
•
FTX RS 232 output >> SCM 21 port
(TSX SCA 72 converter)
•
FTX RS 485 output >> Integral UNI-TELWAY port
(CPU xx.425)
•
FTX RS 485 output >> SCM 21 port
Once the connections have been made, check the software connection by connecting it, for example, using the XTEL-CONTROL tool.
3/2
Single station online simulation 3
3.2.2 Principle of loading the OFB
Before starting a simulation, the SIMACEXT OFB (the special OFB for
SIMACTEL Extension ) must be loaded into the PLC application (refer to the
PL7-3 V5 Operating Modes manual, sections 6.1, 6.7 and 6.11 of part B, section
10.3 of part F and section 14.2 of part G) :
•
Access the SELECT CONFIGURATION MODE screen via the CONFIGURE command in the MODE SELECTION screen. This mode includes 7 headings one of which is used to configure the Optional Function Blocks.
•
Access the CONFIGURE OPTIONAL FUNCTION BLOCKS screen via the
OPTIONAL FUNCTION BLOCKS command .
This screen is used to load the
OFB into the PLC application. The OFBs available are divided into families, thus an instance of the SIMACEXT OFB from the SIMACTEL family should be loaded.
•
Use the command [NEW OFB] to list the OFBs available on the disk.
•
Find the SIMACTEL family using the commands [PREV FAM] and [NEXT
FAM] . The SIMACEXT OFB appears in the left-hand list.
•
Use the command [INS] to select the OFB and confirm with ENTER.
• Select one instance of the OFB using the command [MODIFY] , then the number 1 and confirm with Enter. The application must now be reconfigured for the OFB to be taken into account.
•
From the SELECT RECONFIGURATION MODE screen, choose the
RECONFIGURATION DIAGNOSTICS command which is used to check the consistency between the user program and the new configuration. At the end of the check, if everything is correct, the message CHECK CORRECT is displayed. Note that it is possible to abort the modifications using the
[ABORT] command before reconfiguring the application.
•
Then use the RECONFIGURE command to transfer the new configuration to the memory reserved for the application. Confirm the reconfiguration with the command [YES] . If the configuration is correct, the user returns to the MODE
SELECTION screen and the message RECONFIGURATION CORRECT is displayed.
•
Finally reload the application into the PLC and the PLC program is ready to be simulated.
For a machine which does not have I/O registers, it is not necessary to load the SIMACEXT OFB into the PL7-3 application, which takes up more space inside the application. The Standard SIMACTEL OFB, which is all that is required to manage discrete exchanges, can be loaded.
C
3/3
C
3.3 Exchanges during simulation
3.3.1 Exchange modes (implicit/explicit)
Two modes of exchange with the PLC are available, in addition to the normal discrete I/O exchanges :
•
Implicit simulation of RIW and IW
The RIW and IW registers are sent directly from the simulation kernel to the
PLC, without modifying the PL7-3 program.
IW,RIW
Simactel PL7_3 Xtel Function
< Direct access to variable Iw
! Iwx,y ➜ Level
! if Level > Max-tolerated then set valve1
! if Level > Max-safety then set valve2
Simulation of a physical measurement by numeric variable
Simulation PL7-3 Program
Exchanges are thus direct from the application to the PLC.
The OFB is responsible for reproducing the behavior of the modules.
For simulated modules, it is responsible for writing the change of inputs and input register values to the PLC memory. It also reads the discrete outputs and the output registers values.
For non-simulated modules, the OFB reproduces the standard behavior of reading/writing discrete I/O and registers.
•
Explicit simulation of exchanges (eg : 16-channel AEM, UNI-TELWAY bus : speed controller, etc)
Exchanges are simulated by the configured words tables. However, it is necessary to modify the program, in order to divert the explicit exchanges. To do this, use the SY122 simulation system bit, which is set to 1 during simulation.
3/4
Simulation of a physical measurement by numeric variable transfer of Wi
Single station online simulation 3
3.3.2 Mechanism for the exchanges
SIMACTEL Extension and the PLC communicate via the communication server which is responsible for exchanging the I/O with the simulation OFB. Thus, when
SIMACTEL Extension advances the application model, the changes to the inputs, input registers and input words are communicated to the server. The server then communicates this to the OFB which then copies them to the PLC.
The changes to the outputs, output registers and output words resulting from the reaction of the PLC program are then returned to SIMACTEL Extension by the
OFB.
To provide the PLC with the changes in the state of the inputs, the OFB has commands for writing directly to the PLC memory. The changes to the outputs are obtained via a direct read command from the PLC output image memory. By comparing this to the former contents memorized previously, the OFB deduces the outputs for which the state has been modified. In fact, the OFB keeps its own image memory of the I/O.
Warning :
As for the SIMACTEL standard OFB, there are 2 types of behavior : l
In-rack I/O : the OFB diverts the exchanges and writes explicitly on the bus.
In addition, at the start of simulation, the OFB resets the outputs of the simulated output modules to 0.
l For simulation of remote I/O, there are two cases :
- All the remote I/O modules declared in X-TEL CONF are simulated by
SIMACTEL and the version of the CPU is greater than or equal to 5.3 : in this case, the driver which allows updating of remote I/O is inhibited.
- For all other cases, the driver which allows updating of remote I/O is not inhibited. This results in the simulated outputs being updated if the corresponding TBX module is physically connected.
C
3/5
C
3.3.3 Simulation cycle
The simulation cycle remains unchanged in relation to the basic product, namely :
1. check the consistency between the modules declared in the SIMACTEL
Extension simulation and those declared in each of the simulated stations,
2. initialization of the inputs (reset to 0),
3. calculation of changes of state of inputs depending on the changes to logic
(sensors, relays) and numeric variables in the application,
4. transmission of changes of state of the inputs and changes in value of the register inputs,
5. reception of outputs (historic of discrete outputs, register outputs),
6. propagation to the application (relays, movements, numeric variables),
7. return to 3 or end of simulation.
The additions made in SIMACTEL Extension concern the type of variables exchanged, namely the IW,RIW,OW,ROW registers and word tables.
3/6
Single station online simulation 3
Simulation exchanges can be represented by the figure below :
PLC
Standard axis
Discrete outputs
Movement Discrete inputs
PLC
Analog outputs
W ords being read
Movement
speed
OW1.3
* 100
+ 5
Numeric variable
Position
ax-1
* 1000
- 20
Analog inputs
W ords being written
Sampled axis
Simactel Extension
Output register and word values are propagated in the numeric variables evaluation tables, then in the movement speeds, logic variables upstream of the numeric variable, and in the axes.
Following propagation and advancement of simulation time, the values of the sampled axes and the numeric variables downstream are updated, and propagated to the analog inputs.
By default, input registers and words are exchanged each time a value is modified by the simulation. It is advisable to define an update delay for register inputs and word exchanges (numeric exchange period).
The value of this period is entered (in machine time) using a dialog box which is opened by clicking on the button :
C
This determines the frequency of the numeric exchanges :
• if it is set to 0 (by default), the numeric exchanges are performed on each change in the value of IW and words,
• otherwise updates are performed :
- at the same time as discrete inputs
- if there are no changes in the state of discrete inputs, as soon as the simulation time advances to more than the numeric exchanges period
(since the last exchange), or if the simulation time does not move (blocking of movements, etc)
3/7
C
3.4 Communication server
There is a common server for discrete I/O and register exchanges.
As a result, the user may use the basic product commands :
•
Display of the I/O historic,
•
Display of in-rack I/O modules,
•
Display of remote I/O modules.
The differences in the SIMACTEL Extension product are :
• display of current values of the IW/OW/RIW/ROW registers and words in the form of graphs,
• display of the current word values.
3.4.1 Display of register evolution graphs
The Display menu includes an additional item, Graphs , which gives access to the following window :
3/8
Graph display window
Single station online simulation 3
The left-hand list includes all the machine registers and words.
The middle list contains the registers and words which are displayed.
The 2 commands : and can be used to move the variables from one list to the other.
In the right-hand section of the window, the variables are displayed in realtime
(each point corresponding to a SIMACTEL Extension exchange).
The Scale button is used to modify the scale (minimum and maximum value) for display. The buttons to the left of each variable are used to adjust the display color.
C
3.4.2 Displaying exchange words
The Display menu contains a Words item, if the exchange word tables have been declared in the machine I/O configuration.
Exchange words value display window
Their value is displayed in realtime - by default in hexadecimal format - on the left for the list of input words, on the right for the list of output words.
3/9
3.4.3 Default setting of in-rack and remote I/O modules
In-rack I/O modules
C
During a simulation in online mode, it is possible to set faults on the in-rack input and/or output modules. This is translated, in the PLC, by setting to 1 the Irm,S and/or Orm,S module fault bits. The approach to take for setting a fault on an inrack I/O module is as follows :
•
Access the SIMTSX communication server using the I/O command from the
File menu in the simulation window.
•
Open an in-rack I/O view using the in-rack I/O command from the Display menu.
•
Access the rack containing the module on which to set a fault using the previous and next commands from the View menu.
• Click with the right-hand mouse button on the module on which to set a fault.
Stripes then appear on the faulty module and the corresponding Irm,S and/or
Orm,S bit is set to 1 in the PLC memory.
To clear a fault on a module, simply click again with the right-hand mouse button on the module concerned. The stripes then disappear and the corresponding
Irm,S and/or Orm,S bit is reset to 0 in the PLC.
Remote I/O modules
During a simulation in online mode, it is possible to set faults on the remote I/O connection points. This is translated, in the PLC, by setting the remote I/O fault bits of words SW118 to SW121 to 0. The approach to take for setting a fault on a remote I/O connection point is as follows :
•
Access the SIMTSX communication server using the I/O command from the
File menu in the simulation window.
•
Open a remote I/O view using the remote I/O command from the Display menu.
•
Access the connection point on which to set a fault using the previous and next commands from the View menu.
•
Click with the right-hand mouse button on the base or the extension.
Stripes then appear on the faulty module and the corresponding bit is set to 0 in the word SW118 to SW121 corresponding to the faulty connection point.
To clear a fault on a connection point, simply click again with the right-hand mouse button on the base or the extension of the connection point concerned.
The stripes then disappear and the corresponding bit is set to 1 in the word
SW118 to SW121 corresponding to the connection point.
3/10
Section 4
4
4. Multistation online simulation
4.1 Introduction
Multistation simulation only applies to the SIMACTEL Extension project tool. It is therefore necessary to ensure that the SIMACTEL Extension session has been properly started from the project tools window to make use of a multistation connection.
It is possible to perform multistation simulation in offline mode, by loading the
Grafcet chart necessary for activating the machine or plant. The same debug tools as for single station simulation are available.
In the rest of this section, we will only discuss simulation in online mode.
C
4.2 Hardware setup
Implicitly, multistation simulation in online mode uses the X-TEL workshop communication supports. Refer to your X-TEL manual for information on how to :
• modify the communication driver used.
• set up the hardware for the various communication media.
4/1
C
4.3 Software setup
Implicitly, multistation simulation uses the X-WAY protocol application program layer.
The station addresses (station number, network number) of each PLC are retrieved from the parameters associated with each station in X-TEL. It is therefore important not to forget to declare these addresses ( Define action in
XTEL for each station), in accordance with the hardware configuration.
If necessary, if there is a connection error, it can prove effective to check the software connections to each station port separately, for example using the
XTEL-CONF tool.
The SIMACEXT Extension OFB must be loaded into each simulated PLC, as detailed in section 3.2.2.
4/2
Multistation online simulation 4
4.4 Launching simulation
The main SIMACTEL menu, launched from the XTEL project tools icon, accesses the selection of project machines.
Once the machine has been selected, access is given :
• either to an offline simulation with Grafcet chart
• or to an online simulation
As the machine selected is "multistation", online simulation is started by selecting the stations to be simulated, from those of the machine. This allows offline tests to be performed on a given station, the other stations can be controlled by a
Grafcet chart in offline simulation.
The following window is used to select the stations to be simulated.
C
Then connection to the PLCs is made by :
• using a driver (UNI-TELWAY terminal port, etc) configured by XTEL,
• learning the station addresses ( Define field of the stations concerned).
4/3
C
4.5 Communication server
In multistation mode, the communication server offers the same services as for single station, namely :
1. display of I/O historic,
2. display of in-rack I/O modules,
3. display of remote I/O modules,
4. display of the current values of IW/OW registers,
5. display of the current word values.
For each of the operations 2 to 5, pressing on the corresponding item accesses an intermediate PLC selection window :
I/O configuration selection window
When a number has been chosen, the standard "single station" window is displayed for the selected PLC.
4/4
SIMACTEL Extension
Application examples
Contents
Part D
Section
1. Modeling an axis control module
1.1 Introduction to the application
1.1-1 Contents of the application
1.1-2 Description of operation
1.2-4 Description of the axes used to machine a part
1.2-5 Modeling the axis control module : AXM 172
1.3 Electrical and mechanical dossier
2.1 Introduction to the application
2.1-1 Description of operation
2.1-2 Contents of the application
2.2-4 Modeling the elements of the process
2.3 Electrical and mechanical dossier
Page
D
1
D
SIMACTEL Extension
Application examples
Chapitre
Contents
Part D
Page
2
Section 1
1
1. Modeling an axis control module
1.1 Introduction to the application
This application consists of several machining stations in a line. The first station has to drill the part in two stages. The following is a waiting station. The last station mills the part. This station is special in that it has a translation axis controlled by an AXM 172 axis control module.
1.1.1 Contents of the application
The application supplied with SIMACTEL Extension contains :
• a description of all the elements :
- the application comprising the conveyor belts, the drilling and milling machines,
- the associated electrical system comprising the configuration of the discrete
I/O and registers, the relays and the operator panel for controlling the installation.
•
two simulation scenarios,
•
an initial context,
•
a SIMACTEL Extension Grafcet chart for offline simulation,
•
the PL7-3 application for online simulation.
This application is in fact an extension of the model given as an example in the
SIMACTEL manual.
D
1/1
D
1.1.2 Description of operation
A part is machined in the following order :
•
when the information that a part is present appears, the feeder moves the part to the "DRILLING-CONVEYOR",
•
the part is positioned under the drilling machine,
•
the part is drilled in 2 stages,
•
the conveyor belt moves the drilled part to the waiting station, there are 2 possible cases :
- if the milling machine conveyor belt is occupied, the part continues to wait.
- if the milling machine conveyor belt is free, the part moves to the milling position.
•
the part is milled in 2 strokes,
•
the part is removed on condition that the REMOVE-PART switch of the operator control panel is in the YES position.
1.1.3 Start-up
Start-up begins with an initialization sequence for the axis control module :
•
press the REFERENCE POINT pushbutton. At this instant, the reference point axis moves and provides the milling machine translation axis with a
REFERENCE POSITION. This evolves and moves to this position.
•
set the MODE switch to AUTOMATIC MODE, the axis control module is thus initialized in automatic mode (the corresponding modeled axis moves).
The sequence continues with :
•
the addition of a part at the beginning of the line using the PART button
•
the command to start the cycle by pressing SCY .
The initialization sequence can be reproduced from an initial state of the machine, using the START scenario.
1/2
Modeling an axis control module 1
1.2 Modeling
Following this introduction, this section develops in particular the modeling of the machine.
1.2.1 The I/O configuration
Discrete inputs
The first input I00,F feeds back information relating to movements of the milling machine translation axis.
The following three inputs I02,0 to I02,2 reflect the position sensors on the drilling axis.
Inputs I02,8 to I02,A inform the PLC of the position of the milling machine axis.
The position of the milling machine translation axis is sent to the inputs with addresses from I02,C to I02,E.
Input I02,F sends the PLC the command to position the milling machine translation axis at the reference position.
Inputs I03,0 to I03,4 are wired to the various buttons on the operator panel.
The part present sensors feed back their state to inputs I03,8 to I03,C.
Inputs I04,D and I04,E inform the PLC of the right or left position of the feeder which supplies the parts.
Analog inputs
In this application, analog inputs are linked directly to the use of the module.
There are registers defining :
•
the state of the module, IW00,0
•
the number one and two states of the control axis, IW00,1 and IW00,2
• the input words IW00,6 and IW00,7, which reflect the current position of the milling machine translation axis.
D
1/3
D
•
Managing input words
During modeling, it was necessary to use I/O registers bit-wise. The recommended method is to use a numeric variable. Thus, through the variable it is possible to write to each of the bits which make up the input word.
Method used for writing to word IW0,1
This word has only one equation term, the numeric variable ETATAXEI1, in which the bits to be forced are written in the form of a table. Generally, these bits are conditioned by relays, which are themselves dependent on an equation used to model the behavior of the application-specific module.
The assignment table associated with the variable is as follows :
ETATAXEI1 0
+ quarteti
+ 16
+ 32
+ 256
+ 512
+ 1024
< (echoquar2 + echoquar4)
< sens
< piccour
< attm
< end
< poeff
; direction of movement
; pic program in progress
; waiting for mode activation
; end of PIC program
; reference point made
1/4
Modeling an axis control module 1
•
Managing output words
In the same way, a numeric variable must be associated with each OW register word. This then gives access to each bit of this word.
Method used to read bit OW0,0,c of word OW00,0
To control the module in run or stop mode, bit OW0,0,C must be isolated, then read by SIMACTEL Extension . A numeric variable (here COMCOUP) must be created, which is an image of this word bit. The state of bit OW0,0,C is thus obtained via the “RUN” relay which has only one equation term, bit
COMCOUP,12 (bit 12 of the COMCOUP variable).
Method used to read a 4-bit byte from a word
Sometimes it is necessary to extract a certain number of bits from word OW.
The recommended method is to use a numeric variable, on which a masking operation is performed to allow the required bits to be isolated. This technique is used to isolate the mode selection 4-bit byte in word OW0,1. The numeric variable used is called QUARTETO, and has the following table :
QUARTETO 0
+ OW0,1 and hf ; masking of the first 4 bits
+ gquarteto ; variable assigned by the Grafcet chart
The term GQUARTETO can be used to write a value from Grafcet in offline mode to the output word OW0,1.
Method used to read a value coded on 32 bits (double word)
The recommended method is as follows :
• reserve a numeric variable for the least significant bit (COTEB), which is a reflection of word OW0,6, and for the most significant bit (COTEH) which is a reflection of word OW0,7
•
perform a shift left on 16 bits of the most significant word
•
add the least significant numeric variable and the most significant numeric variable to the global numeric variable (COTE), giving as 32 bits the target position to be reached by the milling machine movement axis.
D
1.2.2 Relays
Half of the relays present are power interfaces between the PLC outputs, the indicator lamps and the actuators. The other half are used to model the axis control module functions.
1.2.3 Operator panels
The MAQNUM machine has 2 operator panels :
1/5
•
the first is called OPERATOR CONTROL PANEL, and is used to control the machine in offline mode or in online mode connected to a PLC. In particular it has :
- the reset buttons for the controlled axis and those used for starting up the installation.
- a fictitious pushbutton used for loading parts at the machine entry point.
- a “RETURN” pushbutton used to return parts to the start of the cycle.
• the second is called INDICATORS, and is a summary, in the form of indicator lamps, of the state of the machine in its various machining phases.
D
1.2.4 Description of the axes used to machine a part
Standard axes
Axes 1 and 4 correspond to the actuators of the two machining stations.
Axis 1 represents the up/down motion of the drilling machine. This axis has 3 sensors :
•
h1 corresponds to the raised position of the drilling machine
• m1 to the intermediate position
•
b1 to the lowest position
"drilld" is the downward movement of the drilling machine. It is controlled by output O05,1 via relay KM15. Output O05,0 controls the upward movement
"drillu" via relay KM14.
Similarly, axis 4 represents the up/down motion of the milling machine.
Axes 6 to 11 correspond to the conveyor belts which move the parts to be machined.
The feeder (ax-6) supplies parts to the first conveyor belt. This axis has only two sensors located at the start and end of the axis. It is therefore "standard".
The other axes in this assembly correspond to the modeling of the conveyor belts which move the parts from station to station. The modeling method is described in the SIMACTEL manual, which is why it is not explained again in this section.
1/6
Modeling an axis control module 1
Axis controlled by the axis control module
Axis 3 is the model of the real axis used for the translation of the milling machine. It is a sampled linear type and does not have a sensor. The special feature of this axis is that is can be used to determine precisely, via the variable of the same name (AX-3), the position which it occupies at any instant.
Axis 3 can thus be position controlled, by allowing it to evolve until the position to be reached has been obtained.
Axis 3 has 2 movement equations. As for the initialization axis, they contain a factor term (motor), which can be used to stop all movement.
The first part of the equation defining the forward movement RAV3, is activated from the moment when (initial positioning) :
•
the initialization axis is at the end limit (mposo),
•
the required direction is positive (/sens),
•
initialization mode is selected (init).
Once all of these conditions have been met, the axis can move to the reference position.
The terms of the second part of the equation are used to move the axis to the positions defined by the pic program in automatic mode. These terms are as follows :
•
direction of movement of the moving part (/sens),
•
automatic mode active (mauto),
•
pic program permitted to evolve (even),
•
posi1 and posi3 are used to check the movement of the moving part.
Equation for forward movement of the axis :
RAV3 = motor . (mposo . /sens . init + /sens . even . mauto . (posi1 + posi3))
In the equation for reverse movement, there are the same descriptive terms, but this time they are associated with the reverse movement of the translation axis.
Equation for reverse movement of the axis :
RREC3 = motor . (mposo . sens . init + sens . even . mauto . (posi2 + posi4))
A speed parameter called “speed” is associated with each of these movements.
This allows the pic program to give the milling machine translation axis a movement speed.
D
1/7
List of relays linked to this part
End of movement relay looped back to an input : end = ((poso + pos1) . /mposo . /mauto) + fx5
Moving part stopped relay looped back to an input : marret = /rav3 . /rrec3
Positions 1, 2 and 3 reached relays : pos1 = (position = 9500) pos2 = (position = 200) pos3 = (position = 7500)
Relay indicating the direction of movement of the moving part looped back to an input : direction = (position > limit)
D
1.2.5 Modeling the axis control module : AXM 172
The aim of this application is to give an example of modeling an applicationspecific module. The one that we have chosen is programmable. It is designed to control a variable speed controller while taking account of the information coming from an encoder (position control), and from the PIC program written by the control systems engineer.
The installation method for modeling the axis control module is as follows :
•
determine the discrete I/O or REGister words required for modeling the axis control module/ PLC processor dialog,
•
obtain the axis control module pic program,
•
define the reference position of the moving part,
•
meet the various module operating mode activation conditions.
This information will be enough to model the AXM 172 module.
Note
To simplify modeling, only reference point mode and automatic mode are modeled. The module defaults, as well as its behavior in downgraded mode are not modeled.
1/8
Modeling an axis control module 1
From the preceding criteria, modeling the AXM 172 module under SIMACTEL
Extension requires the use of three axes :
•
REFERENCE POINT axis (AX-2)
•
AUTOMATIC MODE axis (AX-12)
•
PIC PROGRAM axis (AX-5)
Reference point mode
The REFERENCE POINT axis (AX-2) illustrates the initialization sequence for the axis control module/moving part relationship. During this cycle, the milling machine translation axis must be situated in a position referred to as the reference point. This operating mode is activated by the appearance of the
START information after the exchange of information such as the reference point mode 4-bit byte, the direction of movement preset and the transmission of the reference position.
This axis is a rotary axis, and consists of 3 sensors. The first 2 are used to send the start and end of axis information. The third, called ECHOQUAR2, plays the role, during initialization, of transmitting to the PLC the echo of the reference point mode, in the same way as the real axis control module would. Moreover this axis is conditioned at the level of its movement equation, in order to simulate the behavior of the axis control module.
The first term in this equation (RUN), corresponds to the setting to run of the module by the PLC program. In fact, the axis control module can only be initialized in run mode. That is why this term is placed in such a way, that if it is deactivated (STOP mode), the initialization process is stopped immediately. The movement equation therefore has the form :
AV2 = ( run . ( terms allowing movement of the axis ))
Once the module is in run mode, the PLC sends on four bits the 4-bit byte of the
MANUAL REFERENCE POINT mode selection (QUARTETO), or the binary value "0001". After its reception, axis 2 moves to the fictitious sensor
ECHOQUAR2 - this allows the 4-bit byte which is a reflection of the active operating mode (QUARTETI) to be transmitted to the Grafcet chart. The value of
QUARTETO conditions relay QUARTO, which is set to 1 as soon as the initialization phase begins. The movement equation of the axis is therefore completed by the terms : quarto . /echoquar2
After transmission of the operating mode, of the preset for the direction of movement of the milling machine and of the completed reference point, the axis control module is ready to be activated by the PLC program.
The latter sends the START command, which allows initialization of the controlled axis to the reference point.
This therefore involves the 2 terms in the movement equation : echoquar2 . start
D
1/9
D
Then, the axis changes to its end position (fx2). When this is reached and the milling machine translation axis is referenced, axis 2 must return to the start position (dx2) after the PLC has transmitted a stop. This is a rotary axis. The return to the start position is thus obtained by completing the movement equation with the term : fx2 . /start
The movement equation thus defined is not completely correct. In fact, only the conditions required to restart the axis after a stop have been defined. It is therefore necessary to add the terms which allow movement of the axis between each of these positions.
The movement equation associated with the axis representing the initialization of the module/translation axis torque is thus finally :
AV2 = (run . (quarto . /echoquar2 + echoquar2 . start + fx2 . /start + /dx2 .
/echoquar . /fx2))
•
List of relays linked to this part
Reference point request memory relay : mposo = (+fx2 + mposo) . /+poso
Return of the reference position onto the milling machine translation axis relay : poso = (position = 200)
Reference point made relay looped back to an input : poeff = (+poso + poeff) . /-dx2
Relay for information awaiting mode activation looped back to a PLC input : attm = /start
Mirror of PLC outputs relay : init = (mode = 1) run = comcoup,12 mporig = (quarteto = 1) quarto = (+mporig + quarto) . /+echoquar2 start = alim-s . O0,4
1/10
Modeling an axis control module 1
Automatic mode
The AUTOMATIC MODE axis (AX-12) plays the same role as the previous axis except that this time, its function is to simulate initialization of the axis control module in automatic mode.
The reception of the 4-bit byte “1010” enables cycle automatic mode. This has the effect of setting the module to wait for activation of its pic program. Once this is active, the PLC program supervises the movements of the axis of the moving part and the correct development of the pic program situated in the axis control module.
Axis 12 models the behavior of the module. It is a rotary axis and consists of 3 sensors which fulfill the same functions as those of the reference point mode axis
(2 end sensors and one other used for simulating transmission of the echo of the automatic mode 4-bit byte). In the same way, this axis is conditioned by its forward movement equation.
In general, the terms present in this equation have the same function as those of the preceding axis.
The terms quarto, echoquar2, dx2 and fx2 are replaced by those corresponding to axis 12, namely quartaut, echoquar4, dx4 and fx4. Only the "even" relay has been added, as in this mode it operates in conjunction with the start order. The equation allowing the development of the automatic mode axis is therefore :
AV4 = ( run . (quartaut . /echoquar4 . /fx4 + echoquar4 . start + fx4 . /start . /even
+ /dx4 . /echoquar4 . /fx4))
D
Note :
This operating mode can only operate on the condition that the moving part axis has been correctly initialized (moving part axis referenced).
•
List of relays linked to this part
Automatic mode axis ready relay : mauto = fx4 + mauto
Pic program in progress relay, looped back to an input : piccour = /dx5
Mirror of PLC outputs relay : quartaut = (quarteto = 10) even = etataxeo1,9 auto = (mode = 10)
1/11
D
Pic program axis
The pic program is contained in the axis control module. In the maqnum machine, its role is to control the movements of the milling machine translation axis in regard to position and speed.
The pic program is modeled by a rotary axis which consists of 2 end sensors.
The other 4 sensors present represent the step of the pic program lines. (posi1 to posi4).
A particular position and speed is associated with each of these sensors. These are grouped in the numeric variables “position” and “speed”. Thus a movement of the moving part axis to a position and at a certain speed corresponds to each position of sensor (1 to 4).
The movement equation of the axis is composed of terms set out in such a way that via the equation the evolutions of the real pic program can be found. The axis must therefore fulfill the following conditions :
•
the program develops in a linear way (characteristic of an axis),
•
the axis begins or continues its path after each transmission of the "even" command by bit OW0,1,9 of the PLC, up to the next step,
•
the axis moves to a waiting position for the /start command when the program is stopped.
The conditions for evolution of the axis between each sensor are added to these.
The movement equation is therefore :
AVPIC = ( even . (dx5 . poso + posi1 . pos1 + posi2 . pos2 + posi3 . pos3 + posi4
. pos4 + /dx5 . /posi1 . /posi2 . /posi3 . /posi4 . /fx5) + (fx5 . /start))
(poso : initial position reached ; pos1 to pos4 positions reached; posi1 to posi4 no PIC program)
1.2.6 Grafcet charts
File MGRAF1 contains Gracet sub-charts which are used to animate the model in offline mode. The Gracet sub-charts have the following initial steps :
•
X4, X10, X16 and X0 manage the various conveyor belts and the supply feeder.
•
X22 and X47 control each of the machining stations.
•
X101 and X107 specifically control the management of the axis control module.
•
X138 are used to take into account the start and end of cycle commands.
These "mechanical" Grafcet charts do not manage operating modes.
1/12
Modeling an axis control module 1
I/O necessary for modeling the axis control module
Summary of the discrete I/O and REGisters required for the modeling.
Inputs :
•
MOVING PART STOPPED (marret, I00,F) : Information showing that the moving part is not moving.
•
REFERENCE POINT MADE (poeff, IW00,1,A) : Information showing that the axis control module has been referenced. This information remains at 1 once the reference point has been made.
•
QUARTE MODE (quarteti, IW00,1,0 à IW00,1,3) : Information used to code a value onto four bits which correspond to the various operating modes.
•
DIRECTION (sens, IW00,1,4) : Information showing the direction in which the moving part moves.
•
PIC PROGRAM IN PROGRESS (piccour, IW00,1,5) : Information showing that the internal management program of the axis control module is in progress.
•
WAITING FOR MODE ACTIVATION (attm, IW00,1,8) : Information showing that no operating mode has been enabled. This information remains at 1 until the start information is sent by the PLC.
•
END (end, IW00,1,9) : Information showing the end of a movement in automatic mode. It is also the end of execution of the pic program.
• POSH and POSB (IW00,6 and IW00,7) : Information used to code the position of the moving part on 32 bits.
Outputs :
•
START (start, O00,4) : Information enabling activation of an operating mode.
•
MODE QUARTE (quarteto, OW00,1,0 à OW00,1,3) : Information used to code the value of the operating modes selection.
•
DIRECTION (senss, OW00,1,A) : Information telling the axis control module in which direction it should move the moving part in reference point or assisted manual mode.
•
RUN (OW00,0,C) : Information which starts the axis control module.
•
EVEN (OW00,1,9) : Information which launches execution of the pic program.
•
COTE or COTEH and COTEB (OW00,6 and OW00,7) : Information used to send the value of the target position on 32 bits.
D
1/13
D
Pic program
1 GP9 F=5000 X=9500
2 WAIT EVENT=UC
3 GP9 F=5000 X=200
4 WAIT EVENT=UC
5 GP9 F=2000 X=7500
6 WAIT EVENT=UC
7 GP9 F=2000 X=200
8 END
;posi1
;posi2
;posi3
;posi4
1/14
Modeling an axis control module 1
1.3 Electrical and mechanical dossier
D
1/15
D
1/16
Modeling an axis control module 1
D
1/17
D
1/18
Modeling an axis control module 1
D
1/19
D
1/20
Modeling an axis control module 1
D
1/21
D
1/22
Modeling an axis control module 1
D
1/23
D
1/24
Modeling an axis control module 1
D
1/25
D
1/26
Modeling an axis control module 1
D
1/27
D
1/28
Modeling an axis control module 1
D
1/29
D
1/30
Modeling an axis control module 1
D
1/31
D
1/32
Modeling an axis control module 1
D
1/33
D
1/34
Modeling an axis control module 1
D
1/35
D
1/36
Section 2
1
2. Water treatment machine
2.1 Introduction to the application
The SIMACTEL Extension software environment is supplied with an application example which illustrates modeling using numeric variables.
The PROCESS machine is inspired by applications resulting from water treatment. It consists of four communicating elements containing liquid (1 trough
+ 3 towers). To control this process four discrete control valves, one analog
(flow) type control valve and several pumps are used.
This application uses in-rack and remote discrete I/O, but also an analog output module and five analog input modules.
2.1.1 Description of operation
The process sequence is as follows :
• the head and flow valves are opened (the START OF CYCLE indicator lamp lights up). This allows the first tower to be filled.
•
when the level of vat no.1 reaches 8000 liters, vat no.2 is filled by direct communication
•
the INLET valve 1 is opened and the agitator is activated, as soon as the level is sufficient
•
the same occurs for vat no.3
•
pump no.2 is activated, the IN CYCLE indicator lamp lights up
•
vat no.3 is partially emptied until its level is 5000 liters
•
the installation is stabilized
•
after a certain time, the emptying cycle is triggered (END OF CYCLE,
EMPTYING indicator lamps)
•
the various elements which act on the installation return to their initial position
•
the emptying valve is opened
•
the vats are emptied and the emptying valve closed
•
return to initial state
D
2/1
2.1.2 Contents of the application
The application supplied with SIMACTEL Extension contains :
•
a description of all the :
- application elements such as the valves, towers, flow and level management,
- associated electrical elements such as the configuration of discrete I/O and registers, relays and the operator panel for controlling the installation.
•
two simulation scenarios,
•
an initial context,
•
a SIMACTEL Extension Grafcet chart used for simulation in offline mode,
•
the PL7.3 application for simulation in online mode.
D 2.1.3 Start-up
The process can started up in two ways (manually or using scenarios). These have a different effect on the application, depending on whether it is simulated in offline mode or online mode connected to a PLC.
In offline simulation , the ‘INIT’ context is sufficient to start up the installation.
During a manual start-up, the sequence of actions to be performed is as follows :
•
initialize the mechanics of the process,
•
move the MODE switch of the production operator panel to the PRODuction position,
•
to end press SCY.
In online simulation , the operator can choose between two scenarios :
•
the first, “COLDSTART”, is used to initialize the machine and PLC program (if the vats are empty).
•
the second, “WARMSTART”, has the same functions as the above, except that the machine can be initialized from any initial state (towers full or empty, valves open or closed, trough under water or not, etc).
2/2
Water treatment machine 2
In this mode, manual start-up differs from that for the preceding mode. The process state must be initialized not from the ‘INIT’ context, but from the PLC program. The sequence obtained is as follows :
•
press the EMERGENCY STOP latching pushbutton,
•
release this button,
•
move the MODE switch of the production operator panel to the PRODuction position,
•
to end press SCY.
2.2 Modeling
As the process has already been explained, this section specifically concentrates on the modeling of this process which has been made on SIMACTEL Extension .
2.2.1 The I/O configuration
Input I01,0 corresponds to a low threshold detection sensor at the untreated water trough. Once it is activated, an alarm indicator lamp lights up on the control operator panel.
Inputs I01,1 to I01,4 corresponds to sensors activated by the closed or open position of the stop or emptying valve.
The following inputs, I01,5 to I01,8, are used to control the machine from the operator panel.
The remote inputs, RI1,0,0 to RI1,0,3, are used to redistribute information from the opening or closing sensors for the bleach or aqualence inlet valves.
The remote input words modules (RIW2,0,0 to RIW2,0,4) are used to find out the different levels of the vats, as well as the position of the flow analog control valve.
In the same way, the discrete and analog output modules are used to :
•
control the valves,
•
control the pumps,
•
control the agitators,
• light the indicator lamps,
•
send the opening reference point to the flow valve.
D
2/3
2.2.2 Relays
Relays include those used to control the various standard type valves, as well as those used to supply elements such as agitators, pumps, or indicator lamps.
2.2.3 Operator panel
The operator panel, in offline or online mode, is used to control the process. In particular there are the start cycle, emergency stop and manual emptying buttons. The latter has no effect in online mode connected to a PLC.
There are also indicator lamps, used to display the various states of the process.
D
2.2.4 Modeling the elements of the process
The modeling of the process contains 9 axes divided into two categories :
•
standard type :
- axis 2, stop valve.
- axis 4, inlet valve 1.
- axis 5, emptying valve.
- axis 9, inlet valve 2.
•
sampled type :
- axis 3, flow valve.
- axis 1, untreated water trough.
- axis 6, tower 1.
- axis 7, tower 2.
- axis 8, tower 3.
Description of a standard axis
For example let us describe the stop valve (axis-2). This axis has a sensor at either end (SQF corresponds to the closed position of the valve and SQO to the open position). These movements are controlled by a bistable called BIS2, which is controlled on activation of O07,0 (open valve) and on deactivation of O07,1
(close valve), via the Boolean variables YVO and YVF.
2/4
Water treatment machine 2
Description of a simple sampled axis
Axis 3 represents an analog control valve. It is sampled and, as the previous axis, has a sensor at each end. The movements of this axis are conditioned by an opening equation called AV3 and a closing equation called REC3. They are activated via the comparison of 2 numeric variables. One defines the position of the valve, the other the reference point is to reach.
The POSITION numeric variable indicates the position of the sampled axis. Its value is updated by a conditioned assignments table. It contains :
•
the reference position of the axis at the start of the axis, 500 if ax-3 = 0
•
the current value of the axis retrieved by the variable AX-3
•
as well as a scaling of the position of the SIMACTEL Extension axis in relation to the real position of the valve, if the current value of the axis is positive AX-3 > 0
•
POSITION : 500
AX-3 x 80
+ 3000
< AX-3 = 0
< /DX3
< AX-3 > 0
< AX-3 > 0
The REFERENCE POINT numeric variable table contains 2 variables (ROW3,0,0 and CONSGRAPH). The first is used in simulation in online mode, and the second in simulation in offline mode. In fact, in offline mode, when a Grafcet step needs to attribute a value to a numeric variable, it is necessary to use an intermediate variable, placed in the numeric variable table on which it acts, which in this case is REFERENCE POINT.
•
REFERENCE POINT :
+ CONSGRAPH
ROW3,0,0
Description of complex sampled axes
To begin with, it is necessary to explain the way in which the fluid levels in a vat or another container are modeled.
To be modeled, a vat must be represented by a sampled axis, in order to be able to find out any changes in moment. The movements of this axis represent the various changes in the fluid level. This same level is contained in a numeric variable with the name of the corresponding axis (eg : variable ax-1 for the position of axis 1). Consequently, this numeric variable can be used to condition the movements of other axes or, once compared to another value, to actuate a relay.
D
2/5
D
Description of the various axes.
Axes 1, 6, 7, 8 correspond to the modeling of the untreated water trough as well as the modeling of the three vats downstream. These four elements incorporate display units which display the levels contained.
For example for level 1, the numeric variable called LEVEL1, whose value depends directly on the position of the SIMACTEL Extension axis, is used
(variable AX-6). Then scaling (x100) is performed in order to simulate the real case.
The numeric variables representing the various levels are important. They are used, in addition to their function of reflecting the level of the vats, to condition the speed of rise or fall of the water level in each element.
Axis 1 represents the untreated water trough. It has 3 sensors. One at each end, used to find out if the trough is empty or full. The third indicates a low threshold alarm to the PLC. This alarm triggers the filling of the trough, actuated by remote output RO1,0,12 via the relay YVREMP.
The speed of movement of axis 1 (TROUGH numeric variable) is proportional to the opening of the flow valve (AX-3) on condition that :
•
the filling valve is closed (/YVEMP)
•
the stop valve is open (/SQF)
•
pump 1 (PMP1) is actuated
The model/reality scaling is adjusted by a factor of 100. The following equation is obtained :
•
TROUGH : 0
AX-3 x 100
< (/SQF . PMP1 . /YVREMP . (AX-3>0))
< (/SQF . PMP1 . /YVREMP . (AX-3>0))
Axes 6, 7 and 8 model the 3 towers of the process. Each one is filled independently, and filling depends essentially on that of the untreated water trough upstream. This is why, in the equation of each tower, there are common parameters such as AX-1 > 0, SPEED and the numeric variables of the water levels used to condition the filling speeds of each tower.
2/6
Water treatment machine 2
Firstly, it must be stated that the filling of each tower with water generally depends on the elements upstream and that their emptying depends on the downstream elements. This is why in each filling equation for the towers the same upstream elements appear, to condition the SPEED numeric variable which is proportional to it at the opening of the flow valve. These elements are :
•
presence of water in the untreated water trough symbolized by AX-1 > 0,
•
stop valve open, sensor /SQF true,
•
pump 1 in action, PMP1 true.
In the same way, the downstream element used is :
•
emptying valve closed, or sensor SQVF true.
Finally, after adding the conditions affecting the target levels, we obtain a first equation for each tower :
•
TOWER1 : STOWER1
0
SPEED < ((AX-1>0) . /SQF . PMP1 .
(LEVEL1<8000) . (LEVEL2<8000)
. (LEVEL3<8000) . SQVF)
•
TOWER2 : STOWER2
0
SPEED < ((AX-1>0) . /SQF . PMP1 .
(LEVEL1>=8000) . (LEVEL2<8000) .
(LEVEL3<8000) . SQVF)
For tower 3, an additional test (/PMP2), is used to make this condition exclusive in relation to the others :
•
TOWER3 : STOWER3
0
SPEED < ((AX-1>0) . /SQF . PMP1 .
(LEVEL2>=8000) . (LEVEL3<8000) .
SQVF . /PMP2)
The second equation of each tower, is generally of the same speed as the first.
Here only the level and axis movement speed parameters are constant.
D
2/7
D
We thus obtain :
•
TOWER1 : STOWER1
50 < ((AX-1>0) . /SQF . PMP1 .
(LEVEL1>=8000) . (LEVEL2>=8000) .
(LEVEL3>=8000) . SQVF)
•
TOWER2 : STOWER2
50 < ((AX-1>0) . /SQF . PMP1 .
(LEVEL3>8000) . SQVF
•
TOWER3 : STOWER3
50 < ((AX-1>0) . /SQF . PMP1 .
(LEVEL2>=8000) . (LEVEL3>=8000) .
SQVF . /PMP2)
In the third and fourth equations only the terms PMP1 and PMP2 are important.
They are used to condition a slow emptying speed if the two pumps are active at the same time and a fast speed if the upstream pump is no longer active. In all cases, the first two towers are emptied to the 8000 liters level and the third to the
5000 liters level.
We obtain :
•
TOWER1 : STOWER1
-300
-500
< ((AX-1>0) . /SQF . PMP1 .
(LEVEL1>=8000) . (LEVEL2>=8000) .
(LEVEL3>=5000) . PMP2 . SQVF)
< (/SQF . /PMP1 . (LEVEL1>=8000) .
(LEVEL2>=8000) . (LEVEL3>=5000) .
PMP2 . SQVF)
•
TOWER2 : STOWER2
-300
-500
< ((AX-1>0) . /SQF . PMP1 .
(LEVEL2>=8000) .(LEVEL3>=5000) .
PMP2 . SQVF)
< ((/SQF . /PMP1 . (LEVEL2>=8000) .
(LEVEL3>=5000) . PMP2 . SQVF)
•
TOWER3 : STOWER3
-1000
-1500
< ((AX-1>0) . /SQF . PMP1 .
(LEVEL2>=8000) . (LEVEL3>=5000) .
PMP2 . SQVF)
< (/PMP1 . (LEVEL3>=5000) . PMP2 .
SQVF)
2/8
Water treatment machine 2
To finish, the fifth equation of each of the towers corresponds to a complete emptying via the emptying valve, or condition SQVO true.
•
TOWER1 : STOWER1
-100
•
TOWER2 : STOWER2
-100
•
TOWER3 : STOWER3
-100
< SQVO
< SQVO
< SQVO
Once emptying is completed, the cycle restarts.
2.2.5 Grafcet charts
The Mgraf1 file contains the Grafcet sub-charts used to animate the model in offline mode.
The first two Grafcet sub-charts on the left are used to animate the process.
The one on the right is used to supply the trough with water.
These Grafcet charts are not used in online mode.
D
2/9
D
2.3 Electrical and mechanical dossier
2/10
Water treatment machine 2
D
2/11
D
2/12
Water treatment machine 2
D
2/13
D
2/14
Water treatment machine 2
D
2/15
D
2/16
Water treatment machine 2
D
2/17
D
2/18
Water treatment machine 2
D
2/19
D
2/20
Water treatment machine 2
D
2/21
D
2/22
Water treatment machine 2
D
2/23
D
2/24
Appendix
Section
Contents
Part E
Page
E
1
E
Appendix
Chapitre
Contents
Part E
Page
2
Section 1
1. List of acceptable modules
The following modules and TBX are accepted by SIMACTEL Extension.
1.1 In-rack discrete modules
1.1.1 Input modules
XTEL reference
TSX DET 4 66
TSX DET 8 02
TSX DET 8 03
TSX DET 8 05
TSX DET 8 12
TSX DET 8 13
TSX DET 8 14
TSX DET 8 24
TSX DET 16 0x
TSX DET 16 03
TSX DET 16 04
TSX DET xy z2
TSX DET 16 12
TSX DET 32 12
TSX DET 32 42
TSX DET 32 52
TSX DET 32 32
TSX DET 16 13
TSX DET 16 52
Module name Code I/O
4 Namur Indep Inputs
8 Independ. Inputs 24VAC
8 Independ. Inputs 48VAC
8 Independ. Inputs 220/240VAC
8 Independ. Inputs 24VDC
8 Independ. Inputs 48VDC
32
33
8 Independ. Inputs 125VDC 38
8 Independ. Inputs 110VDC/115VAC 36
39
34
35
37
16 Grouped Inputs 48/110/115VAC 59
16 Grouped Inputs 48VAC 59
16 Grouped Inputs 110/115VAC
16/32 Grouped Inputs 24/48VDC
59
56
16 Grouped Inputs 24VDC
32 Grouped Inputs 24VDC
32 Grouped Inputs 24VDC
32 Non-isol. Inputs 24VDC
56
56
56
56
32 Fast Inputs 24VDC
16 Grouped Inputs 48VDC
Cop. 8I/8O Fast 24 VDC
56
58
62
16I
16I
16I
16I
16I
16I
16I
16I
8I
8I
8I
8I
4I
8I
8I
8I
16I
16I
16I
E
1/1
E
1.1.2 Output modules
XTEL reference
TSX DST 4 17
TSX DST 8 04
TSX DST 8 05
TSX DST 8 82
TSX DST 8 35
TSX DST 8 17
TSX DST 16 3x
TSX DST 16 34
TSX DST 16 35
TSX DST 16 32
TSX DST 16 33
TSX DST xy z2
TSX DST 16 12
TSX DST 16 82
TSX DST 24 72
TSX DST 24 82
TSX DST 32 92
TSX DST 16 04
Module name
4 S. 24/48VDC 2A Prot. LP
8 Outputs 110/127 VAC 2A
8 Outputs 110/240 VAC 2A
8 Outputs 24VDC 2A Prot. LP
8 Ind. Rel. O. (1A/240 VAC)
8 O. 24/48VDC 0.5A/Prot. LP
16 Relay O. 240VAC/125VDC
16 Relay 125 VDC 50W DC1
16 Rel. O.(0.5A/240VAC)
16 REL. O. 24VDC 50W DC1
16 REL. O. 100VA 24/240VAC
16/24/32 Out. 24VDC LN/LP
16 O. 5-24V(0.4A/24VDC) LN
16 Out. 24VDC 0.5A Prot. LP
24 Out. 24VDC 0.5A Prot. LP
24 Out. 24VDC 0.4A Prot. LP
32 Outputs 24VDC 0.1A LP
16 Stat. O. 110-127VAC 0.5A
Code I/O
53
53
53
53
52
52
52
52
4
21
22
23
24
29
52
53
53
55
16O
16O
16O
16O
16O
16O
16O
16O
4O
8O
8O
8O
8O
8O
16O
16O
16O
16O
1/2
List of acceptable modules 1
1.1.3 In-rack numeric modules
XTEL reference
Module name Code I/O
TSX ADT 201
TSX ADT 202
TSX ADT 203
TSX AEM 401
TSX AEM 411
TSX AEM 412
TSX AEM 413
TSX AEM 811
TSX AEM 821
2 Channels ...High Lev.
Thresh.
2 Channels... Thermoc Thresh.
2 Chann. Thresh. Probe PT100 47
4 Ana. Inp. HL.HR.Isol.Ind.
4 Ana. Inp. HL.HR.Isol.Ind.
4 Ana. Inp. TC.HR.Isol.Ind.
4 Ana. Inp. RTD.HR.Isol.Ind.
8 Ana. Inp. HL.HR.Isol.Ind.
8 Ana. Inp. HL. Fast
TSX AEM 1601 16 Voltage Analog Inputs
TSX AEM 1602 16 Current Analog Inputs
45
46
62
62
62
62
63
63
63
63
TSX AEM 1613 16 PT100 3 Wire Inputs
TSX AEM 1212 16 Inputs
62
62
8I
IW/OW
8I
8I
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
16I
16I
16I
16I
8IW/8OW
8IW/8OW
8IW/8OW
8IW/8OW
16I
16I
8IW/8OW
8IW/8OW
TSX AST 200
TSX ASR 200
TSX ASR 401
TSX ASR 402
TSX ASR 403
TSX ASR 800
2 Ana. O. 8B.0-10V,0/4-20MA
2 Ana. O. 12B.Isol. Ind. V&MA
4 Ana. Out. 0/10V Int Supp.
4 Ana. Out. 4/20MA Int Supp.
4 Ana. Out. 4/20MA Ext Supp.
8 Ana. Out. 4/20MA Ext Supp.
54
9
63
63
63
63
TSX AXT 200
TSX CxM 100
Posit. / Fast Count Module
C/D Fast 1 Channel Module
57
63
TSX CTM 100 C/D Fast 1 Channel Module 63
TSX CCM 100 C/D Fast 1 Channel Cam Mod.
63
TSX DTM 100 ABS Encoder Input Module 63
TSX DEM 2412 24 Discr. I Time-stamping
24VDC
TSX DEM 2413 24 Discr. I Time-stamping
48VDC
62
62
TSX AXM 171 Relay O. Position Module
TSX AXM 171 1 Trans. O. Position Module
TSX AXM 172
TSX AXM 182
Analog Output Axis Control
Fast Axis Control
TSX AXM 162
TSX AXM 292
TSX AXM 492
Axis I/O Module
2-Axis Control Module
4-Axis Control Module
63
63
63
63
63
63
63
16O
16O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
16I
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
16I
16I
8IW/8OW
8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
E
1/3
E
XTEL
Reference
Module name Code I/O
TSX SCM 20xy 2 Char. Asynchronous
Channels
TSX SCM 2011
TSX SCM 2012
2 RS232C IS. Char.
RS232C IS/CL Char.
63
TSX SCM 2013 RS232C IS/Modem Char.
TSX SCM 2014 RS232C IS/RS485 IS. Char.
TSX SCM 2022
TSX SCM 2044
2 CL Isol. Char.
2 RS485 Isol. Char.
63
63
TSX SCM 2055 2 RS232 Simpl. IS. Char.
63
TSX SCM 21xy 2 Asyn. Chann. HD/LD/UNI-TE 63
TSX SCM 2111 2 RS232 IS HD/LD/UNI-TE 63
63
63
63
63
TSX SCM 2112 RS232 IS/CL HD/LD/UNI-TE 63
TSX SCM 2113 RS232IS/MDMHD/LD/UNI-TE 63
TSX SCM 2114 RS232IS/RS485HD/LD/UNI-TE 63
TSX SCM 2122 2 CL IS HD/LD/UNI-TE 63
TSX SCM 22xy 2 Protocol Asyn. Channels
TSX SCM 2211 2 RS232 IS. Protoc.
TSX SCM 2212 RS232 IS/CL Prot.
TSX SCM 2213 RS232 IS/Modem Prot.
63
63
63
63
TSX SCM 2214 RS232C IS/RS485 IS. Prot.
TSX SCM 2222 2 CL Isol. Prot.
63
63
TSX SCM 2244 2 RS485 Isol. Prot.
63
TSX SCM 21xy 2 HD/LD/UNI-TE Asyn. Chann.
63
TSX SCM 2116 RS232 IS/UTWAY HD/UNI-TE 63
TSX SCM 2126 CL IS/UTWAY HD/UNI-TE 63
TSX SCM 2146 RS485 IS/UTWAY HD/UNI-TE 63
TSX PCM 27 PC Monochrome Module 62
TSX PCM 37
TSX PCM 00
TSX BMP 010
PC Color Module
PC Compatible Module
PC/PCM Periph. Module
62
62
62
IW/OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
8I/8O 8IW/8OW
16I 8IW/8OW
16I
16I
16I
8IW/8OW
8IW/8OW
8IW/8OW
1/4
1.2 Remote modules
1.2.1 Discrete TBX
Name of XTEL module
TBX CEP 1622
TBX EEP 16C22
TBX DES 1622
TBX DES 16C22
TBX DES 16F22
TBX DES 1633
TBX DES 16S04
TBX EEP 08C22
TBX CSP 1622
TBX CSP 1625
TBX ESP 16C22
TBX DSS 1622
TBX DSS 16C22
TBX DSS 1625
TBX DSS 1235
TBX ESP 08C22
TBX DMS 16C22
TBX DMS 16C222
TBX DMS 16P22
TBX DMS 1025
TBX DMS 1625
TBX DMS 16S44
TBX DMS 8S44
List of acceptable modules 1
16 O
16 O
16 O
16 O
16 O
16 O
08 O
8I/8O
I/O
16 I
16 I
16 I
16 I
16 I
16 I
16 I
08 I
16 O
8I/8O
8I/8P
8I/8O
8I/8O
8I/8O
8I/8O
E
1/5
E
1.2.2 Numeric TBX
Name of XTEL module
TBX AES 801
TBX AES 400
TBX ASS 200
TBX AMS 620
Speed control
ATV-16 xxxxx / 50/60Hz
CCX17-xx x
RIW/ROW
08 RIW
04 RIW
02 ROW
6RIW/2ROW
16RIW/16ROW
16RIW/16ROW
8RIW/8ROW
1/6
I/O registers
Multistation aspects
Numeric variables
Sampled axis
Section 2
2. Index
E
2/1
دانلود
تبلیغات