06 - Introduction To The Workbench
06 - Introduction To The Workbench
In the chapter Tutorial a step by step example of a project can be found. This chapter shows the
relations between different screens and builders.
The Workbench also provides the user with the ability to:
· Transfer configurations to the PLC.
· Edit a Project.
· View and update variables.
· Perform system troubleshooting.
· Produce documentation for a configuration.
The Workbench is a Windows application and is designed to run on any IBM compatible PC.
The Workbench can print to any printer supported by Windows. It uses the Windows print spooler.
Both languages can be used together and integrated into a single application.
Figure 6-1
Figure 6-2
Figure 6-3
Figure 6-4
Figure 6-5
Blue:
Editing mode
Green:
Realtime, debug or Simulation
Computer
User name
name
Figure 6-6
Figure 6-7
Figure 6-8
Accesses the Download editor from where you download resources into
target nodes
Starts the project in test mode
Downloads only the changes made since the last download for the selected
running resource. The download includes the symbol table (complete or
reduced as selected in the resource's compilation options).
Do not use
Do not use
Do not use
Do not use
Do not use
Do not use
Accesses the Diagnosis window displaying general and status information for the
selected resource
Updates the resource status information, appearing in the title bar, for all resources
Switches between real time and cycle to cycle mode for the selected resource
Figure 6-9
Figure 6-10
Figure 6-11
· Local Variables
Local variables are variables which are unique only within a POU. In a resource the same
name but referring to different variables could occur in other POU’s.
· Global
Global variables are unique within a resource.
· IO
IO signal is unique within a resource.
· Variable group
A variable group contains variables with a specific relation to each other. A User will define
this group and the variables in the group.
· Variable grid
The variable groups are shown in the variables Tree, their contents are defined within the
Dictionary variables grid.
In the figure above you see the relation between variables and variables which are used outside the
current SCS.
o For variables used in CS3000 you need the tagname builder (Tools-> Engineering ->
tagname builder).
o For variables used in other systems which communicates over ModBus the Modbus Builder
must be used ( Tools -> Engineering -> Modbus Builder).
In the figure overleaf the options available in the variable grid can be found.
1. how to open the dictionary
2. no further action, just zoomed in
3. the variable grid, in this grid you define variables
4. parameter grid, for function blocks. If you have to define a User Defined FB with several
input and output parameters, the parameters must be defined in this grid.
5. type grid
In the type grid you can see how a type has been constructed. It is not possible to create
your own types.
6. defined word grid
The defined word grid is useful if an alias has to be defined.
The variable grid is used to define variables. There are two types of variables: Locals and Globals.
Local variables are only available within a POU. Global variables are available throughout all POUs.
Every variable has some specific extra information, for example the type (BOOL, REAL,..). This
extra information is also called ‘parameters’ (don’t confuse them with the Parameter tab for functions
and function blocks).
All these parameters can be filled in during definition but can also be changed in a later stage of the
configuration.
Figure 6-14
Figure 6-15
Digital Inputs
The following items should be specified on digital inputs.
[Name] : Variable name e.g. DI010201
[Type] : IO_BOOL
[Attribute] : Read
Digital Outputs
The following items should be specified on digital outputs.
[Name] : Variable name e.g. DO010301
[Type] : IO_BOOL
[Attribute] : Write
[Direction] : Output
In the system you will find standard functions and function blocks. It is also possible to create your
own function. How to define a function or function block will be explained in the chapter Tutorial. A
function block can have several input nubs and output nubs (a function only has 1 output nub). Before
you start programming the inside of a function block you will define the parameters.
Figure 6-16
Figure 6-18
The defined word grid can be used to create terms which are clearer to the user in Ladder or in
Function block logic.
The term ‘Switch_closed’ would probably be more meaningful than TRUE.
Figure 6-19
Figure 6-20
The first step for connecting variables to physical I/O points can be done in the I/O wiring View
window.
Select the icon for I/O wiring from the Link Architecture window or select the option I/O wiring from
the Window Workspace.
Figure 6-21
The “I/O parameter builder” can be selected from the Link or Hardware Architecture window, by
selecting the option Tools -> Engineering -> I/O parameter builder.
The figure below is an example of this builder.
The I/O parameter builder is not suitable for defining I/O cards. This must be done in the I/O wiring
view.
After an I/O card has been defined and the variables have been connected to the physical I/O points,
this builder can be used to set various physical parameters related to this I/O point. The amount of
information will be different for every I/O card.
In the right side of the builder 2 tabs are available: Module or Channel.
In the Module tab only a few parameters, for example comment, can be changed. All other
information is set in the I/O wiring screen.
The Channel tab is divided in multiple columns. The first 3 columns have a fixed position, and
contain information as: Channel number, Wiring positions and I/O variable name. The columns after
the third column varies depending of the selected IO card.
Figure 6-23
· Slot Number
This item displays the slot number in which the input/output module is mounted. It is defined
in I/O Wiring View of SCS Manager This item is only for display and cannot be edited in the
tab.
· Device
This item displays the model name of the input/output module. It is defined in I/O Wiring
View of SCS Manager This item is only for display and cannot be edited in the tab.
· Dual-Redundant
This item displays whether the input/output module is placed in single configuration or
redundant configuration. It is defined in I/O Wiring View of SCS Manager. Input/output
modules are placed in redundant configuration using an odd-numbered slot and the adjacent
even-numbered slot (the odd number + 1). This item is only for display and cannot be edited
in the tab.
· Device Number
This is the device number assigned to the input/output module. It is defined in I/O Wiring
View of SCS Manager. This item is only for display and cannot be edited in the tab.
· Comment
This is a comment related to the input/output module. Any character string of up to 24 single-
byte characters or 12 double-byte characters can be entered. This setting item is not
downloaded to an SCS, so changing the definition does not affect input/output processing.
This item can be changed via on-line change download.
· Channel Common Information
The following items are common for all modules with channel parameters.
· Channel Number
This is a list of the channel numbers displayed in I/O Wiring View of SCS Manager. They are
sequential numbers starting from 1.
This item is only for display and cannot be edited.
· Wiring Position
This is a list of the channel names displayed in I/O Wiring View of SCS Manager. They are
determined by device number and channel identification number. The channel identification
numbers used for channel names are sequential numbers starting from 0. The channel
numbers of the input modules are prefixed with %IU while the channel numbers of the output
modules are prefixed with %QU.
This item is only for display and cannot be edited.
Example: In the case of a 16-channel input module: %IU1.0, %IU1.1, %IU1.2, ... %IU1.14,
%IU1.15
In the case of a 8-channel output module: %QU3.0, %QU3.1, ... %QU3.6, %QU3.7
· Direction
This item indicates whether a signal is an input or output signal.
This item is only for display and cannot be edited.
· Comment
This is a comment for an input/output variable specified in the Dictionary View of SCS
Manager. Any character string can be entered.
This item is only for display and cannot be edited.
A variable comment for an input/output variable defined in Dictionary View of SCS Manager
is displayed as a channel comment of a wired channel. Up to 64 characters can be used for the
definition of this comment, but only up to 32 characters can be used in SCS databases;
therefore make sure not to use more than 32 characters. Channel comments for unused
channels (unwired channels) are not displayed. Comments for DI/DO are set for SCS
databases and used as identifiers of SOE.
· TIP
If comments for DI/DO variables are changed in the Dictionary View of the SCS Manager,
discrepancies may occur due to the input/output definition changes, and it becomes necessary
to perform on-line change download to the SCS. Since this changes only the definitions in the
databases of the SCS (no changes are made to the setting information of the input/output
modules themselves), the inputs and outputs are not influenced by an on-line change.
Figure 6-24
· [Hold]:
The value immediately before the fault was detected is maintained when an error is
detected.
· [Fixed Value]:
The specified input value is set when an error is detected (default).
This setting item can be changed via on-line change download.
· Signal Conversion
This item specifies the conversion method of the input signal.
[LINEAR]:
The physical range specified by the low limit value and high limit value of the range (mA or
V) is converted to 0 to 100 (%) data (default).
[SQRT]:
The input signal will be checked before square-root conversion. If the signal is normal, the
square-rooted datum will be a 0-100% datum. The square-root conversion is illustrated as
follows:
This item can be changed via on-line change download.
· Unit
This is the unit of the input signal and determined by the type of input module.
This item is only for display and cannot be edited.
An error occurs if a value is entered such that the value of [Threshold of IOP (High) %]
becomes equal to or smaller than the value of [Threshold of Transmitter Fault (High) %].
An error occurs if a value outside the range -25% to 125% is entered.
An error occurs if a value outside the analog input module accuracy guarantee range is
entered.
In addition to the checks above, the following input checks are performed.
In addition to the checks above, the following input checks are performed.
Range: -25% to 125%
Number of input characters: Up to 7 single-byte characters
Number of decimal places: Up to 2 digits
This item can be changed via on-line change download.
An error occurs if a value is entered such that the value of [Threshold of IOP (High) %]
becomes equal to or smaller than the value of [Threshold of Transmitter Fault (High) %].
An error occurs if a value outside the range -25% to 125% is entered.
An error occurs in I/O Parameter Builder if a value outside the analog input module accuracy
guarantee range is entered.
An error occurs if a value is entered such that the value of [Threshold of IOP (Low) %] level
becomes equal to or greater than the value of [Threshold of Transmitter Fault (Low) %].
An error occurs if a value outside the range -25% to 125% is entered.
An error occurs if a value outside the analog input module accuracy guarantee range is
entered.
(Accuracy guarantee range)
Current input: -18.75% to 118.75% (1 to 23 mA)
This item can be changed via on-line change download.
IMPORTANT
Make sure that this setting matches with the 2-wire/4-wire system setting made using the
setting pins in an analog input module. If the settings made here are different from those of
the hardware, a channel error occurs in the case of single input module configuration and the
control shifts to the standby module in the case of a dual-redundant input module
configuration.
None: Do not perform field power supply diagnosis.
2-wire:
2-wire system (Default: Diagnose that the power is supplied to the field. Diagnosis indicates
normal if the power is supplied to the filed device.)
4-wire:
4-wire system (Diagnose that no power is supplied to the field. Diagnosis indicates normal if
no power is supplied to the filed device.)
This item can be changed via on-line change download. Note, however, that IOM download is
also performed at the same time.
Some items among these setting items can be online modified and downloaded. However, IOM
download is required after online downloading. The IOM downloading behaves as follows:
When online maintenance starts, the data status of all channels will become BAD and the input
signals of all channels of the module are processed according to [Input Processing at Fault] settings.
· When online maintenance finishes, the input values will be automatically put to the channels
thus the data status of all channels becomes GOOD.
· For dual-redundantly configured I/O modules, the odd-numbered module takes the control
right first.
Figure 6-25
· Pulse Test
This item specifies whether or not to perform a pulse test (wiring check between the input
channels using pulse output).
Yes: Perform a pulse test (default).
No: Do not perform a pulse test.
This item can be changed via on-line change download. Note, however, that IOM download is
also performed at the same time.
IMPORTANT
If [Yes] is set for [Pulse Test], wiring short-circuit errors between input channels can be
detected. Make sure, however, to mount a wiring check adapter (SCB110) to the relevant
channel if you specify [Yes] for a channel whose input signal is always ON. If you specify
[Yes] without mounting the adapter, the SCS cannot detect inter-channel short circuit when
the input value is ON.
Figure 6-27
· Detect Disconnection
This item specifies whether or not to detect disconnection.
Yes: Detect disconnection (default).
No: Do not detect disconnection.
This item can be changed via on-line change download. Note, however, that IOM download is
also performed at the same time.
The Multi-language editor has editing functions for graphical and textual languages.
These editing functions are automatically launched when an FBD or LD program is opened from the
Workbench.
The editor only allows new elements to be inserted if the current position is valid. Use the mouse or
cursor keys to move the current position around within the Workspace.
o Build the current Program code (to check your Program and prepare the code for building the
Resource code)
o Print programs
o Launch the Dictionary for inserting/deleting/modifying new variables, parameters and defined
words
Note: Before creating new programs, you need to close the Dictionary.
When printing programs, the fonts used in the diagram are the same as for the editor. The FBD and
LD diagrams are scaled to fit the width of the printed page format (portrait or landscape). To adjust
the font for printed diagrams, you need to modify the font used for the editor.
Figure 6-28
The editor has been split op in: title bar, menu bar, toolbar, workspace and message area. All these
items will be explained below.
Title bar
In the title bar the name of the SCS resource + name of the POU will be displayed
· Show the execution order = the order in which the logic will be executed
· Show guidelines = the workspace has been divided in headers (Inputs, From,
Logic….). This can be made visible or not.
[Debug]:
· You can Debug (on the target machine) or Simulate (the program runs on the SENG
[Options]:
· Layout
In the layout window you can set the layout of your screen.
Figure 6-29
Figure 6-30
The Toolbar
Besides the normal symbols like save, print, undo, etc. there also options with relation to the FBD or
LD editor. The following sub-sections “a” until “g” explains the functionality of these options:
Figure 6-31
From this window you can select a Function Block (1). The
amount of inputs can be defined in (2). In ProSafe-RS it is
not possible (at this moment) to give a FB an instance name
(4).
Lines
Input Contact
Vertical Connections
With this symbol you can include comments on your sheet. This also
possible by using (*this is comment*)
You can show the order of execution in the form of numerical tags
for the following elements in a FBD program: coils, returns, jumps,
instances of function blocks (declared or not), and variables where a
value is assigned in the program. When the order cannot be
determined, the tags display question marks (?). You can perform this
task from the menu bar, the toolbar, or keyboard shortcut (Ctrl+W).
d. Insert Identifier
This symbol lets you select a variable from the Select Variable
window
f. Debug
g. Simulation
The workspace area is using a grid. If you move your mouse over the screen you will see on the status
line the position.
The first digit is the horizontal position and the second digit is the vertical.
Figure 6-32
Figure 6-33
Figure 6-35
4. First define the AND Function Block. Select the symbol for FBs and position the mouse on
the desired place.
5. The Select Blocks window appears. Select the AND Function Block and enter also the desired
number of inputs (default = 2). Press <OK>.
Figure 6-37
Figure 6-39
8. If you move your mouse over the drawing area (keep the mouse pressed!) you will see a
rectangle with a v inside. Connect the two nubs to each other (1). Then drag and
drop the rectangle to the desired position (2) (the input to the input column, the output to the
output column)
9. If you release the mouse-button the Select Variable window will appear. Select the
<tagname>.v variable. The .v is the value. Perform the same action for all three variables (2
inputs and 1 output).
10. The result should look like the figure below. Now the POU can be built.
Figure 6-41
What is build
Building can be done on different levels:
1. Building a POU
2. Building the Resource
3. Building the Project
Before downloading code onto your target systems, you must first build the code of the whole project.
This operation builds the code of all resources of the project, and builds information used to recognize
your systems on networks. You cannot build projects open in the read-only mode.
You can choose to clean projects. However, after cleaning a project, you cannot perform online
changes. Therefore, to retain the ability to perform online changes, you can rebuild a project rather
than cleaning then building it.
While performing builds, the security state of unlocked resources and resources having no access
control switches to read-only mode. The security state of unlocked POUs and POUs having no access
control also switches to read-only mode. Locked resources and locked POUs remain locked.
From the Project menu, choose Build Project or click on the Standard toolbar. If the hardware
architecture view is not changed, building resource code is enough to update.
Figure 6-42
Figure 6-43
Figure 6-44
1. Off-line Download
This function downloads a database generated by building based on an application logic
created in the SENG. During the download, the functions running on the SCS stop and
resume the operation after the completion of downloading.
4. IOM Download
1. Perform the building operation; an SCS database is generated based on application logic.
2. Launch Integrity Analyzer and analyze the database.
3. Launch Cross Reference Analyzer and analyze the database.
TIP
User should check the items that may require retesting for errors not detected by Cross
Reference Analyzer.
4. Use the SCS security level operation function to set the SCS security level to Level 0.
5. Select [Download] from the [Debug] menu of SCS Manager. The off-line download
confirmation dialog box appears.
TIP
If Integrity Analyzer or Cross Reference Analyzer has already been launched when you start
off-line download, a message prompting to close the analyzer is notified and the download
ends with an error.
If the SCS security level is Level 1 or Level 2 when you start off-line download, a message
prompting to set
Level 0 is notified and the download ends with an error. Set the security level to Level 0 again
and perform step 5 again.
7. Specify the password used when changing the SCS security level.
8. Use Version Control Tool to save the SCS project.
TIP
User should check the items that may require retesting for errors not detected by Cross
Reference Analyzer.
4. Use the SCS security level operation function to set the SCS security level to Level 1.
5. After shifting to the Target Test mode, the input/output modules subject to the online-change
downloading should be locked out on the I/O Lock Window of SCS Maintenance Support
Tool.
6. When the Target Test mode is finished, choose [On-line Change: Download] from the
[Debug] menu of SCS Manager or click the “On-line change download” button on the
toolbar.
The on-line change download confirmation dialog box appears.
TIP
If Integrity Analyzer or Cross Reference Analyzer has already been launched when you start
off-line download, a message prompting to close the analyzer is notified and the download
ends with an error.
If you perform on-line change download of output definitions, the related output modules
output zeros (0).
7. Click the [OK] button. A dialog box prompting to confirm the version control appears.
8. After shifting to the Target Test mode, the modified items need to be tested.
9. Release the lockout to the related input/output modules and exit from Target Test mode. And
then perform the output enable operation.
10. Use the SCS security level operation function to return the SCS security level to Level 2.
11. Use Version Control Tool to save the SCS project.
TIP
If the SCS security level is Level 1 or Level 2, a message prompting to set the security level
to Level 0 is notified and the download ends with an error. Set the security level to Level 0
again, and repeat step 3.
In the following figure steps a, b and c are depicted for creating a new Library. After a Library is
created you can open it as you do with a normal SCS project.
a. After you have started the Workbench select from the menu option File the
option New Project/Library.
b. If you create a SCS project the name should look like “SCS0102”.
For libraries you can use any name (off course not more then 8 characters,
starting with an alphabetic character and should not include spaces).
It is not necessary to have the libraries installed on the same directory as the
projects have been installed. As long the file is reachable at building time.
It is recommended to create a separated directory where you save the libraries. In
the example below the directory ProSafe_RS_Libraries has been created.
c. Select for template instead of SCS_Default_Target the option SCS_library
Figure 6-45
After the Library has been created the Link Architecture window appears with the Resource Window
Workspace. Now the user created Function blocks can be added.
In a Library you do not have to change the properties of the project like resource number. Changing
the IP address is (of course) not an option, otherwise the Library could not be used multiple times.
The following steps (which are a repeat from the paragraph “How to create user defined Function
Blocks) in the next figure show how to create a new function block.
a. Select “Function blocks” and press the right-mouse button on the Resource
Workspace Window.
b. From the list select LD (Ladder Diagram) or FBD (Function block Diagram).
c. Enter the appropriate name for the function block
Figure 6-46
When the Function Block has been created you can use the Multiple Language Editor for entering the
logic (either in LD or in FBD).
a. Select “Function blocks” and press the right-mouse button on the Resource
Workspace Window.
Figure 6-47
Figure 6-48
Figure 6-49
f. From the Resource Workspace Window select the Function Block and open it
Figure 6-50
In the Multiple Language editor create your logic (FBD or LD). In the figure
below first the AND and OR block are placed.
Figure 6-51
h. The Select variable window shows the defined variables available for this
Function Block
After the logic is finished and built (check for errors), close the library.
It is now ready for use.
Figure 6-52
The following procedure must be used to get the Libraries in the current SCS project.
Because it is not necessarily the case that a library project has been created on the same computer, the
following procedure shows also how to distribute the created Library (could be from another
computer) to the folder of the current SCS project. In this project folder a special Library folder is
available.
Figure 6-53
Figure 6-54
d. In the Open window select the library file (the .mdb file) and.
e. press the Open button
f. In the Add/Remove Dependencies window the selected Library is listed
g. Press OK to confirm.
h. Now the Function Blocks which have been defined in the library are available in
the current SCS project. Also the Library symbol should be displayed in lower-
right corner of the Link Architecture window.
Function Blocks which have been created and stored in a Library project can be used in POUs.
The following example shows how to insert these FBs in a FBD POU.
a. Open the POU where you want to use the defined FB (out of the Library) from
the Resource Workspace window
b. Select from the Multiple Language Editor the option to Select Function Blocks.
The Select Blocks window will appear.
Figure 6-55
c. Select from the list the Function Block which have been created during the
library project. In front of the FB the following symbol should be displayed
d. Press the OK button to confirm the selection.
e. Now the function block is positioned in the editor.
Note:
Function Blocks which have been included from a library can not be opened from the SCS project, in
other words: the logic inside a FB can only be reviewed from the library itself.
Figure 6-56
The logic inside Function Blocks can be changed without deleting the function block from the POU
where it has been used.
If you are increasing/decreasing the amount of input/output nubs you must delete the FB from the
sheet where it has been used.
Recommendation:
It is strongly advised that a Typical Test is performed before start implementing the project (and all
the FBs from the Libraries are used). If for example a certain FB has been used 100 times and a
modification is required (amount of input/output nubs will change), each of the 100 FBs must be
deleted and inserted again.
Figure 6-57
o Debug
where you test your application on real SCS systems. The debugger establishes the
connections with remote configurations. Execution errors and warnings can appear in the
Output Window. For this mode, ***** TARGET ***** is displayed in the title bar. In the
example below the header of the Link Architecture window displays that debug is on (the
Target, which means the real SCS).
The header in the Resource Workspace window is giving the warning that there is no code
available, this because there is no SCS connected.
Figure 6-58
o Simulation
where you simulate the running of the project on a SENG.
You can only start 1 simulator on a SENG. In other words: If you want to simulate inter SCS
communication, for example exchange of shutdown signal, you do need 2 Windows
platforms.
For this mode, SIMULATION is displayed in the title bar.
Figure 6-59
When switching an application to Simulation mode, the Workbench verifies the coherency between
the current resource definitions and the resources' compiled code. The Workbench also verifies the
coherency between all versions of the resource code. You can access version information for a
resource.
If there is a difference between for example the logic in a certain POU and the compiled code in the
POU, the system will respond with a warning if you start up the simulator.
Figure 6-60
The Simulator can be started from the Link Architecture window using the symbol or from the
debug menu.
Figure 6-61
If the project is not built, the system will perform this build before going in simulation mode.
Be sure the option Code for Simulation has been selected in the Resource Properties before you build
the project. (The Resource Properties can be reached by selecting the header of the Resource
Workspace window and active the right-mouse button)
Figure 6-62
Once the Simulator has been started, the application logic can be tested by opening the POUs. You
can change the value of variables (local, global, I/O) from the sheet itself. I/O signals can also be
changed by using the I/O panel simulation window in your Task bar.
In the figure below the following information can be found:
a. In the sheets values are displayed in Colors. Red for FALSE and blue for TRUE.
If you want to change the value of a variable double click on this variable. The
result will be a Pop-up window in where you can write the new value.
b. If values are not- or partially displayed you have 2 options to fix that.
1. Make the blocks in the editor broader, therefore you should stop
the simulator
2. Use the menu option-> customize. In the customize window you
can change the font, size, colors, etc.
c. This button can be used for stopping the simulation
d. This button is for switching the visibility of values on/off (show/hide)
e. Button to clear the output window
Figure 6-63
Figure 6-64