Beruflich Dokumente
Kultur Dokumente
REV A
Initial Step
Branch
Transition
Step
Invensys, Foxboro, FoxView, FoxSelect, I/A Series and I/A Series A2 are trademarks of Invensys plc, its
subsidiaries, and affiliates.
All other brand names may be trademarks of their respective owners.
1. Quick Start....................................................................................................................... 1
Configuring SFC/ST Sequence Blocks ...................................................................................... 1
Overview of Block Configuration Procedures ....................................................................... 3
Step 1. Add Block Information ........................................................................................ 3
Step 2. Define Main Routine ........................................................................................... 3
Step 3. Define Subroutines .............................................................................................. 4
Step 4. Define SBX Routines ........................................................................................... 4
Step 5. Compile and Install the Sequence Block .............................................................. 5
Configuring SFC/ST Library Objects ....................................................................................... 5
Overview of Library Object Configuration Procedures ......................................................... 7
Adding a Library Block or Main Routine ............................................................................. 7
Defining the Main Routine .................................................................................................. 7
Defining Subroutines ........................................................................................................... 8
Defining SBX Routines ........................................................................................................ 8
Checking and Saving Library Objects ................................................................................... 9
Operating the SFC/ST Sequence Block ..................................................................................... 9
Operating the SFC/ST Sequence Block ................................................................................ 9
Displaying Sequence Block Data .......................................................................................... 9
2. Overview ......................................................................................................................... 11
SFC/ST Block Configurator .................................................................................................... 12
SFC/ST Library Configurator ................................................................................................. 12
SFC/ST Display Manager ....................................................................................................... 13
System Integration .................................................................................................................. 13
SFC/ST Block Configurator ............................................................................................... 13
SFC/ST Library Configurator ............................................................................................ 14
SFC/ST Display Manager .................................................................................................. 14
External Interfaces ................................................................................................................... 14
ICC Interface with the SFC/ST Block Configurator .......................................................... 14
SFC/ST Block and Library Configurator Interface ............................................................. 15
Compatibility .......................................................................................................................... 15
Compatibility with Standards ............................................................................................. 15
Compatibility Issues ........................................................................................................... 15
iii
B0193UZ – Rev A Contents
iv
Contents B0193UZ – Rev A
v
B0193UZ – Rev A Contents
vi
Contents B0193UZ – Rev A
vii
B0193UZ – Rev A Contents
viii
Contents B0193UZ – Rev A
Syntax..................................................................................................................... 159
User Labeled Parameter ............................................................................................... 159
Syntax..................................................................................................................... 160
SFC Network .............................................................................................................. 160
Subroutines ...................................................................................................................... 160
Subroutine Input/Output Parameters .......................................................................... 161
Subroutine Local Variables .......................................................................................... 161
Standard Block Exception (SBX) Handler ........................................................................ 162
Macros ............................................................................................................................. 163
Syntax..................................................................................................................... 163
Step Specification with Structured Text (ST) ................................................................... 163
Assignment Statements ................................................................................................ 164
Syntax..................................................................................................................... 164
Function Block Control Statements ............................................................................. 164
Examples ................................................................................................................ 164
Selection Statements .................................................................................................... 164
Syntax..................................................................................................................... 164
Example.................................................................................................................. 165
Syntax..................................................................................................................... 165
Transition Specification with Structured Text (ST) .......................................................... 165
Vocabulary ............................................................................................................................ 166
Characters ........................................................................................................................ 166
Special Symbols ................................................................................................................ 167
Keywords ......................................................................................................................... 168
Identifiers ......................................................................................................................... 168
Examples ................................................................................................................ 169
Comments ....................................................................................................................... 169
Operator Remarks ............................................................................................................ 169
Data Types ............................................................................................................................ 170
Real ........................................................................................................................ 171
Integer .................................................................................................................... 171
Boolean .................................................................................................................. 171
String...................................................................................................................... 171
statf_Type............................................................................................................... 171
sstate....................................................................................................................... 172
Literal Operands ................................................................................................................... 172
Examples ................................................................................................................ 173
Constant Operands ............................................................................................................... 173
Examples ................................................................................................................ 173
Variables Operands ............................................................................................................... 173
Examples ................................................................................................................ 174
Full Pathname (FPN) Operands ............................................................................................ 174
Examples ................................................................................................................ 175
Internal References ................................................................................................................ 175
Examples ................................................................................................................ 176
Function Invocation Operands ............................................................................................. 176
ix
B0193UZ – Rev A Contents
Example.................................................................................................................. 176
Expressions ............................................................................................................................ 176
String Expressions ............................................................................................................ 177
Examples ................................................................................................................ 178
Arithmetic Expressions ..................................................................................................... 178
Functions .............................................................................................................................. 179
ABS .................................................................................................................................. 180
Syntax..................................................................................................................... 180
Description............................................................................................................. 180
Examples ................................................................................................................ 180
CONCAT_STR .............................................................................................................. 181
Syntax..................................................................................................................... 181
Description............................................................................................................. 181
Example.................................................................................................................. 181
MID ................................................................................................................................. 182
Syntax..................................................................................................................... 182
Description............................................................................................................. 182
Example.................................................................................................................. 182
ORD ................................................................................................................................ 182
Syntax..................................................................................................................... 182
Description............................................................................................................. 182
Examples ................................................................................................................ 182
ROUND .......................................................................................................................... 183
Syntax..................................................................................................................... 183
Description............................................................................................................. 183
Examples ................................................................................................................ 183
SQRT .............................................................................................................................. 183
Syntax..................................................................................................................... 183
Description............................................................................................................. 183
Examples ................................................................................................................ 183
TRUNC ........................................................................................................................... 183
Syntax..................................................................................................................... 183
Description............................................................................................................. 183
Examples ................................................................................................................ 184
Function Blocks .................................................................................................................... 184
ABORT ........................................................................................................................... 184
Syntax..................................................................................................................... 184
Description............................................................................................................. 185
Example.................................................................................................................. 185
ACTCASES ..................................................................................................................... 185
Syntax..................................................................................................................... 185
Description............................................................................................................. 185
Example.................................................................................................................. 185
ACTIVATE ..................................................................................................................... 185
Syntax..................................................................................................................... 185
Description............................................................................................................. 186
Example.................................................................................................................. 186
x
Contents B0193UZ – Rev A
xi
B0193UZ – Rev A Contents
xii
Figures
1-1. Sequential Function Chart (SFC) Example ................................................................... 1
1-2. SFC/ST Sequence Block Configuration Overview ........................................................ 2
1-3. SFC/ST Sequence Library Object Configuration Overview .......................................... 6
2-1. SFC/ST Sequence Block System Overview Diagram ................................................... 11
2-2. SFC/ST Block Configurator System Integration ......................................................... 13
2-3. SFC/ST Display Manager System Integration ............................................................. 14
3-1. SFC/ST Block Configurator – Parent Window ........................................................... 19
3-2. Common Toolbar and Edit Menu .............................................................................. 20
3-3. File Menu ................................................................................................................... 23
3-4. View Menu ................................................................................................................. 24
3-5. Editor Menu ............................................................................................................... 25
3-6. Symbols Menu ............................................................................................................ 26
3-7. Window Menu ............................................................................................................ 26
3-8. Help Menu ................................................................................................................. 27
3-9. Valid Levels of Inclusion ............................................................................................. 30
3-10. Routine Selection Dialog Box ..................................................................................... 32
3-11. Open Dialog Box with Subroutine Files ...................................................................... 33
3-12. Open Dialog Box with Block Files .............................................................................. 35
3-13. Replace Variable from Library Dialog Box .................................................................. 36
3-14. Replace Step from Library Dialog Box ........................................................................ 36
3-15. Replace Transition from Library Dialog Box ............................................................... 37
3-16. Save As Dialog Box with Block Files ........................................................................... 38
3-17. Version Information Dialog Box ................................................................................. 39
3-18. Save As Dialog Box with Subroutine Files ................................................................... 39
3-19. Delete from Library Dialog Box .................................................................................. 40
3-20. Include Files Dialog Box ............................................................................................. 43
3-21. Include File Open Dialog Box ..................................................................................... 44
3-22. History Dialog Box ..................................................................................................... 45
3-23. Block Information Editor ............................................................................................ 46
3-24. SFC Editor Window ................................................................................................... 48
3-25. SFC with Interrupted Link .......................................................................................... 50
3-26. SFC Toolbar ............................................................................................................... 50
3-27. Step Dialog Box .......................................................................................................... 53
3-28. Insert Branch Dialog Box ............................................................................................ 54
3-29. Step Selection Dialog Box ........................................................................................... 55
3-30. Validate Dialog Box .................................................................................................... 57
3-31. Step Editor .................................................................................................................. 58
3-32. Symbol Dialog Box for Functions ............................................................................... 60
3-33. Symbol Dialog Box for Function Blocks ..................................................................... 61
3-34. Symbol Dialog Box for Subroutines ............................................................................ 62
3-35. Object Browser for Compound/Block/Parameter ........................................................ 63
3-36. Transition Editor ........................................................................................................ 65
3-37. Constant Editor .......................................................................................................... 67
3-38. Variable Editor ............................................................................................................ 70
xiii
B0193UZ – Rev A Figures
xiv
Figures B0193UZ – Rev A
xv
B0193UZ – Rev A Figures
xvi
Tables
3-1. Common Toolbar Functions ...................................................................................... 20
3-2. SFC Toolbar Button Functions ................................................................................... 50
3-3. Configuration Data Print Options by Editor ............................................................. 92
4-1. Functions Common to Block and Library Configurators – Using Existing Logic ...... 114
4-2. Editor Operations Common to Block and Library Configurators .............................. 117
5-1. Block Mode for MA and STEPMD Values ............................................................... 124
5-2. Protectable Graphical Objects ................................................................................... 128
5-3. Graphical Transition Display Color Setting .............................................................. 147
6-1. SFC/ST Sequence Block Elements and Editors ......................................................... 157
6-2. SFC/ST Subroutine Elements and Editors ................................................................ 161
6-3. Symbols for Syntax Description ................................................................................ 163
6-4. Special Symbols ......................................................................................................... 167
6-5. Keywords .................................................................................................................. 168
6-6. Operators .................................................................................................................. 177
6-7. SFC/ST Functions .................................................................................................... 180
6-8. Function Blocks ........................................................................................................ 184
xvii
B0193UZ – Rev A Tables
xviii
Preface
This document describes the Sequential Function Chart (SFC) and Structured Text (ST)
Configurator for programming sequence control blocks and sequence logic library objects using
IEC 61131-3 standard elements. It also describes the SFC/ST Display Manager for displaying
SFC/ST sequence control block run-time data.
Audience
This book is intended for use by process control engineers for programming I/A Series sequence
control blocks and sequence logic library objects. It is also intended for use by process operators to
view sequence control block runtime data.
Experience
This book assumes that you are familiar with the I/A Series sequence control blocks and the
IEC 61131-3 standard. It also assumes that you are familiar with the operation of the I/A Series
system on Windows® and Solaris™ based workstations.
Revision Information
This document is being initially released with the SFC/ST Configurator and SFC/ST Display
Manager Software Release 1.1.
Reference Documents
The following documents provide additional and related information:
♦ FoxView™ (B0193WH)
♦ Integrated Control Block Descriptions (B0193AX)
♦ Integrated Control Software Concepts (B0193AW)
♦ Integrated Control Configurator (B0193AV)
♦ Microsoft® User Interface Design Guide
♦ Process Operations and Displays (B0193MM).
xix
B0193UZ – Rev A Preface
xx
1. Quick Start
This chapter provides an overview of the procedures for configuring sequence blocks via the
SFC/ST Block Configurator and SFC/ST Library Configurator. It also summarizes the
procedures for using the SFC/ST Display Manager to operate sequence blocks and view block
run-time data.
Initial Step
Branch
Transition
Step
Figure 1-2 shows the general procedure for configuring an SFC/ST sequence block.
1
B0193UZ – Rev A 1. Quick Start
Compile Sequence
Block
Errors Yes
Correct Errors
Reported
No
2
1. Quick Start B0193UZ – Rev A
3
B0193UZ – Rev A 1. Quick Start
4
1. Quick Start B0193UZ – Rev A
5
B0193UZ – Rev A 1. Quick Start
Check Syntax
Errors Yes
Correct Errors
Reported
No
Legend:
= Save Library Object Save Object in
= Complete Library Block the Library
6
1. Quick Start B0193UZ – Rev A
7
B0193UZ – Rev A 1. Quick Start
4. If you are not configuring a block, check the main routine for syntax errors and save
the routine in the library (see “Checking and Saving Library Objects” on page 9).
This completes the main routine.
Defining Subroutines
Each subroutine has its own SFC and structured text logic. The procedure for defining a subrou-
tine is similar to creating and defining the main routine, with some differences.
You must define all subroutines that you called in the main routines. In addition to the SFC and
the step and transition logic for each subroutine, you must define input and output parameters
for each subroutine and any required variables. Variables for a subroutine are only accessible by
that subroutine.
To define a subroutine:
1. Add and edit the subroutine
♦ Add a library subroutine (see “Adding a Library Subroutine” on page 119)
♦ Add a block subroutine (see “Adding a Block Subroutine” on page 80).
2. Create the SFC for the subroutine (see “Editing a Sequential Function Chart” on
page 52).
3. Add input and output parameters for the subroutine (see “Adding a New Subroutine
Parameter” on page 87).
4. Add variables for the subroutine (see “Adding a Variable” on page 71).
5. Complete the steps and transitions:
♦ Add step statements (see “Editing Step Statements” on page 59)
♦ Add transition conditions (see “Editing the Transition Condition” on page 66).
6. Check the subroutine for syntax errors and save the subroutine in the library (see
“Checking and Saving Library Objects” on page 9).
This completes the subroutine.
8
1. Quick Start B0193UZ – Rev A
9
B0193UZ – Rev A 1. Quick Start
10
2. Overview
This chapter provides an overview of the SFC/ST Block Configurator, SFC/ST Library
Configurator, and SFC/ST Display Manager. It also shows how these application integrate
with other I/A Series software.
The SFC/ST Configurator and the SFC/ST Display Manager are graphical user interfaces that
provide an alternative, advanced method of configuring and displaying sequence blocks (DEP,
IND, EXC).
Via Sequential Function Charts (SFCs) and structured text (ST) that comply with the
IEC 61131-3 standard, you configure sequence blocks to build the block algorithms that imple-
ment a process control strategy. The Display Manager enables you view block data during run
time. Figure 2-1 shows the principal components of the SFC/ST sequence block system software.
11
B0193UZ – Rev A 2. Overview
12
2. Overview B0193UZ – Rev A
System Integration
SFC/ST Block Configurator
The SFC/ST Block Configurator is invoked from the Integrated Control Configurator (ICC) as
shown in Figure 2-2.
Integrated Control
Configurator
SFC/ST Block
Configurator
Block installation
13
B0193UZ – Rev A 2. Overview
The SFC/ST Block Configurator uses the standard Object Browser to select compounds, blocks,
and block parameters from the Control and I/O database. The configurator also calls the standard
preprocessor and the HLBL Compiler to compile the SFC/ST code to HLBL code.
Sequence Block
User Graphics
Select Display
SFC/ST
Display Manager
Object Manager
External Interfaces
ICC Interface with the SFC/ST Block Configurator
With the SFC/ST Block Configurator, you can configure only the procedural part of a sequence
block (IND, DEP, EXC). Using the existing functions of the ICC, you must specify the config-
urable parameters (such as, block name, block type, period, phase) and the connection of user
parameters (for example, RI0001) with other blocks.
You invoke the SFC/ST Block Configurator from within the ICC by selecting Edit Sequential
Function Chart in the Block/ECB Functions menu. Refer to Integrated Control Configurator
(B0193AV).
If you select Edit Sequence Logic to program, compile, and install a sequence block in native
HLBL, you cannot use the SFC/ST Block Configurator to edit that block. Conversely, you can-
not use the ICC to edit an SFC/ST sequence block.
The ICC Application Interface (API) supports SFC/ST configured sequence blocks.
14
2. Overview B0193UZ – Rev A
Compatibility
Compatibility with Standards
The SFC/ST sequence block software complies with the IEC 61131-3 standard by using:
♦ Programs, function blocks and functions as organizational elements for the sequence
blocks
♦ SFCs for structuring the internal organization of the sequence block’s main routine
(program), its subroutines (function blocks) and its SBX routines (function blocks)
♦ ST to describe the steps and transitions within SFCs.
Compatibility Issues
SFC/ST-configured sequence blocks have the same block types (DEP, IND, EXC) as the HLBL-
configured sequence blocks. The SFC/ST sequence block compiler transforms the SFC/ST code
into HLBL code.
Up to 255 HLBL step labels in the main routine of a sequence block are now supported. There is
a 2:1 ratio between HLBL step labels and SFC steps. The maximum number of SFC steps is 127.
15
B0193UZ – Rev A 2. Overview
16
3. SFC/ST Block Configurator
This chapter describes the SFC/ST Block Configurator graphical user interface including the
drop-down menus and editor windows. It also describes how to configure SFC/ST sequence
blocks using the available editors and existing library objects.
The SFC/ST Block Configurator enables you to graphically build a sequence block program
using language element specific editors. First, you create the SFC diagram for the main routine.
Then, you edit the statements of the SFC steps and transitions using variables, constants, and calls
to macros, subroutines, and Standard Block Exception Handlers (SBXs), all of which you create
using specific editors. You can also call predefined functions and function blocks by name while
providing the required arguments.
To simplify the configuration of sequence blocks, you can use logic from existing sequence blocks
in the system. You can also build libraries of SFC/ST sequence block logic so that you can reuse
the logic to develop new sequence blocks.
The SFC/ST Block Configurator provides:
♦ main routine configuration with SFC and ST
♦ Step specification with ST
♦ Transition specification with ST
♦ Function blocks that operate on data or alter the flow of control
♦ Functions that operate on data
♦ Subroutine configuration with SFC and ST
♦ Standard Block Exception (SBX) handler configuration with SFC and ST
♦ Macros to facilitate the reuse of ST code snippets by name
♦ Constants, variables, and user labels
♦ Inclusion of library blocks and routines
♦ File inclusion to handle collections of #defines and declarations
♦ Operator remarks
♦ Sequence logic version control with full history of sequence editing available to view
or print out
♦ Printed documentation for SFC graphical structures, steps, transitions, and comments
♦ Password protection class setting of certain SFC/ST Display Manager graphical
objects to prevent a class of users from performing operations such as changing block
mode and state, and tracing ST code.
Sequences can have up to 100 parallel alternative steps/transitions in the graphical structures and
a maximum of 127 steps. The functional content of these steps is restricted only by the memory
available for the sequence block; a maximum of 32 KB is available for each block, equating to sev-
eral thousands lines of code.
17
B0193UZ – Rev A 3. SFC/ST Block Configurator
18
3. SFC/ST Block Configurator B0193UZ – Rev A
Title Bar
Menu Bar
Toolbar
Child Window
Child Window
Display Area
Status Bar
Title Bar
The title bar contains the compound:block description of the block to be configured.
Menu Bar
The menu bar contains the drop-down menu titles. The commands within the menus are enabled
or disabled according to the currently allowed functions in a certain situation. In general, the
menu commands are enabled and disabled depending on the active child window.
Toolbar Section
The toolbar section contains docked toolbars. Available toolbars are:
Common Toolbar Contains buttons for common
functions, such as cut, copy, paste or
undo.
SFC Toolbar Visible only when the SFC Editor
is active. This toolbar contains
buttons for SFC editing functions,
such as inserting steps or transitions.
19
B0193UZ – Rev A 3. SFC/ST Block Configurator
Status Bar
The status bar contains contextual information for menu commands and toolbar buttons.
Table 3-1 lists the common toolbar buttons, Edit menu commands, and their functions. It details
those functions that are highly editor specific, particularly for the SFC Editor. It also lists the edi-
tors in which these buttons and commands are enabled.
20
3. SFC/ST Block Configurator B0193UZ – Rev A
21
B0193UZ – Rev A 3. SFC/ST Block Configurator
Drop-Down Menus
The drop-down menus are selectable from the menu bar at the top of the parent window.
Figure 3-2 shows the Edit menu dropped down from the menu bar. When a menu command is
highlighted, you can select it for use in the currently active editor.
The available menus are:
File Contains menu commands referring to the sequence block as a whole and to
print functions.
Edit Contains menu commands referring to the active child window.
View Contains menu commands to switch the toolbar and status bar on or off.
Editor Contains menu commands to activate the different editors.
Symbols Contains menu commands to insert symbols into the statements of a step or
into the condition of a transition. Symbols is only displayed when the
Step Editor or the Transition Editor is active.
Window Contains menu commands to arrange and close child windows.
Help Contains menu commands to activate Help functions.
22
3. SFC/ST Block Configurator B0193UZ – Rev A
File Menu
Figure 3-3 shows the File menu.
23
B0193UZ – Rev A 3. SFC/ST Block Configurator
Cancel Exits the SFC/ST Block Configurator without installing the block.
Cancel discards any modifications to the block and the calling
application, for example, the ICC, does not install the block.
Print Prints data for the currently active editor according to the current
print selections made by using Print Select from the File menu.
Print uses the print settings chosen by using Print Setup from the
File menu. The printed data depends on the editor from which
Print was selected.
Print Setup... Displays the standard Print Setup dialog box for specifying settings
such as paper format and number of copies.
Print Select... Displays the Print Select dialog box for selecting block data for the
currently active editor for printing.
Print Preview Displays the standard Print Preview dialog box for previewing the
data to be printed.
SFCDM Protection... Displays the SFCDM Protection Class Setting dialog box for
configuring a protection class for all protectable objects (buttons,
menu items, and block modes) of the SFC/ST Display Manager.
Edit Menu
The Edit menu (Figure 3-2) shares many functions with the common toolbar, located at the top
left corner of the parent window. The Edit menu commands depend on the currently active
editor.
For a list of available commands within each editor and the editor related behavior of the com-
mands, see “Common Toolbar and Edit Menu Functions” on page 20 and the specific sections for
each editor.
View Menu
Figure 3-4 shows the View menu.
24
3. SFC/ST Block Configurator B0193UZ – Rev A
Editor Menu
Use the editors that you can select from the Editor menu (Figure 3-5) to create the sequence logic
of the SFC/ST sequence block.
Availability of the last five menu items depends on whether the Block Information (main rou-
tine), Subroutine, or SBX Editor is active. Click Routine… in the Editor menu and select the rou-
tine to edit from the Routine Selection dialog box.
The Editor menu commands and their functions are:
Routine... Opens the Routine Selection dialog box for selecting a routine to
edit or administer, or invokes the Routine dialog box for renaming a
routine.
Macro Opens the Macro Editor window to edit block global macros.
Constant Opens the Constant Editor window to edit block global symbolic
constants.
User Label Opens the User Label Editor window to edit block global user labels.
Block Variable Opens the Variable Editor window to edit block global variables.
Subroutine Parameter Opens the Subroutine Parameter Editor window to edit subroutine
parameters, that is, arguments of a subroutine.
Subroutine Variable Opens the Variable Editor window to edit variables of a subroutine.
SFC Opens the SFC Editor window to edit the SFC of the main routine,
subroutines, or SBX routines.
Step Opens the Step Editor window to edit the steps of the main routine,
subroutines, or SBX routines.
Transition Opens the Transition Editor window to edit the transitions of the
main routine, subroutines, or SBX routines.
25
B0193UZ – Rev A 3. SFC/ST Block Configurator
Symbols Menu
The Symbols menu (Figure 3-6) appears only when the Step Editor or the Transition Editor is
active. This menu contains commands to insert symbols into the:
♦ Statements of a step
♦ Conditions of a transition.
Window Menu
Figure 3-7 shows the Window menu.
26
3. SFC/ST Block Configurator B0193UZ – Rev A
Help Menu
Figure 3-8 shows the Help menu.
Editor Operations
This section describes the various editors within the SFC/ST Block Configurator, and provides
detailed procedures for using these editors to configure an SFC/ST sequence block.
NOTE
Do not use a remark to tell the operator to perform an action.
Comments are only accessible within the SFC/ST Block Configurator and should contain
important information for the process engineer.
27
B0193UZ – Rev A 3. SFC/ST Block Configurator
NOTE
If you try to include a block that includes another block, the configurator displays
the error message “Include level exceeded”.
The SFC/ST Block and Library Configurators open and save library objects using a triple of files
as follows:
♦ <file_name>.k/.g/.h files for a whole block
♦ <file_name>.km/.gm/.hm files for a main routine together with the global data com-
prised of macros, constants, user labels, and global variables
♦ <file_name>.ks/gs/hs files for a subroutine
♦ <file_name>.kx/gx/hx files for an SBX routine.
The SFC/ST Block Configurator always loads a whole block that is identified by its com-
pound:block name. You can save a single routine of the block to the library, but it is still a part of
the block.
The SFC/ST Library Configurator enables you to configure a whole block or a single routine
under a user-specified filename that is independent of any compound:block name.
These configurators do not allow you to modify included library objects; all corresponding but-
tons and menu items for changing included library objects are disabled. You can only modify the
block or library object that is currently loaded in the configurator. An included library object
must first be embedded as a copy into the currently edited block before you can modify it.
The configurators handle inclusion as follows:
♦ All input fields are disabled in the respective editors.
For example, when you invoke the SFC Editor for an SFC of an included routine, all
toolbar buttons are disabled except the button for opening the Step or Transition
Editor.
♦ If a block is included, all editors are affected
♦ If the main routine is included, the following editors are affected:
♦ Block Information Editor
♦ Macro Editor
♦ Constant Editor
♦ User Label Editor
28
3. SFC/ST Block Configurator B0193UZ – Rev A
29
B0193UZ – Rev A 3. SFC/ST Block Configurator
File block.k
Main Routine
Subroutine SBX
Subroutine SBX
#include
Main Routine
Subroutine SBX
Subroutine SBX
Main Routine
#include
Subroutine SBX
Subroutine SBX
Block Includes Another Block that Includes Main and/or Other Routines (Two Include Levels)
#include
Subroutine SBX
30
3. SFC/ST Block Configurator B0193UZ – Rev A
NOTE
Refer to Integrated Control Configurator (B0193AV) for details on creating a new
sequence block and invoking the SFC/ST Block Configurator.
2. Replace the block definition with that from the desired library block (see “Replacing
Definitions from Library” on page 34).
3. Compile and install the block (see “Compiling and Installing the SFC/ST Sequence
Block” on page 103).
This completes copying the SFC/ST sequence block.
31
B0193UZ – Rev A 3. SFC/ST Block Configurator
Click a subroutine.
32
3. SFC/ST Block Configurator B0193UZ – Rev A
Click sequenlibrary.
Click a file.
NOTE
The default folder is /opt/fox/ciocfg/sequenlibrary, but library objects can be in any
folder.
4. In the Files of type box, click the desired type of files to list.
5. In the list of files, click the desired filename.
The filename appears in the File name box.
6. Click Open.
33
B0193UZ – Rev A 3. SFC/ST Block Configurator
If the routine in the selected file is already contained in the block, the SFC/ST
Sequence Block dialog box appears.
7. Click Yes .
This includes the selected library object and displays the path and filename of the included file at
the top of the block information, subroutine, or SBX view.
NOTE
If a block includes another block that includes a .km file (main routine), the first
use of the Embed command inserts a copy of the included block; the .km file
remains included. A second use of Embed inserts a copy of the contents of .km file.
34
3. SFC/ST Block Configurator B0193UZ – Rev A
Click sequenlibrary.
Click a file.
NOTE
The default folder is /opt/fox/ciocfg/sequenlibrary, but library objects can be in any
folder.
4. In the Files of type box, click the desired type of files to list.
NOTE
This displays only those file types appropriate for the active editor.
35
B0193UZ – Rev A 3. SFC/ST Block Configurator
8. Click OK.
The SFC/ST Sequence Block dialog box appears.
9. Click Yes.
This replaces the editor-specific definitions with those from the selected library object, replaces
any included files, and confirms the replacement.
Click a routine.
Click to confirm
replacement.
Click to cancel
replacement.
Click an SFC.
Click a step.
Click to confirm
replacement.
Click to cancel
replacement.
36
3. SFC/ST Block Configurator B0193UZ – Rev A
Click an SFC.
Click a transition from step.
Click a transition to step.
Click to confirm replacement.
Example
With the Step Editor - MAIN window active and step SET_SPEED selected for block
REACT210:AGITATE, confirming the selections in Figure 3-12 and Figure 3-14 replaces the
logic of SET_SPEED with that from block AGITATE in the library.
37
B0193UZ – Rev A 3. SFC/ST Block Configurator
Click sequenlibrary.
NOTE
The default folder is /opt/fox/ciocfg/sequenlibrary, but you can save the block in
any folder.
4. In the File name box, type the desired name such as the block name.
NOTE
The system displays SFC Blocks (.k) in the Save as type box and automatically adds
the .k extension to the filename when saving the block.
5. Click Save.
The Version Information dialog box (Figure 3-17) appears.
6. In the Author box, type the name of the author.
7. In the Comment box, type a comment.
8. Click OK.
This saves the block in the library under the <block_name.k> filename which appears in the list of
files.
38
3. SFC/ST Block Configurator B0193UZ – Rev A
Type comments.
Click to exit the
SFC/ST Configurator.
Click sequenlibrary.
39
B0193UZ – Rev A 3. SFC/ST Block Configurator
NOTE
The default folder is /opt/fox/ciocfg/sequenlibrary, but you can save the routine in
any folder.
NOTE
The system displays the file type for the active editor in the Save as type box, and
automatically adds the appropriate .km/.ks/.kx extension to the filename when sav-
ing the routine.
5. Click Save.
The Version Information dialog box (Figure 3-17) appears.
6. In the Author box, type the name of the author.
7. In the Comment box, type a comment.
8. Click OK.
This saves the routine in the library under the <routine_name>.km/.ks/.kx file name.
Click sequenlibrary.
Click a file.
40
3. SFC/ST Block Configurator B0193UZ – Rev A
! CAUTION
Make sure the library object to be deleted is not included. Search for it in all files
where it could be included. (See “Searching for Included Files” on page 40.)
NOTE
The default folder is /opt/fox/ciocfg/sequenlibrary, but library objects can be stored
in any folder.
Windows NT Search
To search for files where the library object may be included:
1. On the Start menu, point to Find and click Files or Folders...
The Find: All Files dialog box appears.
2. On the Name and Location tabbed page, type the <mask> in the Named box.
3. Click Browse to navigate to the desired drive and folder, and click the folder.
The folder pathname appears in the Look in box.
4. Click the Advanced tab, and then click All Files and Folders in the Of type list.
5. In the Containing text box, type the <inclfile> name (for example, AGITATE).
41
B0193UZ – Rev A 3. SFC/ST Block Configurator
NOTE
On some Windows based workstations, the Containing text box is located on the
Name and Location tabbed page.
Solaris Search
On Solaris systems, execute the following shell command to get a list of files where the include file
is referenced.
1. At the command line prompt (#), type:
/bin/find <directory> -name “<mask>” -exec /bin/fgrep -l “<inclfile>” {}
\;
2. Using the SFC/ST Block or Library Configurator, edit each found file to make sure
the library object to be deleted is not included.
42
3. SFC/ST Block Configurator B0193UZ – Rev A
43
B0193UZ – Rev A 3. SFC/ST Block Configurator
44
3. SFC/ST Block Configurator B0193UZ – Rev A
Example
To interface with the I/A Series Batch system, the macro include file FB_CONST.inc defines the
following phase command and status constants:
/* I/A Series Batch Phase Command/Status Constants */
Click a version to
view its comments.
Click to continue.
45
B0193UZ – Rev A 3. SFC/ST Block Configurator
Type comment.
Block Configuration
For block configuration procedures when using the SFC/ST Block Configurator, see “Overview
of Block Configuration Procedures” on page 3.
For block configuration procedures when using the SFC/ST Library Configurator, see “Adding a
Library Block or Main Routine” on page 7.
For definition of a block, see “Definition of SFC/ST Sequence Block” on page 157.
For the common toolbar and Edit menu functions, see “Common Toolbar and Edit Menu Func-
tions” on page 20.
46
3. SFC/ST Block Configurator B0193UZ – Rev A
The following Edit menu commands are specific to the Block Information editor.
Replace Block Replaces all sequence logic with that from the selected library block
from object. The system replaces all declarations, routines, SFCs, and so on.
It preserves the block type, recipe phase name, and history
information.
Replace Main from Replaces the main routine definition with that from another library
object.
Embed Replaces a block inclusion (#include) with a copy of the included
library block.
Clear Block Clears all sequence logic in the block.
Clear Main Clears the main routine definition from the block.
Print Select All sequence block information can be printed when the Block
Information Editor is active. If more than one version of the sequence
block has been compiled, the History category is enabled. To print all
the version history, click History and All. To print the history for the
latest versions, click History and type the number of revisions you want
to print.
SFC Editor
Use the SFC Editor (Figure 3-24) to graphically edit the Sequential Function Charts for the:
♦ Main routine
♦ Subroutines
♦ SBX routines.
47
B0193UZ – Rev A 3. SFC/ST Block Configurator
Initial Step
Branch Legs
Transition
Vertical Line
Horizontal Line
Drawn Link
Step
The title bar of the editor window displays MAIN for the main routine, the name of the current
subroutine, or the name of the current SBX routine.
The SFC Editor always displays an SFC with the initial step. An empty SFC consists of its initial
step only.
NOTE
You cannot delete the initial step of an SFC.
48
3. SFC/ST Block Configurator B0193UZ – Rev A
49
B0193UZ – Rev A 3. SFC/ST Block Configurator
Interrupted Link
SFC Toolbar
Use the SFC toolbar (Figure 3-26) to build or modify an SFC. A toolbar button is only enabled
when its function can be performed in the current situation.
Table 3-2 lists the buttons of the SFC toolbar and their functions.
Table 3-2. SFC Toolbar Button Functions
Toolbar
Button Function
Inserts a new step beneath the currently selected graphical object.
50
3. SFC/ST Block Configurator B0193UZ – Rev A
Toolbar
Button Function
Inserts a new branch beneath the currently selected graphical object.
Inserts a new branch leg to the right of the currently selected branch leg.
Deletes the currently selected link (see “Deleting a Link” on page 55).
Inserts a new horizontal line to the right of the currently selected branch leg.
Inserts a new vertical line beneath the currently selected graphical object.
Opens a dialog box to change the name of the currently selected step, or to
change the name of the succeeding step for the currently selected link.
Searches for the control flow predecessor(s) of the currently selected object. The
editor restricts the search to those types of objects selected within the Select
Control Flow Element Types dialog box. If predecessors are found, the editor
shows them as selected. If none are found, the editor deselects all objects.
Searches for the control flow successor(s) of the currently selected object. The
editor restricts the search to those types of objects selected within the Select
Control Flow Element Types dialog box. If successors are found, the editor
shows them as selected. If none are found, the editor deselects all objects.
Invokes a dialog box to select the types of control flow objects for searching
control flow predecessor(s) or successor(s) of an object in the SFC network.
Editing Guidelines
Use the SFC Editor (Figure 3-24) to graphically edit Sequential Function Charts for the:
♦ Main routine
♦ Subroutines
♦ SBX routines.
51
B0193UZ – Rev A 3. SFC/ST Block Configurator
The SFC Editor is a grid-oriented editor. You can only arrange the graphical objects of an SFC at
locations according to the editor’s grid.
NOTE
Clicking on any graphical object selects and highlights it. To select a second graphi-
cal object, press the Ctrl key and click the object.
52
3. SFC/ST Block Configurator B0193UZ – Rev A
Inserting a Step
To insert a step:
1. In the SFC, click a transition or any other graphical object (links are not selectable).
NOTE
Do not use a keyword or already defined identifier.
4. Click OK.
This inserts a new step beneath the currently selected graphical object.
Inserting a Transition
To insert a transition:
1. In the SFC, click a step or any other graphical object (links are not selectable).
Inserting a Branch
To insert a branch:
1. In the SFC, click a step or any other graphical object (links are not selectable).
53
B0193UZ – Rev A 3. SFC/ST Block Configurator
Inserting a Link
To insert a link:
1. In the SFC, click the preceding transition for the new link.
54
3. SFC/ST Block Configurator B0193UZ – Rev A
Click succeeding
step from link.
Deleting a Link
To delete a link:
1. To select a link, perform one of the following:
♦ Click any of the line elements between the last element (step or transition) of the
branch and the convergence.
♦ Click any of the line elements of the branch between the divergence and the
convergence, if there is no transition or step in the branch.
♦ Click the last step or transition of the branch.
55
B0193UZ – Rev A 3. SFC/ST Block Configurator
TIP
In the SFC, double-click a step or transition.
56
3. SFC/ST Block Configurator B0193UZ – Rev A
The system validates the structure of the current SFC, but does not validate the syntax
of the ST code related to the SFC’s steps and transitions. It validates that:
♦ Two steps are never directly linked; they must be separated by a transition.
♦ Two transitions are never directly linked; they must be separated by a step.
♦ Each branch leg ends with a step or link.
♦ Each link has a preceding transition and a succeeding step.
Any errors in the structure appear in the Validate dialog box (Figure 3-30).
Click to close
dialog box.
Step Editor
The Step Editor (Figure 3-31) enables you to edit the ST statements of steps in the:
♦ Main routine
♦ Subroutines
♦ SBX routines.
The title bar of the window contains MAIN, or the name of the current subroutine or SBX
routine. The Statement List box displays the existing statements for the selected step.
57
B0193UZ – Rev A 3. SFC/ST Block Configurator
Type comment.
Editing a Step
Use the Step Editor to edit the ST statements, operator remark, and comment of a step. Step
statements must conform to the specifications in “Step Specification with Structured Text (ST)”
on page 163.
To define the statements use the common toolbar, and the Edit and Symbols menus (see “Com-
mon Toolbar and Edit Menu Functions” on page 20).
The following Edit menu commands are specific to the Step Editor.
Replace from Replaces all data of the current step with that from another step in a
library block or routine.
Clear Clears the current steps statements.
Print Select You can select Steps, Comments, or Operator Remarks.
58
3. SFC/ST Block Configurator B0193UZ – Rev A
NOTE
The effect of using the Tab key is different on Windows NT® and Solaris stations:
Windows NT – If you want to insert a tab in your text, press Ctrl+I. The Tab
key moves the focus to the next control (Tab, Shift+Tab).
Solaris – If you want to insert a tab in your text, press the Tab key. Pressing
Ctrl+I just inserts the letter i in your text. Pressing Shift+Tab, however, moves the
focus to the preceding control.
Example
Step SET_SPEED (Figure 3-31) sets the speed of the agitator with the following statement:
AGIT_SPEED := Speed;
where:
Speed is a user label that references block input parameter RI0006.
59
B0193UZ – Rev A 3. SFC/ST Block Configurator
Functions
You can insert predefined function calls in step statements and transition conditions by selecting
the functions from a list in the Symbols dialog box (Figure 3-32). You must specify the
arguments for the calls. For a list of available functions and their definition, see “Functions” on
page 179.
Click a function.
Click to insert selected function
and close dialog box.
Click to close dialog box.
Inserting a Function
To insert a function:
1. In the list of statements or conditions, click the location where you want to insert the
function call.
2. On the Symbols menu, click Functions.
The Symbols dialog box (Figure 3-32) appears.
3. In the Functions list, click a function.
4. To insert the function and close the dialog box, click OK. To insert the function with-
out closing the dialog box, click Apply.
Clicking OK inserts the calling syntax of the selected function at the cursor position
in the step’s statement list (Step Editor) or the transition’s condition (Transition Edi-
tor) and closes the dialog box.
Clicking Apply inserts the calling syntax of the selected function, but the dialog box
remains open so you can insert more functions. To close the dialog box, click Close.
Example
For the statement of step SET_SPEED in Figure 3-31, you can round the user label Speed, which
references block input parameter RI0006 (real data type):
AGIT_SPEED := ROUND (Speed);
This statement sets the agitator speed to the value of RI0006 rounded to the nearest integer.
Function Blocks
You can insert predefined function block calls in step statements by selecting the function blocks
from a list in the Symbols dialog box (Figure 3-33). You must specify the arguments for the calls.
For a list of available function blocks and their definition, see “Function Blocks” on page 184.
60
3. SFC/ST Block Configurator B0193UZ – Rev A
Example
In the PRESSURE_TST sequence block, step start_timer calls the function block
START_TIMER to start a timer in the MANUAL_TIM timer block as follows:
START_TIMER (tim := TIMER_1.TIMR1 , init := 0.0);
where:
TIMER_1 is the MANUAL_TIM block (macro #define).
Subroutines
You can insert subroutine calls in step statements by selecting the subroutines from a list in the
Symbols dialog box (Figure 3-34). You must specify the arguments for the calls. For definition of
a subroutine, see “Subroutines” on page 160.
61
B0193UZ – Rev A 3. SFC/ST Block Configurator
Click a subroutine.
Click to insert selected subroutine
and close dialog box.
Inserting a Subroutine
To insert a subroutine:
1. In the list of statements, click the location where you want to insert the subroutine
call.
2. On the Symbols menu, click Subroutines.
The Symbols dialog box (Figure 3-32) appears.
3. In the Subroutines list, click a subroutine.
4. To insert the subroutine and close the dialog box, click OK. To insert the subroutine
without closing the dialog box, click Apply.
Clicking OK inserts the calling syntax of the selected subroutine at the cursor position
in the step’s statement list (Step Editor) and closes the dialog box.
Clicking Apply inserts the calling syntax of the selected subroutine, but the dialog box
remains open so you can insert more subroutines. To close the dialog box, click Close.
Example
In the AGITATE sequence block, step ONOFF_AGIT calls the subroutine DRIVE to start the
agitator when the Mode is ON (true) as follows:
DRIVE :=(UNIT := ‘’, Device := AGITATOR, State := Mode);
where:
‘’ is REACT210 unit
AGITATOR is the agitator equipment
Mode is ON or OFF.
Compound:Block.Parameter
You can insert Compound:Block.Parameters in step statements and transition conditions by
selecting them from a list in the Browser dialog box (Figure 3-35). This dialog box allows you to
browse all the compounds, blocks, and parameters in the system or a selected control station. For
more information, see “Full Pathname (FPN) Operands” on page 174 and “Identifiers” on
page 168.
62
3. SFC/ST Block Configurator B0193UZ – Rev A
Click a parameter.
Figure 3-35. Object Browser for Compound/Block/Parameter
Inserting a Compound:Block.Parameter
To insert a Compound:Block.Parameter:
1. In the step statement or transition condition, click the location where you want to
insert the Compound:Block.Parameter.
2. In the Symbols menu, click :Comp:Block.Par.
The Browser dialog box (Figure 3-35) appears.
3. Use the Compound List View check box to toggle between viewing compounds or
control stations in the Compound:Block box.
♦ Select the Compound List View check box to view all the compounds in the
system, or clear it to view control stations.
♦ Double-click a control station to view its compounds.
4. To view the blocks in a compound, double-click the compound in the
Compound:Block list.
5. To view the parameters of a block, double-click the block in the Compound:Block list.
♦ To help locate the block, click a block type in the Block Type Filter box.
6. In the Parameter list, click a parameter.
The Object box contains the name of the selected Compound:Block.Parameter.
63
B0193UZ – Rev A 3. SFC/ST Block Configurator
♦ To limit the list of parameters, select the desired type check boxes: Input, Output,
String, All.
7. Click OK.
This inserts the selected Compound:Block.Parameter at the cursor position in the statement or
condition.
Example
In the PRESSURE_TST sequence block, step start_timer calls the function block
START_TIMER to start a timer in the MANUAL_TIM timer block as follows:
START_TIMER (tim := TIMER_1.TIMR1, init := 0.0);
TIMER_1 is a macro #define (MANUAL_TIM), but you can use the above procedures to insert
the Compound:Block.Parameter name as shown below:
START_TIMER (tim := REACT210:MANUAL_TIM.TIMR1V, init := 0.0);
NOTE
Select the main routine to access the Variable Editor for block global variables.
Select a subroutine to access the Variable Editor for subroutine variables
2. In the list, click the constant, user label, macro, or variable declaration for which you
want to copy the name.
The name of the selected declaration element appears in the Name or Label box.
3. In the Name or Label box, select the name or label.
4. On the Edit menu, click Copy.
This copies the name to the clipboard.
5. In the step statement or transition condition, click the location where you want to
paste the contents of the clipboard.
6. On the Edit menu, click Paste.
This pastes the name from the clipboard to the cursor location in the statement or condition.
Transition Editor
The Transition Editor (Figure 3-36) enables you to edit the ST condition of transitions in the:
♦ Main routine
♦ Subroutines
♦ SBX routines.
The title bar of the window contains MAIN, or the name of the current subroutine or SBX
routine. The Condition box displays the existing condition for the selected transition.
64
3. SFC/ST Block Configurator B0193UZ – Rev A
Type comment.
Editing a Transition
Use the Transition Editor to edit the ST condition, operator remark, and comment of a transi-
tion. Transition conditions must conform to the specifications in “Transition Specification with
Structured Text (ST)” on page 165.
To define the condition, use the common toolbar and the Edit and Symbols menus (see “Com-
mon Toolbar and Edit Menu Functions” on page 20).
The following Edit menu commands are specific to the Transition Editor.
Replace from Replaces the current transition data with data from a library block or
routine.
Clear Clears all data for the current transition.
Print Select You can select Transitions, Comments, or Operator Remarks.
65
B0193UZ – Rev A 3. SFC/ST Block Configurator
NOTE
The length of a condition is limited to 504 characters.
The effect of using the Tab key is different on Windows NT and Solaris stations:
Windows NT – If you want to insert a tab in your text, press Ctrl+I. The Tab
key moves the focus to the next control (Tab, Shift+Tab).
Solaris – If you want to insert a tab in your text, press the Tab key. Pressing
Ctrl+I just inserts the letter i in your text. Pressing Shift+Tab, however, moves the
focus to the preceding control.
66
3. SFC/ST Block Configurator B0193UZ – Rev A
Example
The transition from step initialStep to step SET_SPEED (Figure 3-36) controls the flow with the
following condition:
Mode := ON;
where:
ON is a macro #define (TRUE).
Constant Editor
The Constant Editor (Figure 3-37) enables you to edit block global symbolic constant definitions
usable in the:
♦ Main routine
♦ Subroutines
♦ SBX routines.
The Constants box displays the existing constant definitions.
Type comment.
Click Add, Modify, or
Delete to edit constant
as desired.
67
B0193UZ – Rev A 3. SFC/ST Block Configurator
Editing Constants
Use the Constant Editor to edit the name, data type, value, operator remark, and comment for
constants. Constants must conform to the specifications in “Symbolic Constants” on page 159.
To define constants, use the Common toolbar and Edit menu (see “Common Toolbar and Edit
Menu Functions” on page 20).
The following Edit menu commands are specific to the Constant Editor.
Replace from This replaces all constant definitions and the constant include file list of
this block with those from a library block or MAIN routine.
Clear This clears all constant definitions and the constant include files list.
Print Select You can select Constants, Comments, or Operator Remarks.
Adding a Constant
To add a constant:
1. On the Editor menu, click Constant.
The Constant Editor window (Figure 3-37) appears.
2. To select the location for a new constant definition in the Constants list, click the
constant definition above the desired location.
3. In the Name box, type a unique name.
NOTE
Do not use a keyword or already defined identifier.
Modifying a Constant
To modify a constant:
1. On the Editor menu, click Constant.
The Constant Editor window (Figure 3-37) appears.
2. In the Constants list, click an existing constant definition.
The selected constant definition is automatically copied to the Name, Type, Value,
Operator Remark, and Comment boxes.
68
3. SFC/ST Block Configurator B0193UZ – Rev A
NOTE
Do not use a keyword or already defined identifier.
Deleting a Constant
To delete a constant:
1. On the Editor menu, click Constant.
The Constant Editor window (Figure 3-37) appears.
2. In the Constants list, click an existing constant definition.
The system automatically copies the selected constant definition to the Name, Type,
Value, Operator Remark, and Comment boxes.
3. Click Delete.
This deletes the selected constant definition from the Constants list.
Variable Editor
The Variable Editor (Figure 3-38) enables you to edit the variables of the:
♦ Main routine
♦ Subroutine.
Main routine variables are global to the whole sequence block. Subroutine variables are local to
the corresponding subroutine.
The title bar of the window contains MAIN or the name of the current subroutine for which the
variables are defined. The Variables list displays the existing variable definitions.
69
B0193UZ – Rev A 3. SFC/ST Block Configurator
Type comment.
Click Add, Modify, or
Delete, to edit variable
as desired.
Editing Variables
Use the Variable Editor to edit the name, data type, array dimensions, operator remark, and com-
ment for variables. Variables must conform to the specifications in “Block Local Variables” on
page 159.
To define variables, use the common toolbar and Edit menu (see “Common Toolbar and Edit
Menu Functions” on page 20).
The following Edit menu commands are specific to the Variable Editor.
Replace from This replaces all variable definitions of this routine and the variable
include list with those from a library block or routine.
Clear This clears all variable definitions and the variable include list.
Print Select You can select Variables, Comments, or Operator Remarks.
70
3. SFC/ST Block Configurator B0193UZ – Rev A
Adding a Variable
To add a variable:
1. Select a routine to edit:
♦ Select a block routine to edit (see “Selecting a Block Routine to Edit” on page 31).
♦ Select a library routine to edit (see “Selecting a Library Object to Edit” on
page 114).
2. On the Editor menu, click Block Variable or Subroutine Variable as appropriate
for the selected routine.
The Variable Editor window (Figure 3-38) appears.
3. To select the location for a new variable definition in the Variables list, click the
variable definition above the desired location.
4. In the Name box, type a unique name.
NOTE
Do not use a keyword or already defined identifier.
Modifying a Variable
To modify a variable:
1. Select a routine to edit:
♦ Select a block routine to edit (see “Selecting a Block Routine to Edit” on page 31).
♦ Select a library routine to edit (see “Selecting a Library Object to Edit” on
page 114).
2. On the Editor menu, click Block Variable or Subroutine Variable as appropriate
for the selected routine.
The Variable Editor window (Figure 3-38) appears.
3. In the Variables list, click an existing variable definition.
The system automatically copies the selected variable definition to the Name, Type,
Dimensions, Operator Remark, and Comment boxes.
71
B0193UZ – Rev A 3. SFC/ST Block Configurator
NOTE
Do not use a keyword or already defined identifier.
Deleting a Variable
To delete a variable:
1. Select a routine to edit:
♦ Select a block routine to edit (see “Selecting a Block Routine to Edit” on page 31).
♦ Select a library routine to edit (see “Selecting a Library Object to Edit” on
page 114).
2. On the Editor menu, click Block Variable or Subroutine Variable as appropriate
for the selected routine.
The Variable Editor window (Figure 3-38) appears.
3. In the Variables list, click an existing variable definition.
The system automatically copies the selected variable definition to the Name, Type,
Dimensions, Operator Remark, and Comment boxes.
4. Click Delete.
This deletes the selected variable definition from the Variables list.
72
3. SFC/ST Block Configurator B0193UZ – Rev A
Example
Step SET_SPEED sets the speed of the agitator with the following statement:
AGIT_SPEED := Speed;
Speed is a user label that references the block input parameter RI0006. You can define a variable
to set the agitator speed as follows:
RPM := RI0006
AGIT_SPEED := RPM;
Type comment.
Click Add, Modify, or
Delete, to edit user
label as desired.
73
B0193UZ – Rev A 3. SFC/ST Block Configurator
NOTE
Do not use a keyword or already defined identifier.
74
3. SFC/ST Block Configurator B0193UZ – Rev A
NOTE
Do not use a keyword or already defined identifier.
Example
Step SET_SPEED sets the speed of the agitator with the following statement:
AGIT_SPEED := Speed;
where:
Speed is a user label that references block input parameter RI0006.
Macro Editor
The Macro Editor (Figure 3-40) enables you to edit macro definitions in the:
♦ Main routine
♦ Subroutines
♦ SBX routines.
The Definitions list displays the existing macro definitions.
75
B0193UZ – Rev A 3. SFC/ST Block Configurator
Editing Macros
Use the Macro Editor to edit the name and definition for a macro. Macros must conform to the
specifications in “Macros” on page 163.
To define macros, use the common toolbar and Edit menu (see “Common Toolbar and Edit
Menu Functions” on page 20).
The following Edit menu commands are specific to the Macro Editor.
Replace from This replaces all macro definitions and the macro include files list of
this block with those from a library block or main routine.
Clear This clears all macro definitions and the macro include files list.
Print Select You can select only Macros.
76
3. SFC/ST Block Configurator B0193UZ – Rev A
! CAUTION
Make sure you type a unique name. Otherwise, the system will replace every term in
the *.k file matching with the macro’s name, including keywords and identifiers.
Modifying a Macro
To modify a macro:
1. On the Editor menu, click Macro.
The Macro Editor window (Figure 3-40) appears.
2. In the Definitions list, click an existing macro definition.
The system automatically copies the selected macro definition to the Name and
Replacement boxes.
3. Modify the macro definition as desired:
♦ In the Name box, edit the macro name.
! CAUTION
Make sure you type a unique name. Otherwise, the system replaces every term in
the *.k file matching with the macro’s name, including keywords and identifiers.
Deleting a Macro
To delete a macro:
1. On the Editor menu, click Macro.
The Macro Editor window (Figure 3-40) appears.
1. In the Definitions list, click an existing macro definition.
The system automatically copies the selected macro definition to the Name and
Replacement boxes.
2. Click Delete.
This deletes the selected macro definition from the Definitions list.
77
B0193UZ – Rev A 3. SFC/ST Block Configurator
Example
In the PRESSURE_TST sequence block, step start_timer calls the function block
START_TIMER to start a timer in the MANUAL_TIM timer block as follows:
START_TIMER (tim := TIMER_1.TIMR1, init := 0.0);
TIMER_1 is defined by a macro as follows:
# define TIMER_1 :REACT210:MANUAL_TIM
Subroutine Editor
The Subroutine Editor (Figure 3-41) window enables you to display and edit data that is global to
a subroutine, including the operator remark and comment.
Type comment.
The title bar of the window contains the name of the current subroutine. If the subroutine has
been included, the window displays the inclusion pathname. You access the Subroutine Editor
from the Routine Selection dialog box.
78
3. SFC/ST Block Configurator B0193UZ – Rev A
Click a subroutine.
79
B0193UZ – Rev A 3. SFC/ST Block Configurator
NOTE
Do not use a keyword or already defined identifier.
3. Click Add.
This adds the frame of the new subroutine to the SFC/ST sequence block.
4. Click Edit.
The Subroutine Editor window (Figure 3-41) appears.
5. In the Operator Remark box, type a remark.
6. In the Comment box, type a comment.
7. Complete the subroutine:
♦ For the SFC/ST Block Configurator, see “Step 3. Define Subroutines” on page 4.
♦ For the SFC/ST Library Configurator, see “Defining Subroutines” on page 8.
NOTE
Do not use a keyword or already defined identifier.
b. Click Rename.
The new subroutine name appears in the Subroutines list.
80
3. SFC/ST Block Configurator B0193UZ – Rev A
Example
In the AGITATE sequence block, step ONOFF_AGIT calls the subroutine DRIVE to start the
agitator when the Mode is ON (true) as follows:
DRIVE :=(UNIT := ‘’, Device := AGITATOR, State := Mode);
81
B0193UZ – Rev A 3. SFC/ST Block Configurator
where:
‘’ is REACT210 unit
AGITATOR is the agitator equipment
Mode is ON or OFF.
Figure 3-43 shows the SFC for subroutine DRIVE with the code for a step and transition.
82
3. SFC/ST Block Configurator B0193UZ – Rev A
SBX Editor
The SBX Editor (Figure 3-44) enables you to display and edit data that is global to an SBX
routine, including the operator remark and comment. If the SBX has been included, the window
displays the inclusion pathname. The title bar of the window contains the name of the current
SBX. You access the SBX Editor from the Routine Selection dialog box.
Type comment.
83
B0193UZ – Rev A 3. SFC/ST Block Configurator
84
3. SFC/ST Block Configurator B0193UZ – Rev A
85
B0193UZ – Rev A 3. SFC/ST Block Configurator
Example
Figure 3-46 shows the SFC for the TO_INACTIVE SBX with the code for a step and transition.
86
3. SFC/ST Block Configurator B0193UZ – Rev A
Type comment.
Click Add, Modify, or
Delete to edit parameter
as desired.
87
B0193UZ – Rev A 3. SFC/ST Block Configurator
3. To select the location for a new parameter definition in either the Input parameter or
Input/Output parameter list, click the parameter definition above the desired loca-
tion.
4. In the Name box, type a unique name.
NOTE
Do not use a keyword or already defined identifier.
NOTE
Do not use a keyword or already defined identifier.
88
3. SFC/ST Block Configurator B0193UZ – Rev A
Example
In the AGITATE sequence block, step ONOFF_AGIT calls the subroutine DRIVE to start the
agitator when the Mode is ON (true) as follows:
DRIVE :=(UNIT := ‘’, Device := AGITATOR, State := Mode);
UNIT, Device, and State are subroutine input parameters.
89
B0193UZ – Rev A 3. SFC/ST Block Configurator
Type protection
class for all modes.
Type protection
class for desired
modes.
Type protection
class for desired
objects.
90
3. SFC/ST Block Configurator B0193UZ – Rev A
NOTE
Setting a protection class in the Block Mode box overwrites the individual settings
of the four block modes. If you want different values for any of the block modes
(AUTO, S-AUTO, MAN, or BMAN), type the value in the respective boxes.
3. Click OK.
This stores the setting in the protection class file. The settings will take effect for the SFCDM at
runtime.
91
B0193UZ – Rev A 3. SFC/ST Block Configurator
Select to enable print options for Select your print options for the
the active editor (see Table 3-3). active editor (see Table 3-3).
92
3. SFC/ST Block Configurator B0193UZ – Rev A
* This box is available when one or more SFC check boxes are selected. If necessary, use this box to
change the size of the graphical output of SFC diagrams by modifying the scaling factor. This factor
changes the width and height of each printed diagram.
93
B0193UZ – Rev A 3. SFC/ST Block Configurator
3. In the Categories and Related Information group boxes, select the appropriate
check boxes for the active editor.
For example, select the All, Comments, and Operator Remarks check boxes to print all
data for the subroutine currently displayed by the Subroutine Editor.
4. To change the size of the graphical output of SFC diagrams, modify the scale factor in
the Scaling of SFC Output box.
The scale factor changes the width and height of each printed diagram.
NOTE
The Scaling of SFC Output box is available when you select one or more SFC check
boxes.
5. Click OK.
This saves your report configuration and closes the dialog box.
Setting Up a Printer
The Print Setup dialog box (Figure 3-50) enables you to set up the printer. It also provides access
to the Connect to Printer and Document Properties dialog boxes.
94
3. SFC/ST Block Configurator B0193UZ – Rev A
To set up a printer:
1. On the File menu, click Print Setup.
The Print Setup dialog box (Figure 3-50) appears.
2. In the Name list, click the desired printer.
3. In the Size list, click the paper size.
4. In the Source list, click the paper source.
5. In the Orientation group box, click Portrait or Landscape.
6. To set the printer properties, click Properties.
The Document Properties dialog box appears. Set the document properties as desired.
7. To connect to a network printer, click Network.
The Connect to Printer dialog box appears. Select the network printer that you want
to use.
8. Click OK.
This saves your settings and closes the dialog box.
95
B0193UZ – Rev A 3. SFC/ST Block Configurator
Printing to a Printer
The Print dialog box (Figure 3-54) enables you to print to a printer. It also provides access to the
Document Properties and Print to File dialog boxes.
96
3. SFC/ST Block Configurator B0193UZ – Rev A
To print to a printer:
1. On the File menu, click Print.
The Print dialog box (Figure 3-52) appears.
2. In the Name list, click a printer.
3. Click OK.
This prints the selected, editor-specific, configuration data to the designated printer.
Printing to a File
The Print to File dialog box (Figure 3-53) enables you to print the report to a file, which you can
later print to a printer from the Command Prompt window.
97
B0193UZ – Rev A 3. SFC/ST Block Configurator
Click a folder.
Type filename.
To print to a file:
1. On the File menu, click Print.
The Print dialog box (Figure 3-52) appears.
2. Select the Print to file check box.
3. Click OK.
The Print to File dialog box (Figure 3-53) appears.
4. In the Save in list, click the source drive and folder name.
5. In the File Name box, type the output filename.
6. Click Save.
This prints the selected, editor-specific, configuration data to the designated file.
Setting Up a Printer
The Printer Setup dialog box (Figure 3-54) enables you to set up the printer. It also provides
access to the Options and Printer Installation dialog boxes.
98
3. SFC/ST Block Configurator B0193UZ – Rev A
Click to send
output to printer.
Click a printer.
Type scale
(1.0 = 100%).
Type number
of copies.
Select page
orientation.
To set up a printer:
1. On the File menu, click Print Setup.
The Printer Setup dialog box (Figure 3-54) appears.
2. Click Printer Specific.
3. In the Printer list, click a printer.
4. In the Orientation group box, click Portrait or Landscape.
5. In the Scale box, type the desired scale (1.00 = 100%).
6. In the Copies box, type the number of report copies.
7. To set the printer options, click Options .
The Options dialog box appears. Set the printer options as desired.
8. To add a printer, click Install.
The Printer Installation dialog box appears. Add the printer you want to use.
9. To restore the previously saved settings, click Reset.
10. Click Save.
This saves your settings and closes the dialog box.
99
B0193UZ – Rev A 3. SFC/ST Block Configurator
Printing to a Printer
The Print dialog box (Figure 3-55) enables you to print to a printer. It also provides access to the
Printer Setup and Print to File dialog boxes.
Click to confirm
your selections.
Click to set up
printer.
Type number
of copies.
To print to a printer:
1. On the File menu, click Print.
The Print dialog box (Figure 3-55) appears.
2. In the Print Quality list, click the desired print resolution.
3. In the Copies box, type the desired number of copies.
4. To collate the copies, click Collate Copies.
5. Click OK.
This prints the selected, editor-specific, configuration data to the designated printer.
Printing to a File
The Print to File dialog box (Figure 3-56) enables you to print the report to a file, which you can
later print to a printer by command from the VT100 window.
100
3. SFC/ST Block Configurator B0193UZ – Rev A
Click a directory.
To print to a file:
1. On the File menu, click Print.
The Print dialog box (Figure 3-55) appears.
2. Click Print to file.
3. Click OK.
The Print to File dialog box (Figure 3-56) appears.
4. In the File name box, type the output file name.
5. In the Directories box, click the storage directory.
6. Click OK.
This prints the selected, editor-specific, configuration data to the designated file.
101
B0193UZ – Rev A 3. SFC/ST Block Configurator
Click to send
output to a file.
Click to select
printer commu-
nication mode.
Type output
filename.
Type scale
(1.0 = 100%).
Type number
of copies.
Click page
orientation.
102
3. SFC/ST Block Configurator B0193UZ – Rev A
The Compile dialog box displays the error message(s) of the SFC/ST compiler. If a
block is successfully compiled by the SFC/ST compiler, the system passes it to the
HLBL compiler. If the HLBL compiler detects any problems, the system displays the
entire HLBL list file (*.l) within the Compile dialog box.
TIP
Save time while editing (correcting errors) by keeping the Compile dialog box open
to display the result of the last compilation. Once closed, choosing Compile Errors
from the View menu opens the Compile dialog box. You can print the contents of
the Compile dialog box by clicking the Print button.
2. After the sequence block is successfully compiled, click Done on the File menu.
The Version Information dialog box (Figure 3-59) appears and displays the system-
generated version number and the current date and time, which you cannot change.
You can enter the author’s name and any comment.
103
B0193UZ – Rev A 3. SFC/ST Block Configurator
Type comments.
Click to exit the
SFC/ST Configurator.
3. In the Author box, type your name as the author of the current sequence block
configuration.
4. In the Comment box, type your comments.
5. Click OK.
This installs the sequence block in the calling program (for example, the ICC) and exits the
SFC/ST Configurator.
The system only enables Done in the ICC when the block has been compiled without any errors.
104
4. SFC/ST Library Configurator
This chapter describes the SFC/ST Library Configurator graphical user interface including the
drop-down menus and editor windows. It also describes how to configure SFC/ST library
objects using the available editors and existing library objects.
The SFC/ST Library Configurator enables you to graphically build sequence logic library objects
using language element specific editors. You can build sequence blocks, main routines, subrou-
tines, and SBX routines and save them in files for use in developing new sequence blocks.
For example, you can build a library sequence block. First, you create the SFC diagram for the
main routine. Then you edit the statements of the SFC steps and transitions using variables, con-
stants, and calls to macros, subroutines, and Standard Block Exception Handlers (SBXs), all of
which you create using specific editors. You can also call predefined functions and function blocks
by name while providing the required arguments.
When building library objects, you can use logic from other library objects.
The SFC/ST Library Configurator provides:
♦ Saving of sequence logic library objects for later use
♦ Main routine configuration with SFC and ST
♦ Step specification with ST
♦ Transition specification with ST
♦ Function blocks to operate on data or alter the flow of control
♦ Functions to operate on data
♦ Subroutine configuration with SFC and ST
♦ Standard Block Exception (SBX) handler configuration with SFC and ST
♦ Macros to facilitate the reuse of ST code snippets by name
♦ Constants, variables, and user labels
♦ Inclusion of library blocks and routines
♦ File inclusion to handle collections of #defines and declarations
♦ Operator remarks
♦ Sequence logic version control with full history of sequence editing available to view
or print out
♦ Printed documentation for SFC graphical structures, steps, transitions, and
comments.
Sequences can have up to 100 parallel alternative steps/transitions in the graphical structures and
a maximum of 127 steps. The functional content of these steps is restricted only by the memory
available for the sequence block; a maximum of 32 KB is available for each block, equating to sev-
eral thousands lines of code.
The graphical user interface (GUI) of the SFC/ST Library Configurator is based on the Microsoft
User Interface Design Guide, especially the chapter on “Multiple Document Interface (MDI)
Applications.” See “Overview of Graphical User Interface” on page 18.
105
B0193UZ – Rev A 4. SFC/ST Library Configurator
Title Bar
Menu Bar
Toolbar
Child Window
Child Window
Display Area
Status Bar
When you select a new or existing library object for configuration, only the associated child
window is initially active. For example, if you select a block, only the Block Information window
opens. To configure the sequence logic, you must activate the different editors.
Similar to the SFC/ST Block Configurator, the parent window consists of the:
♦ Title bar
♦ Menu bar
♦ Toolbars
♦ Child window area
♦ Status bar.
Title Bar
The title bar contains a description of the library object to be configured.
106
4. SFC/ST Library Configurator B0193UZ – Rev A
Menu Bar
The menu bar contains the drop-down menu titles. The commands within the menus are enabled
or disabled according to the currently allowed functions in a certain situation. In general, the
menu commands are enabled and disabled depending on the active child window.
Toolbar Section
The toolbar section contains docked toolbars. Available toolbars are:
Common Toolbar Contains buttons for common
functions, such as Cut, Copy, Paste
or Undo.
SFC Toolbar Visible only when the SFC Editor
is active. This toolbar contains
buttons for SFC editing functions,
such as inserting steps or transitions.
Table 3-1 lists the common toolbar buttons, Edit menu commands, and their functions. It details
those functions that are highly editor specific, particularly for the SFC Editor. It also lists the edi-
tors in which these buttons and commands are enabled.
107
B0193UZ – Rev A 4. SFC/ST Library Configurator
Drop-Down Menus
The drop-down menus are selectable from the menu bar at the top of the parent window.
Figure 4-2 shows the Edit menu dropped down from the menu bar. When a menu command is
highlighted, you can select it for use in the currently active editor.
The available menus are:
File Contains menu commands referring to the library object and print functions.
Edit Contains menu commands referring to the active child window.
View Contains menu commands to switch the toolbar and status bar on or off.
Editor Contains menu commands to activate the different editors.
Symbols Contains menu commands to insert symbols into the statements of a step or
into the condition of a transition. Symbols is only displayed when the Step Edi-
tor or the Transition Editor is active.
Window Contains menu commands to arrange and close child windows.
Help Contains menu commands to activate Help functions.
File Menu
Figure 4-3 shows the File menu.
108
4. SFC/ST Library Configurator B0193UZ – Rev A
109
B0193UZ – Rev A 4. SFC/ST Library Configurator
Print Setup... Displays the standard Print Setup dialog box for specifying settings such as
paper format and number of copies.
Print Displays the Print Select dialog box for selecting block data for the
Select... currently active editor for printing.
Print Preview Displays the standard Print Preview dialog box for previewing the data to
be printed.
NOTE
A library object can be addressed by selecting only the
<object_name>.k/.km/.ks/.kx file. All related files must be located in the same
folder where they are handled automatically.
Edit Menu
The Edit menu (Figure 4-2) shares many functions with the common toolbar, located at the top
left corner of the parent window. The Edit menu commands depend on the currently active
editor.
For a list of available commands within each editor and the editor-related behavior of the
commands, see Table 3-1 and the specific sections for each editor.
View Menu
Figure 4-4 shows the View menu.
110
4. SFC/ST Library Configurator B0193UZ – Rev A
Editor Menu
Use the editors that you can select from the Editor menu (Figure 4-5) to create the sequence logic
of the SFC/ST sequence block.
Availability of the last five menu items depends on whether the Block Information (main rou-
tine), Subroutine, or SBX Editor is active. Click Routine… in the Editor menu and select the rou-
tine to edit from the Routine Selection dialog box.
The Editor menu commands and their functions are:
Routine... Opens the Routine Selection dialog box for selecting a routine to edit
or administer, or invokes the Routine dialog box for renaming a
routine.
Macro Opens the Macro Editor window to edit block global macros.
Constant Opens the Constant Editor window to edit block global symbolic
constants.
User Label Opens the User Label Editor window to edit block global user labels.
Block Variable Opens the Variable Editor window to edit block global variables.
Subroutine Parameter Opens the Subroutine Parameter Editor window to edit subroutine
parameters, that is, arguments of a subroutine.
Subroutine Variable Opens the Variable Editor window to edit variables of a subroutine.
SFC Opens the SFC Editor window to edit the SFC of the main routine,
subroutines, or SBX routines.
Step Opens the Step Editor window to edit the steps of the main routine,
subroutines, or SBX routines.
Transition Opens the Transition Editor window to edit the transitions of the
main routine, subroutines, or SBX routines.
111
B0193UZ – Rev A 4. SFC/ST Library Configurator
Symbols Menu
The Symbols menu (Figure 4-6) appears only when the Step Editor or the Transition Editor is
active. This menu contains commands to insert symbols into the:
♦ Statements of a step
♦ Conditions of a transition.
Window Menu
Figure 4-7 shows the Window menu.
112
4. SFC/ST Library Configurator B0193UZ – Rev A
Close all Closes all editor windows except the editor (Block Information,
Subroutine Editor or SBX Editor) of the library object being edited.
<Recent window> Activates the selected editor window.
Help Menu
Figure 4-8 shows the Help menu.
Editor Operations
The editors in the SFC/ST Library Configurator are similar to those in the SFC/ST Block Con-
figurator. This section describes general procedures for using these editors to configure SFC/ST
library objects, and refers you to sections in Chapter 3 “SFC/ST Block Configurator” for details.
This section describes detailed procedures only for those operations that are specific to the
SFC/ST Library Configurator.
113
B0193UZ – Rev A 4. SFC/ST Library Configurator
The configurator allows you to use include files for constants, variables, user labels, and macros.
In a large configuration, it may be easier to use include files for these elements.
Common Functions
For using existing sequence logic, Table 4-1 lists the functions that are common to the SFC/ST
Block and Library Configurators and refers you to the appropriate sections in Chapter 3 “SFC/ST
Block Configurator” for details.
Table 4-1. Functions Common to Block and Library Configurators – Using Existing Logic
Function Description
Including Objects In an SFC/ST sequence block, you can include a block, main routine,
subroutine or SBX routine from a library.
See “Including a Library Object” on page 32.
Embedding If a block, subroutine or SBX routine is included from a library file, you
Inclusions can replace the inclusion with a copy of the library object.
See “Embedding an Included Block or Routine” on page 34.
Replacing For an active Block Information Editor, you can choose to replace the
Definitions block or main routine definitions with those from a library object. For
any other active editor window, you can replace editor-specific
definitions with those from a library object.
See “Replacing Definitions from Library” on page 34.
Saving Routines For a sequence block, you can save the sequence logic of the main
routine or a subroutine or SBX routine as a library object.
See “Saving a Routine in a Library” on page 39.
Deleting Objects You can delete a block, main routine, subroutine or SBX routine from a
library.
See “Deleting a Library Object” on page 40.
Adding Include Files You can add data include files for the Macro, Constant, User Label, and
Variable Editors. File inclusion of data definitions makes it easy to
handle collections of #defines.
See “Using Include Files” on page 42.
Viewing Version You can view the version history for a SFC/ST block or library object.
History See “Viewing Version History” on page 45.
114
4. SFC/ST Library Configurator B0193UZ – Rev A
Click sequenlibrary.
Click a file.
NOTE
The default folder is /opt/fox/ciocfg/sequenlibrary, but library objects can be in any
folder.
4. In the Files of type box, click the desired type of files to list.
5. In the list of files, click the desired filename.
The filename appears in the File name box.
6. Click Open.
The editor window for the selected block or routine appears.
115
B0193UZ – Rev A 4. SFC/ST Library Configurator
Click sequenlibrary.
NOTE
The default folder is /opt/fox/ciocfg/sequenlibrary, but you can save library objects
in any folder.
NOTE
The system displays the file type for the active editor in the Save as type box. The
system automatically adds the appropriate .k/.km/.ks/.kx extension to the file name
when saving the routine.
6. Click Save.
116
4. SFC/ST Library Configurator B0193UZ – Rev A
Type comments.
Click to exit the
SFC/ST Configurator.
Editor Description
Block Information When you add a new library block or main routine, the Block
Editor Information window is visible in the SFC/ST Library Configurator
parent window (see “Block Information Editor” on page 46).
117
B0193UZ – Rev A 4. SFC/ST Library Configurator
Table 4-2. Editor Operations Common to Block and Library Configurators (Continued)
Editor Description
Constant Editor Enables you to edit block global symbolic constant definitions usable in
the main routine, subroutines, and SBX routines.
See “Constant Editor” on page 67 and its subsections.
Variable Editor Enables you to edit the variables of main routines and subroutines.
See “Variable Editor” on page 69 and its subsections.
User Label Editor Enables you to edit block global user label definitions in the main
routine, subroutines and SBX routines.
See “User Label Editor” on page 73 and its subsections.
Macro Editor Enables you to edit macro definitions in the main routine, subroutines
and SBX routines.
See “Macro Editor” on page 75 and its subsections.
Subroutine Editor Enables you to display and edit data that is global to a block subroutine,
including the operator remark and comment (see “Subroutine Editor”
on page 78).
For block subroutine configuration procedures, see the following:
♦ “Defining Subroutines” on page 8
♦ “Routine Selection Dialog Box for Subroutines” on page 78
♦ “Editing Subroutines in a Block” on page 79 and its subsections.
SBX Editor Enables you to display and edit data that is global to a block SBX
routine, including the operator remark and comment (see “SBX Editor”
on page 83).
118
4. SFC/ST Library Configurator B0193UZ – Rev A
NOTE
Do not use a keyword or already defined identifier.
119
B0193UZ – Rev A 4. SFC/ST Library Configurator
3. Click OK.
The Subroutine Editor window (Figure 3-41) appears.
4. In the Operator Remark box, type a remark.
5. In the Comment box, type a comment.
To configure an entire subroutine, see “Defining Subroutines” on page 8.
120
4. SFC/ST Library Configurator B0193UZ – Rev A
Checking Syntax
To check the syntax of a library object:
1. On the File menu, click Syntax Check.
The Syntax Error dialog box displays any error messages.
2. Correct any syntax errors and recheck the syntax until no errors are reported.
NOTE
The default folder is /opt/fox/ciocfg/sequenlibrary, but you can save library objects
in any folder.
NOTE
The system displays the file type for the active editor in the Save as type box. The
system automatically adds the appropriate .k/.km/.ks/.kx extension to the file name
when saving the object.
5. Click Save.
The Version Information dialog box (Figure 4-11) appears.
6. In the Author box, type the name of the author.
121
B0193UZ – Rev A 4. SFC/ST Library Configurator
122
5. SFC/ST Display Manager
This chapter describes the SFC/ST Display Manager graphical user interface including the
drop-down menus and display windows. It also describes how to operate the SFC/ST Display
Manager to view sequence block data during run time and to perform certain block operations.
Overview
The SFC/ST Display Manager enables the operator to view SFC/ST sequence block data during
run time and to perform certain block operations.
The SFC/ST Display Manager enables the operator to view the following sequence block data:
♦ SFCs of the main routine, subroutines, and SBXs with highlighting of the active step
or transition(s).
♦ ST statements of steps
♦ Transition conditions with periodically updated operand values
♦ Constant definitions
♦ User label definitions with periodically updated values
♦ Variable definitions
♦ Operator remarks for any SFC/ST element
♦ ST-Trace information, for example, the currently active ST statement of a step
♦ Block state (ACTIVE or INACTIVE)
♦ Block Paused state (DEP blocks only)
♦ Block Suspend state
♦ Block mode (AUTO, S-AUTO, MAN, BMAN)
♦ Block errors.
The operator can perform the following operations:
♦ Block state changes (ACTIVE, INACTIVE)
♦ Block mode changes (AUTO, S-AUTO, MAN, BMAN)
♦ Stepping through the steps and transitions of the main routine in the S-AUTO and
MAN modes
♦ Redirection of the control flow in the main routine in the MAN mode
♦ Tracing through the ST code of steps and transitions (one statement at a time) in
BMAN mode
♦ Suspension Acknowledgement for resuming execution of the block
♦ Acknowledgement of all current block alarms.
Protection class settings lock access to operation buttons, options lists, and menu commands to
prevent certain users from performing one or more of the above operations.
123
B0193UZ – Rev A 5. SFC/ST Display Manager
Locking of graphical objects depends on the access level setting of the current FoxView environ-
ment. A user group with the access level specified by the protection class settings cannot select the
objects protected with that setting.
The graphical user interface (GUI) of the SFC/ST Display Manager is based on the Microsoft User
Interface Design Guide. For more information, see “Overview of Graphical User Interface” on
page 18.
Block Modes
In this document, block mode refers to the modes described in Table 5-1, not to the MA parame-
ter. These modes comply with the mode proposals in ISA-S88.01. Table 5-1 describes the block
modes and shows the relation between the block mode and the MA and STEPMD parameters of
a sequence block.
STEPMD
Block Mode Description MA Value Value
AUTO This mode executes the steps and transitions without 1 0
interruption. You may not force transitions.
S-AUTO This mode executes the steps and transitions upon 1 1
manual Execute commands. You may not force
transitions. The Execute command is only enabled in
the main routine.
MAN This mode is similar to the S-AUTO mode. Addition- 1 1
ally, you can choose the step or transition(s) to be exe-
cuted next, that is, you can modify the control flow.
This is only possible in the main routine.
BMAN This mode is a special I/A Series sequence block mode. 0 0
In this mode, the output parameters of the block are
not secured. You can only invoke ST-Tracing from the
BMAN mode.
NOTE
1. The BMAN mode is an extension to the standard for backward compatibility
reasons.
2. The SFC/ST Display Manager cannot differentiate between the S-AUTO and
MAN mode by evaluating the MA and STEPMD parameter of a sequence block.
The SFC/ST Display Manager administers this differentiation within itself. If the
MA and STEPMD parameters of the sequence block are both 1 at invocation of the
SFC/ST Display Manager, the block mode is always S-AUTO.
124
5. SFC/ST Display Manager B0193UZ – Rev A
ST-Tracing
ST-Tracing means stepping through the ST statements of steps and transitions, one ST statement
at a time. The instruction to be executed next is shown marked.
You can invoke ST-Tracing only in the BMAN mode. You can trace the main routine, subrou-
tines, and SBX routines.
125
B0193UZ – Rev A 5. SFC/ST Display Manager
Faceplate
Block
Description
Compound Name
Block Name OPERR
SYSERR STP
AUTO xxx
PAUSED
STM
ACTIVE xxx
SUSPND
SBR
STEP TRACE xxx
126
5. SFC/ST Display Manager B0193UZ – Rev A
The faceplate in the top right corner of the detail display (see Figure 5-1 and Figure 5-2) contains
the following fields:
SYSERR Represents the SBX error handler number in operation.
PAUSED Indicates a paused DEP block.
SUSPND Indicates a suspended block.
STEP Block’s STEPMD parameter setting (STEP is highlighted or not).
AUTO Block’s MA parameter setting (MANUAL or AUTO).
ACTIVE Block’s state (ACTIVE or IN-ACT).
STP Number of the HLBL step currently executing.
SBR Number of the subroutine currently executing.
127
B0193UZ – Rev A 5. SFC/ST Display Manager
Table 5-2 lists the SFC Sequence Block window objects that you can typically protect.
Object
Access Level Setting Object Protection Class Setting Enabling/Disabling
(FoxView/DM Environment Script) (Application) (Application)
Don’t care Protection class = 6 (protected) Enable object
1
setacl 6 + Protection class = 6 (protected) Enable object
(access level 6 unprotected)
setacl 6 - 1 Protection class = 6 (protected) Disable object
(access level 6 protected)
1
If you are working with a FoxView version earlier than V99.1, or if you are working with the tradi-
tional Display Manager (DM), more work is required. In addition to the access level setting in the
FoxView//DM environment script in the above table, you must perform additional work using the
Display Manager commands protect, unprotect, and setacl. See “Setting an Access Level” on
page 129.
128
5. SFC/ST Display Manager B0193UZ – Rev A
129
B0193UZ – Rev A 5. SFC/ST Display Manager
= ACL 1001001001
setl ACLTRG$DMNAME 1
Example for Process Engineer environment:
= ACL 1000000010
setl ACLTRG$DMNAME 2
You must set ACL in addition to any access level setting you have already performed
by means of the Display Manager commands protect, unprotect, and setacl. ACL
must reflect the setting performed with these commands.
NOTE
1. You cannot change the view-only mode during run time.
2. If you invoke the SFCDM through FoxSelect, it does not run in view-only mode.
Example:
sfcdm.start TESTCOMP TESTBLOCK $DMNAME vo
130
5. SFC/ST Display Manager B0193UZ – Rev A
When the SFCDM is running in the view-only mode, the following objects are protected:
♦ Block mode combo box
♦ Block mode AUTO
♦ Block mode S-AUTO
♦ Block mode MAN
♦ Block mode BMAN
♦ Block state combo box
♦ Suspension Ack. button
♦ Ack. button
♦ Execute button
♦ Redirect button
♦ Detail command
♦ ST-Trace (Main/Subroutine) command
♦ ST-Trace (SBX...) command.
When the SFCDM is running in the view-only mode, the following objects are unprotected:
♦ Goto Active button
♦ Code button
♦ SFC Selection combo box.
Parent Window
Figure 5-3 shows the parent window of the SFC/ST Display Manager. Normally only the child
window SFC Sequence Block is active at invocation, and covers the entire child area of the parent
window.
If the sequence block is in ST-Trace mode at invocation, the SFC Sequence Block and ST-Trace
child windows are active and share the child window area of the parent window (except when the
menu bar’s ST-Trace command is protected).
The parent window consists of the following:
Title Bar The title contains both the compound:block description of the dis-
played sequence block and its block type.
Menu Bar The menu bar contains the drop-down menus. The commands within
the menus are enabled or disabled according to the currently allowed
functions in a certain situation, and on the condition that they are not
protected. In general, commands are enabled and disabled depending
on the active child window.
Child Window Area The child window area contains all child windows, independent of
whether they are minimized or not.
Status Bar The status bar contains contextual information for menu commands. A
special pane in the right side of the status bar is reserved for displaying
messages such as “Cannot detect active element”, “Cannot access
block state data”, or “SFC data reloaded”.
131
B0193UZ – Rev A 5. SFC/ST Display Manager
Title Bar
Menu Bar
Child
Window
Area
Status Bar
132
5. SFC/ST Display Manager B0193UZ – Rev A
Drop-Down Menus
The drop-down menus are selectable from the menu bar at the top of the parent window
(Figure 5-3). When a menu command is highlighted, you can select it for use in the currently
active editor.
The available menus are:
File Contains menu item Exit referring to the sequence block as a whole.
View Contains a menu item to switch the status bar on or off.
Display Contains menu items to activate the different displays.
Window Contains menu items to arrange and close child windows.
Help Contains menu items to activate help functions.
File Menu
Figure 5-4 shows the File menu.
View Menu
Figure 5-5 shows the View menu.
Display Menu
Figure 5-6 shows the Display menu.
133
B0193UZ – Rev A 5. SFC/ST Display Manager
Window Menu
Figure 5-7 shows the Window menu.
134
5. SFC/ST Display Manager B0193UZ – Rev A
Close Closes a child window. The SFC Sequence Block window cannot be
closed.
<Recent Window> Activates the selected child window.
Help Menu
Figure 5-8 shows the Help menu.
Display Windows
SFC Sequence Block Window
The SFC Sequence Block window (Figure 5-9) is the main window in the SFC/ST Display
Manager. Use it to monitor the different SFCs and operate the block.
The currently selected sequential function chart, which appears in the upper-left area of the SFC
Sequence Block window, provides the following features:
♦ Left or right scrolling of the SFC
♦ Framing the active step or transition(s) in green
If the active element cannot be detected, for example, due to a CP failure, the back-
ground color of the SFC changes to cyan.
♦ Step or transition selection by clicking
♦ Selection of all transitions of a branch by clicking a transition of that branch
♦ Display of selected objects with a changed background color
♦ Operations on selected objects (see the following sections)
♦ Display of the main routine’s SFC when the SFC/ST Display Manager is invoked.
135
B0193UZ – Rev A 5. SFC/ST Display Manager
NOTE
The SFC Selection box and the << and >> buttons might be protected.
136
5. SFC/ST Display Manager B0193UZ – Rev A
NOTE
The respective buttons and block modes might be protected. An asterisk (*)
following the name of the block mode indicates that the mode is currently protected
and cannot be selected.
NOTE
Click INACTIVE to place the block in the Inactive state.
137
B0193UZ – Rev A 5. SFC/ST Display Manager
NOTE
Goto Active is enabled only when the block’s state is ACTIVE.
3. In the Block Modes box, click an operating mode (see “Block Modes” on page 124).
The displayed mode always reflects the block’s current mode.
4. To resume execution of the block when the block is suspended (indicated by YES in
the Suspended box), click Suspension Ack.
This resumes execution of the block before the time-out block parameter TIMCNT
expires. This performs the same function as the SPND ACK button in the detail
display.
5. To acknowledge all current block alarms, click Ack.
This performs the same function as the ACK button in the detail display.
The following boxes in the Modes and States group box of the SFC Sequence Block window
(Figure 5-9) provide block status information:
Paused Indicates whether a DEP block is currently in a paused state:
YES = Paused
NO = Not Paused.
For EXC and IND blocks, this box does not display.
Error No. Displays the number of the most recent error; 0 indicates no error.
Suspended Indicates whether a block is currently suspended by a call to the
SENDCONF function block:
YES = Suspended
NO = Not Suspended.
NOTE
1. The respective buttons and block modes might be protected.
2. The initial step of the main routine should contain at least one non-empty
statement. Otherwise, you cannot operate the block properly in the MAN mode.
When in the MAN mode, you cannot redirect to an empty step, even if the step is
not the initial step.
138
5. SFC/ST Display Manager B0193UZ – Rev A
4. To start executing the step or transition(s) to be executed next (green frame), click
Execute.
While the step or transition(s) is executing, Execute is disabled.
After execution of the step or transition(s), the next step or transition(s) becomes the
active object(s) and Execute is enabled.
5. To redirect the control flow only while in MAN, click on a step or transition in the SFC,
and then click Redirect.
The currently selected step or transition(s) becomes the next one(s) to be executed.
NOTE
Make sure that the block is in MAN before clicking on a step or transition,
otherwise, Redirect is not enabled.
139
B0193UZ – Rev A 5. SFC/ST Display Manager
TIP
Double-click a step to open the Step Display window without clicking the Code, if
the Code button is not protected.
140
5. SFC/ST Display Manager B0193UZ – Rev A
141
B0193UZ – Rev A 5. SFC/ST Display Manager
Each condition of an active transition is colored according to the current values (see Figure 5-14).
Connection lines and operator symbols are displayed in color indicating the current state of the
transition condition. The current parameter values are displayed in the parameter view under the
connection line. The default colors are as follows:
♦ Numeric/string: lines in black, operators in grey
♦ Boolean true: lines and operators in dark green
♦ Boolean false: lines and operators in dark red.
The default values for coloring are stored in a configuration file (see “Graphical Transition Dis-
play Settings” on page 146). Each time a parameter changes its value, the representation of the
FBD must be evaluated. This evaluation cannot be done, and the part of the FBD that is
dependent on the respective parameter is shown as inactive, if one of the following conditions is
true:
♦ At least one parameter value is not secure
♦ At least one parameter is a block variable
♦ At least one parameter is non-connectable.
142
5. SFC/ST Display Manager B0193UZ – Rev A
143
B0193UZ – Rev A 5. SFC/ST Display Manager
NOTE
The Code button might be protected.
144
5. SFC/ST Display Manager B0193UZ – Rev A
2. In the SFC Sequence Block window for the main routine, subroutine or SBX, click a
transition (see Figure 5-9).
NOTE
Clicking a transition of a branch selects all transitions of that branch.
TIP
Double-click a transition to open the graphical Transition Display window without
using the Code button, if the Code button is not protected.
NOTE
To view any condition specific operator remarks, go to the textual Transition
Display.
2. Move the splitter window bars to enlarge the operand input window, FBD window, or
output window, respectively.
3. To display the operator remark for a transition, click a transition in the Conditions
list.
This enables the Op. Remark button.
4. Click Op. Remark.
The Operator Remark dialog box (Figure 5-15) appears with the remark for the
transition.
145
B0193UZ – Rev A 5. SFC/ST Display Manager
146
5. SFC/ST Display Manager B0193UZ – Rev A
Table 5-3 shows the allowed keywords along with their meanings and default assignments.
Table 5-3. Graphical Transition Display Color Setting
Transition Default
Keyword State Description Assignment
LINECOLINACTIVE Inactive Line color RGB(0,0,0)
LINECOLNUMSTRING Active Line color numerical/string RGB(0,0,0)
LINECOLTRUE Active Line color Boolean TRUE RGB(0,128,0)
LINECOLFALSE Active Line color Boolean FALSE RGB(128,0,0)
OPFILLCOLINACTIVE Inactive Operator fill color RGB(192,192,192)
OPFILLCOLNUMSTRING Active Operator fill color RGB(192,192,192)
numerical/string
OPFILLCOLTRUE Active Operator fill color Boolean RGB(0,128,0)
TRUE
OPFILLCOLFALSE Active Operator fill color Boolean RGB(128,0,0)
FALSE
OPFRAMECOL ---- Operator border color RGB(0,0,0)
OPTEXTCOLINACTIVE Inactive Operator inscription color RGB(0,0,0)
OPTEXTCOLNUMSTRING Active Operator inscription color RGB(0,0,0)
numerical/string
OPTEXTCOLTRUE Active Operator inscription color RGB(255,255,255)
Boolean TRUE
OPTEXTCOLFALSE Active Operator inscription color RGB(255,255,255)
Boolean FALSE
PARAMNAMECOL ---- Color of the parameter RGB(0,0,0)
name
PARAMVALUECOL Active Color of the parameter RGB(0,0,0)
value
PARAMVALUENOKBKCOL Active Background color of the RGB(0,255,255) *
parameter value, if it is not
secure
TOSTEPBKCOLINACTIVE Inactive Color of the ‘to step’ name RGB(255,255,255)
TOSTEPBKCOLTRUE Active Color of the ‘to step’ name, RGB(255,255,255)
if it becomes active
TOSTEPBKCOLFALSE Active Color of the ‘to step’ name, RGB(255,255,255)
if it is inactive
TRANSDSPLMODEGRAPH ---- Graphical/textual transition TRUE
condition display mode
TRANSDSPLMODE3D ---- 2D/3D representation of TRUE
graphical elements
TRANSDSPLMODEOPT ---- Optimized/non-optimized TRUE
FBD representation
147
B0193UZ – Rev A 5. SFC/ST Display Manager
148
5. SFC/ST Display Manager B0193UZ – Rev A
NOTE
The Code button might be protected.
NOTE
Clicking a transition of a branch selects all transitions of that branch.
149
B0193UZ – Rev A 5. SFC/ST Display Manager
TIP
Double-click a transition to open the Transition Display window without using the
Code button, if the Code button is not protected.
ST-Trace Window
Use the ST-Trace window to sequentially execute and monitor the ST statements of steps and the
conditions of transitions, one ST statement at a time.
This window is available for tracing the ST statements of the:
♦ Main routine and any of its current subroutines
♦ SBX routines.
This window is only enabled if the following are all true:
♦ Block state is ACTIVE
♦ Block is not paused
♦ Block mode is BMAN.
The title bar of the window contains MAIN or the name of the subroutine or SBX. For example,
Figure 5-18 shows the ST-Trace window for the active step ONOFF_AGIT of the main routine.
150
5. SFC/ST Display Manager B0193UZ – Rev A
NOTE
The respective objects (ST-Trace menu and BMAN button) might be protected.
151
B0193UZ – Rev A 5. SFC/ST Display Manager
NOTE
The respective objects (ST-Trace menu and BMAN button) might be protected.
Click an SBX.
Click to trace the SBX.
The SBX Selection dialog box displays all available SBXs within the block. Upon
display of the dialog box, the first SBX is selected.
4. In the SBX list, click an SBX.
5. Click OK.
The ST-Trace window for the selected SBX (see Figure 5-18) appears and the SBX Selection
dialog box closes.
152
5. SFC/ST Display Manager B0193UZ – Rev A
2. To continue tracing, click Single Instr. to execute the next statement or the condi-
tions of the displayed transitions.
The conditions of the displayed transitions are evaluated until a transition condition
becomes true. Then the window displays the statements of the following step.
3. To end ST tracing, click Trace off.
The ST-Trace window closes.
Active Transition
Tracing Subroutines
If a subroutine call statement is reached, the SFC/ST Display Manager:
♦ Displays the SFC of the subroutine in the SFC Sequence Block window.
♦ Displays the subroutine step statements and highlights the first statement in the
ST-Trace window.
♦ Enables the Complete SBR button.
153
B0193UZ – Rev A 5. SFC/ST Display Manager
To continue tracing:
♦ Continue to click Single Instr. for each step statement and transition condition(s)
in the subroutine.
♦ Click Complete SBR to execute all subroutine statements and transition conditions.
The sequence block runs without interruption until it reaches a step statement or
transition condition in Main (main or subroutine tracing) or the SBX (SBX tracing).
All subroutine levels are executed without interruption.
NOTE
When using Complete SBR, some block errors that occur may not display and stop
block execution. To detect all block errors, use Single Instr. When the subroutines
are error free, you can take advantage of the Complete SBR function.
154
5. SFC/ST Display Manager B0193UZ – Rev A
User Labels
Use the User Label Display dialog box (Figure 5-22) to view the block’s user label definitions,
updated values, and associated operator remarks. The Declarations and Values list reflects the res-
olution of preprocessor directives.
155
B0193UZ – Rev A 5. SFC/ST Display Manager
Variable Display
Use the Variable Display dialog box (Figure 5-23) to view the variable definitions and associated
operator remarks for the main routine or a subroutine. The Variable Declarations list reflects the
resolution of preprocessor directives. Variable values are not displayed or updated because the
block does not make them available. The title bar contains Main, or the name of the subroutine
to which the variables belong.
156
6. SFC/ST Configurator Functions
This chapter describes the SFC/ST language elements supported by the SFC/ST Block and
Library Configurators. It describes the elements of the main routine, subroutines, and SBX
routines. These elements include constants, variables, user labels, macros, functions, and
function blocks.
The SFC/ST Configurator supports a subset of the SFC/ST language elements defined in
IEC 61131-3. This subset complies with the standard. In order to support existing HLBL
language elements, there are corresponding enhancements to SFC/ST beyond the standard.
Element Editors
Macros Macro
Declarations Constant
Variable
User Label
Subroutine Parameter
Main routine Block Information
SFC
Step
Transition
Subroutines Subroutine
SFC
Step
Transition
Block exception routines SBX
SFC
Step
Transition
157
B0193UZ – Rev A 6. SFC/ST Configurator Functions
Other declarations for the block consist of constant and main variable declarations.
Subroutine I/O parameter declarations consist of input or input/output declarations.
Syntax
#include "file_name"
Example
/* Author: ...
Date: ...
Revision list: ... */
var1 : DINT; (* comment *) (*_OR operator remark *)
var2 : DINT; (* comment *) (*_OR operator remark *)
...
vari : DINT; (* comment *) (*_OR operator remark *)
158
6. SFC/ST Configurator Functions B0193UZ – Rev A
Symbolic Constants
A symbolic constant is an identifier which represents a constant value. Constants are known
throughout the whole block, including:
♦ Steps and transitions of the main routine
♦ All block exception routines
♦ All subroutines.
Included files can contain constant declarations.
The system supports only constants of the elementary data types (see “Data Types” on page 170).
Comments and operator remarks for constants are optional.
Syntax
constant_name : data_type := value ;
Syntax
variable_name : data_type ;
or
variable_name : ARRAY [ 1..n {, 1..n} ] OF data_type ;
where:
data_type := elementary data type (see “Data Types” on page 170)
n := 1 to 256
159
B0193UZ – Rev A 6. SFC/ST Configurator Functions
Syntax
lab_nam : par_nam ;
where:
lab_nam := user-defined label name
par_nam := user arithmetic, string, or array parameter name
♦ Arithmetic parameters:
BI00nn (where nn = 01 to 24)
II000n (where n = 1 to 8)
RI00nn (where nn = 01 to 15)
BO00nn (where nn = 01 to 16)
IO000n (where n = 1 to 5)
RO00nn (where nn = 01 to 15)
♦ String parameters
SN00nn (where nn = 01 to 10)
♦ Array parameters
BA000n (where n = 1 to 4)
IA000n (where n = 1)
RA000n (where n = 1 to 2)
SFC Network
An SFC network consists of steps and transitions. The steps and transitions are interconnected by
directed links. A transition condition is associated with each transition.
The steps run serially. Each transition can have only one preceding step and only one successor
step. Step names must be unique in the routine, that is, steps with the same name can be defined
in the main routine and a subroutine or SBX routine.
For definition of a step, see “Step Specification with Structured Text (ST)” on page 163. For defi-
nition of a transition condition, see “Transition Specification with Structured Text (ST)” on
page 165.
Subroutines
An SFC/ST sequence block subroutine is an SFC network that can be called from the statements
of the other SFC networks in the same block. Recursive subroutines are not supported, that is,
subroutines cannot call themselves, directly or indirectly. All three block types of SFC/ST
sequence blocks support subroutines. Each block can support a maximum of 128 subroutines.
160
6. SFC/ST Configurator Functions B0193UZ – Rev A
Table 6-1 lists the elements of an SFC/ST subroutine and their associated editors.
Element Editors
Subroutine name Subroutine
Input/output parameters Subroutine Parameter
Local subroutine variables Variable
One SFC network consisting of SFC
steps and transitions Step
Transition
The subroutine name is an identifier (up to 12 characters) that occupies one character in excess.
The number of characters used for all subroutine names within a block is limited to 512.
NOTE
Do not use a keyword or an identifier that has already been defined.
You define the subroutine structure or network using a sequential function chart. The subroutine
SFC network has the structure defined in “SFC Network” on page 160.
NOTE
Output declarations, that is, pure output parameters, are not supported.
The IN parameter provides a value to the subroutine that is used inside the subroutine. The value
may be changed locally within the subroutine, but it is not made known outside the subroutine.
The changed value is only known to the caller, if that parameter was an INOUT parameter.
User-labeled parameters, constants, and local block variables are known within the subroutines.
They can also be passed to the subroutine by means of parameters. You can use a subroutine with
input/output parameters to repeat the same action on different sets of parameters. You can use a
subroutine without input/output parameters to perform different actions upon the same set of
variables.
The total number of input/output parameters and local subroutine variables per subroutine is
limited to 50.
161
B0193UZ – Rev A 6. SFC/ST Configurator Functions
Local subroutine variables can be multidimensional and their number and size are user definable.
Permitted data types of local subroutine variables are the same as for local block variables (see
“Block Local Variables” on page 159). Declarations of local subroutine variables also can be
within included files.
The names of local subroutine variables can have up to 12 characters.
NOTE
Do not use a keyword or an identifier that has already been defined.
NOTE
An ST statement cannot invoke SBXs in the way subroutines can.
162
6. SFC/ST Configurator Functions B0193UZ – Rev A
NOTE
You cannot use Input/Output parameters within an SBX.
Macros
The #define preprocessor command causes a name to become defined as a macro to the prepro-
cessor. A sequence of tokens (replacement text), called the body of the macro, is associated with
the name. When the preprocessor recognizes the name of the macro in the program source text, it
treats the name as a call to that macro. This effectively replaces the name with a copy of the body.
The preprocessor replaces every term in the *.k file matching the macro’s name, including key-
words and identifiers.
Syntax
#define name replacement_text
NOTE
In steps, you cannot use iteration statements such as FOR, WHILE, and REPEAT.
Table 6-3 lists the symbols and their meanings in the syntax used in this section.
Symbol Meaning
:= Is defined to be
| Alternatively
[X] 0 or 1 instance of X
{X} 0 or more instances of X
(X|Y) Either X or Y
’ABC’ Literal string ’ABC’
Empty Empty grammar symbol
Identifier Identifier grammar symbol
163
B0193UZ – Rev A 6. SFC/ST Configurator Functions
Assignment Statements
An assignment statement consists of a variable reference on the left side, followed by the assign-
ment operator :=, followed by the expression to be evaluated.
Syntax
variable_name := expression ;
Examples
START_TIMER(tim := ::Bl_NAME.TIMR3, init := 2.5) ;
ACTCASES(block := ::FILL, act := ’A-AIIA---IA-I’) ;
Selection Statements
Selection statements include the IF and CASE statements. A selection selects one (or a group) of its
component statements for execution, based on a specified condition.
The IF statement specifies that a group of statements is to be executed only if the associated
Boolean expression evaluates to the value true. If the condition is false, then the system:
♦ Executes no statement
♦ Executes the statement group following the ELSE keyword
♦ Executes the statement group following the ELSIF keyword, if its associated Boolean
condition is true.
Syntax
IF expression THEN statement_list
{ELSIF expression THEN statement_list}
[ELSE statement_list]
END_IF ;
164
6. SFC/ST Configurator Functions B0193UZ – Rev A
Example
IF RI1 > 6.9 THEN
RO1 := RI1 ;
ELSIF II1 < 6 THEN
RO1 := 2.3 ;
ELSE
RO1 := 6.4 ;
END_IF ;
The CASE statement consists of an expression that evaluates to a variable of type INT (the selec-
tor), and a list of statement groups, labeled by one or more integers or ranges of integer values.
The system executes the first group of statements with ranges that contain the computed value of
the selector. If the value of the selector is not in the range of any case, the system executes the
statement sequence following the keyword ELSE (if it occurs in the CASE statement). Otherwise,
the system executes none of the statement sequences.
Syntax
CASE expression OF
case_list : statement_list {case_list : statement_list}
[ELSE statement_list]
END_CASE ;
where:
case_list := case_list_element {, case_list_element}
case_list_element := subrange or signed_integer
Example:
CASE 5-II1 OF
1..2,5: RO1 := 3.1 ;
3,4: IF II1 = 3 THEN
RO1 := 4.21 ;
ELSE
RO1 := 4.22 ;
END_IF ;
6..10: RO1 := 5.4 ;
-2: RO1 := -1.2 ;
ELSE
RO1 := 6.5 ;
END_CASE ;
165
B0193UZ – Rev A 6. SFC/ST Configurator Functions
With regard to divergence, the IEC 61131-3 standard offers three types of evaluation for transi-
tion conditions:
♦ Mutual exclusive
♦ Left to right
♦ Priority controlled.
I/A Series SFC/ST evaluates from left to right, although there is no graphical indication at the
crossing point. Nevertheless, it is a good practice to formulate the transition conditions so that
they are mutually exclusive.
For operator remarks within a step’s statement list or transition’s condition, you must use the
syntax (* ... *).
Vocabulary
SFC/ST sequence language statements are composed of the following lexical units:
♦ Characters
♦ Special symbols
♦ Keywords
♦ Literals
♦ Identifiers
♦ Operator remarks.
Characters
The basic character set of the SFC/ST sequence language consists of following letters, numbers,
and special symbols:
♦ Letters A to Z, a to z, and _
♦ Numbers 0 to 9
♦ Special Symbols ' + - * / = { } ( ) [ ] < > . , ; : &
166
6. SFC/ST Configurator Functions B0193UZ – Rev A
Special Symbols
Special symbols serve as operators and delimiters in SFC/ST sequence language statements (see
Table 6-4). Some operators and delimiters consists of several special symbols.
Table 6-4. Special Symbols
Symbol Description
(* *) Encloses an operator remark
’’ Encloses a string data type
:= ♦ Assigns values to parameters
♦ Declares a value for a constant
; Ends a sequence language statement
: ♦ Begins an external reference to a block, compound or block parameter,
or shared variable
♦ Separates compound and block names in a block or block parameter
reference
♦ Delimits case
() Encloses:
♦ Expressions
♦ Arguments for function or function block calls
[] Encloses subscript (variable or constant)
.. Delimits subrange
* Arithmetic operator for multiplication
/ Arithmetic operator for integer or real division
+ ♦ Arithmetic operator for addition
♦ Unary operator for identity
- ♦ Arithmetic operator for subtraction
♦ Unary operator for sign inversion
= Relational operator for equality
<> Relational operator for inequality
< Relational operator for less than
> Relational operator for greater than
<= Relational operator for less than or equal to
>= Relational operator for greater than or equal to
. Separates a compound from a parameter in a pathname, or a block from a
parameter in a parameter reference
, Defines sequence of operands
& Logical AND
167
B0193UZ – Rev A 6. SFC/ST Configurator Functions
Keywords
Table 6-5 lists the keywords available in the SFC/ST Configurator for programming the steps and
transitions.
Table 6-5. Keywords
* These keywords may only be used for programming the steps and transitions.
** These keywords may only be used in the include files for declaration of constants and variables.
NOTE
Do not use keywords to define identifiers or macros.
Identifiers
Identifiers denote the objects that can be identified using SFC/ST sequence language. Examples
of these objects are:
♦ Compounds
♦ Blocks
♦ Shared variables
♦ Parameters of compounds and blocks
♦ Block local variables
♦ Subroutine local variables
♦ User labels.
168
6. SFC/ST Configurator Functions B0193UZ – Rev A
An identifier consists of a letter followed by a sequence of characters which may be letters, digits,
or the underscore character. Uppercase and lowercase characters are allowed for user-defined
identifiers.
NOTE
Uppercase identifiers must not match a keyword.
Examples
nylon_temp
Acethon_Flow
Comments
Use comments to describe SFC/ST elements, such as statements, to another engineer. Comments
do not affect the algorithm’s flow of control or any data operations.
Comments are enclosed by special characters and can include the name, date, version, revision,
functionality, or anything else that needs to be documented.
In SFC/ST sequence blocks, you can define comments at following places:
♦ SFC/ST sequence block header
♦ Subroutine headers
♦ Standard block exception handler headers
♦ Steps
♦ Transitions
♦ Definition of a constant
♦ Definition of a local variable
♦ Definition of a user label.
You cannot define comments within a step’s statement list or a transition’s condition. Only opera-
tor remarks are allowed.
The comment can consists of one or more characters (letters, digits, or underscores). There is no
limit to the number of characters in a comment.
Operator Remarks
The operator can display operator remarks for guidance.
Use operator remarks to describe anything necessary to the operator. An operator remark tells the
operator what the algorithm is doing while executing.
NOTE
Do not use operator remarks to tell the operator to perform an action.
Operator remarks are accessible to the operator from sequence block displays.
169
B0193UZ – Rev A 6. SFC/ST Configurator Functions
In SFC/ST sequence blocks, the engineer can define operator remarks at the following places:
♦ SFC/ST sequence block header
♦ Subroutine headers
♦ Standard block exception handler headers
♦ Steps
♦ Statements
♦ Transitions
♦ Operands of an expression
♦ Definition of a constant
♦ Definition of a local variable
♦ Definition of a user label.
Within a step’s statement list or transition’s condition, you must use the syntax (* ... *).
The operator remark consists of one or more characters (letters, digits, carriage returns, or under-
scores). There is no limit to the number of characters in a remark.
NOTE
Nested operator remarks are not allowed.
Data Types
Data types determine types of values and the operations that may be performed on the values. In
an SFC/ST sequence block, the variables, constants, and input/output parameters can only have
one of the following elementary (predefined) data types:
♦ REAL
♦ DINT (integer)
♦ BOOL (boolean)
♦ STRING
♦ STRING6
♦ STRING12
♦ STRING80
♦ statf_Type
♦ sstate.
The data types REAL, DINT, BOOL and STRING are elementary types in IEC 61131-3.
STRING can contain up to 80 characters. STRING6, STRING12 and STRING80 are types in
HLBL with fixed length.
statf_Type is a predefined structure type.
sstate is a predefined enumeration type.
170
6. SFC/ST Configurator Functions B0193UZ – Rev A
Real
Real data can assume values that are approximations of the real numbers. Real values have an
accuracy of seven digits and they are limited to the range -3.402824e38 to +3.402824e38.
Integer
Integer (DINT) data can have values that express whole numbers. Integer values are limited to the
range -231 to +231 - 1. Operations that can be performed are:
♦ Addition
♦ Subtraction
♦ Multiplication
♦ Division
♦ Testing on relational ordering of values.
Boolean
Boolean (BOOL) data can:
♦ Assume one of two values: TRUE or FALSE
♦ Be manipulated by the operators AND, OR, XOR, and NOT
♦ Be compared for equality and inequality with other Boolean values.
String
String data type can contain any printable characters. They may be compared for equality and
inequality with objects of data type string. There are four string data types:
♦ STRING (up to 80 characters)
♦ STRING80 (80 characters long)
♦ STRING6 (6 characters long)
♦ STRING12 (12 characters long)
statf_Type
statf_Type is a predefined structure data type of the following parameter status attributes (Boolean
values) associated with the user-labeled parameter:
♦ ON
♦ SECURED
♦ BAD
♦ OOS
♦ ERROR
♦ QUALITY.
171
B0193UZ – Rev A 6. SFC/ST Configurator Functions
sstate
sstate is a predefined enumerated data type associated with the compound parameter SSTATE.
sstate has the following values:
In an SFC/ST expression, you can use either the symbolic or the corresponding ordinal value. For
example, the expression of an IF statement, looking for the condition where the compound
SSTATE is active, can be either of the following:
IF (:COMPNAM.SSTATE = Active )
or
IF 1 = ORD(:COMPNAM.SSTATE )
Literal Operands
Literals are values appearing literally in the expressions. They denote instances of values for any of
the allowed data types in ST language (see “Data Types” on page 170).
Integer literals appear as signed integer values.
Real literals appear as signed real values in floating-point notation.
Boolean literals appear as the keywords TRUE or FALSE.
sstate literals appear as the keywords INACTIVE, ACTIVE or EXCEPTION. An sstate literal
may be used to compare against the value of the compound parameter SSTATE.
NOTE
The time literal is not supported in operands. The Boolean literal and sstate literal
are not part of IEC 61131-3.
String literals can be any printable character string except: $, $ followed by two hex digits, $$, $',
$L, $N, $P, $R, $T, $I, $n, $p, $r, and $t.
172
6. SFC/ST Configurator Functions B0193UZ – Rev A
Examples
signed integer literal -99
signed real literal +9.9e+1
Boolean literal TRUE, FALSE
sstate literal Active, Inactive, Exception
string literal ’Heat Phase is beginning’
Constant Operands
Constants are identifiers which act as synonyms to values. You define constants with the Constant
Editor before using them in statements. Constants are known throughout the whole block,
including statements in the main routine, subroutines and SBXs.
Examples
acid_grdient : REAL := +8.4E-4 ;
Pi : REAL := 3.1427593 ;
open : BOOL := TRUE ;
imp_name : STRING := ‘COMP6:EXC7.ACTIVE’ ;
Variables Operands
Variables provide a means of identifying data objects whose contents may change, for example,
data associated with a:
♦ Compound or block parameter
♦ Shared variable
♦ Block or subroutine local variable
♦ Input/output parameter.
Each variable has one of the elementary types defined in “Data Types” on page 170.
Block local variables are known and accessible throughout the block’s algorithm, including state-
ments in the main routine, subroutines, and SBXs.
Subroutine local variables are only known within the subroutine in which they are defined. Sub-
routine variables may have the same name as block variables, in which case the block variable is
not known within that subroutine.
For use of a string type external reference in an expression, the full pathname must be preceded by
the keyword STRING.
A scalar variable consists of a single value of data type real, integer, Boolean, or one of the string
data types.
An array variable is a structure consisting of a fixed number of elements all of which are the same
data type, such as real, integer, Boolean, or one of the string data types. The number of elements
in an array must be specified.
173
B0193UZ – Rev A 6. SFC/ST Configurator Functions
Only a status attribute associated with a user-labeled parameter is allowed the structured form.
The status attribute must be one of the elements of the structured data type statf_Type. The user
label identifier must be connected to one of the following parameters:
BI00nn (where nn = 01 to 24)
II000n (where n = 1 to 8)
RI00nn (where nn = 01 to 15)
SN00nn (where nn = 1 to 10)
BO00nn (where nn = 01 to 16)
IO000n (where n = 1 to 5)
RO00nn (where nn = 01 to 15)
BA000n (where n = 1 to 4)
IA000n (where n = 1)
RA000n (where n = 1 to 2).
Examples
a : DINT ;
safe_pattrns : ARRAY [ 37, 11, 3, 2 ] OF BOOL ;
Valve_outp_s : ARRAY [ 7, 3, 9 ] OF REAL ;
Exc_blk_nams : ARRAY [ 9, 2 ] OF STRING6 ;
Ctl_Compound : STRING12 ;
174
6. SFC/ST Configurator Functions B0193UZ – Rev A
where:
shared_variable is shared variable name (1 to 12 characters)
compound_nam is compound name (1 to 12 characters)
block_nam is block name (1 to 12 characters)
parameter is compound or block parameter name (1 to 6 characters)
tim_nam is timer name (TIMR1, TIMR2, TIMR3, TIMR4)
In the above formats, the expression on the right contains the relative full pathnames. The
compound name is simply omitted from the FPN. At run time, the relative FPN is augmented
with the name of the compound which contains the block that is executed.
The path specified in a reference must not contain any spaces or comments. External references
are case sensitive. Enter all compound names, block names, and parameters must be entered in
uppercase.
When you make an external reference to a user-labeled parameter, use the path to the parameter
and the parameter name (not the assigned user label).
When you use a string type external reference in an expression, precede it with the keyword
STRING. SFC/ST sequence language assumes all external references without the keyword
STRING are arithmetic data types (real, integer, or Boolean).
Examples
:TANK_1:DRAIN.AUTDSR
::DRAIN.AUTDSR
:’SN0001’AUTDSR (* SN0001 contains TANK_1:DRAIN. *)
:TANK_1’BLKSTR’.AUTDSR (* BLKSTR contains :DRAIN *)
:’CBP_STRG (* CBP_STRG contains TANK_1:DRAIN.AUTDSR *)
::’SN0002’.’PAR_NAM’ (* SN0002 contains DRAIN and PAR_NAM contains
AUTDSR *)
:TANK_1:DRAIN
::DRAIN
ERR_FLG : BI0001 (*User-labeled parameter declaration of block1 *)
:BLOCK1.BI0001 := TRUE (*Reference to the user-labeled parameter in
block1 from steps or transitions of block2 in
the same compound *)
:COMPOUND1:BLOCK1.BI0001 := TRUE (* Reference to the user-labeled parameter
in compound1, block1 from steps or
transitions of compound2, block2 *)
Internal References
An internal reference is a reference to a standard block parameter, a user-labeled parameter, or one
of the status attributes associated with a user-labeled parameter, that belongs to the block. In an
internal reference, a user-labeled parameter must be referred to by the user label assigned to the
parameter with the User Label Editor.
175
B0193UZ – Rev A 6. SFC/ST Configurator Functions
Examples
A user-labeled parameter declaration defined within the User Label Editor:
ERR_FLG : BI0001 ;
A reference to the user-labeled parameter in steps or transitions:
ERR_FLG := TRUE ;
A reference to a standard block parameter in steps or transitions:
BI0001 := TRUE ;
Example
TRUNC(3.8)
MID(’Temperature’, 4, 1)
CONCAT_STR( in_1 := ’Boiler_1’ , in_2 := ’Pressure’ )
You may omit the formal parameters, such as in_1. In any case, the sequence of formal
parameters must be correct.
Expressions
Expressions are composed of operators and operands. An operand must be a literal, variable, func-
tion invocation, constant, internal reference, external reference, or another expression.
The evaluation of an expression consists of applying the operators to the operands in a sequence
defined by the operator precedence shown in Table 6-6. The operator with the highest precedence
in an expression is applied first, followed by the operator of next lower precedence, and so on,
until evaluation is complete. Operators of equal precedence shall be applied as written in the
expression from left to right.
176
6. SFC/ST Configurator Functions B0193UZ – Rev A
String Expressions
A string expression constructs a string from any mixture of:
♦ String literals
♦ Results of arithmetic expressions (including non-string external references)
♦ Internal reference to a string item
♦ External references of data type string.
Conversion of arithmetic values to ASCII character string expressions are automatically per-
formed as follows:
♦ A Boolean value is converted into one of the strings TRUE or FALSE.
♦ An integer value is converted into a string of digits, if positive, or into a minus sign
followed by a string of digits, if negative.
♦ A real value converts into a string of fixed length. The string contains:
177
B0193UZ – Rev A 6. SFC/ST Configurator Functions
♦ Mantissa: a sign character (+ or -), one digit, the decimal point, 6 digits, and the
character “e”.
♦ Exponent: a sign character (+ or -), and two digits.
♦ Examples: +8.800497e+01, -7.423075e-13
A string expression can occupy up to 80 characters. If it exceeds 80 characters, no error message is
generated and the excess characters are ignored.
Trailing blanks of the elements that make up the expression are not removed. Trailing blanks of
the string expression are also not removed.
An external reference is interpreted as data type string if, and only if, it is preceded by the keyword
STRING. Without that keyword, arithmetic values retrieved from the external reference are con-
verted to ASCII as described above.
Examples
♦ 7 * 10 + 6
♦ CONCAT_STR (’7’,’6’)
♦ IO0003
If IO0003 = 76, then the above three examples yield: ‘76’
♦ CONCAT_STR (STRING :.NAME , ’biphenyl_temp =’ , RO0002)
If the compound name = ‘COMP_64’ and RO0002 = 27.4, then the above example
yields:
’COMP_64 biphenyl_temp = +2.740000e+01’
♦ CONCAT_STR (’string’ , SN0010 , 3 * i , :COMP:BLK.IO0003)
The result of the above example consists of: the characters ‘string’, contents of
SN0010 (without trailing blanks), the ASCII representation of the value of 3 * i, and
the ASCII representation of the value stored in COMP:BLK.IO0003.
Arithmetic Expressions
Arithmetic expressions include integer, real, and Boolean expressions.
Integer arithmetic expressions are those in which the operators operate on integer operands only,
and the results are integers.
In real arithmetic expressions, the operators operate on all real operands or a combination of inte-
ger and real operands. In the latter case, the integer value is changed to real before the operator is
applied. The results are real.
In Boolean arithmetic expressions, the Boolean result is derived by applying the logical operator
NOT to a Boolean value, or by applying the relational operators (=, <>, <=, >=, <, or >) to com-
patible operands, either arithmetic or string. Examples of Boolean expressions include:
BI0001 := NOT BI0002 ;
BI0003 := cycle_no = 6 ;
This assigns the value TRUE (1) to parameter BI0003 when the integer variable
cycle_no has a value of 6; any other value of cycle_no sets BI0003 to FALSE (0).
BI0004 := cycle_no <> last_cyc ;
This assigns the value TRUE (1) to parameter BI0004 when the integer variable
cycle_no is not equal to the integer variable last_cyc; if the two variables are equal,
BI0004 is set to FALSE (0).
178
6. SFC/ST Configurator Functions B0193UZ – Rev A
Boolean expressions (and IF conditional clauses) can also use string comparisons to determine
Boolean values.
The following string items may be compared:
♦ String constants
♦ Local string scalars (block or subroutine variables, or subroutine arguments)
♦ Subsets of local string scalars using the MID function
♦ Elements of local string arrays (block or subroutine variables, or subroutine
arguments).
Two string expressions can only be tested on equality or inequality. The result of such a compari-
son yields a Boolean value.
In a string comparison, a reference to an FPN may only appear on the left hand side of the equal-
ity operator and must be preceded by the keyword STRING.
NOTE
1. Results of invocation of CONCAT_STR can not be compared with each other.
2. String expressions containing CONCAT_STR can not be compared with each
other.
When entire strings are being compared, trailing blanks of the strings (on either the left or right
hand side of the comparison) are stripped away. As a result, the following Boolean expressions all
yield the same result:
IF STRING :A:B.SN0001 = ’COOL ’ THEN ...
IF STRING :A:B.SN0001 = ’COOL’ THEN ...
IF SN0001 = ’COOL ’ THEN ...
IF ’COOL’ = SN0001 THEN ...
When the expression is comparing string subsets, the trailing blanks are not stripped. For
instance, the following two statements do not yield the same result.
BI0001 := MID (SN0002, 5, 1) = ’COOL ’ ;
This assigns a value of TRUE to the parameter BI0001 when the first five characters
of the string variable are C, O, O, L, and space. If any of the first characters differ,
BI0001 is set to FALSE.
BI0001 := MID (SN0002, 4, 1) = ’COOL ’ ;
In this example, BI0001 can never be true since the subset does not specify enough
characters, and since it is a subset that is being compared, the trailing space in
’COOL ’ is not stripped away.
Other examples of valid string comparisons include:
BO0001 := LoopNamesArr[14] = SN0005 ;
IF MID (SN0003, 12, 61) = ’TempLoop1988’ THEN ...
BI0001 := STRING :COMP4711:BLK0011.SN0010 = ’COMP002’ ;
Functions
SFC/ST sequence blocks supports the following types of functions:
179
B0193UZ – Rev A 6. SFC/ST Configurator Functions
♦ Transfer
♦ Arithmetic
♦ Concatenation
♦ String extraction.
Table 6-7 lists the functions that are supported.
Table 6-7. SFC/ST Functions
Transfer functions convert values of one data type into another data type. They have one parame-
ter and deliver one result. A transfer function may be a simple expression by itself or an operand
in a more complex expression.
Arithmetic functions perform an algebraic operation on an integer or real value. An arithmetic
function may be a simple expression by itself or an operand in a more complex expression.
CONCAT_STR concatenates any mixture of elements to a string type result.
MID extracts a subset of characters from a string type variable.
ABS
Syntax
ABS(n)
where:
n := real or integer value
Description
ABS yields the absolute equivalent of the real or integer type value. The data type of the result is
that of the input.
Examples
ABS(-6) = 6
ABS(3.8888) = 3.8888
ABS(0) = 0
180
6. SFC/ST Configurator Functions B0193UZ – Rev A
CONCAT_STR
Syntax
CONCAT_STR(in_1, in_2, .. in_i)
where:
2 ≤ i ≤ 80
in_ := values of type REAL, DINT, BOOL, STRING, STRING6, STRING12, or
STRING80
Description
CONCAT_STR concatenates any mixture of elements to a string type result. Trailing blanks of
elements that make up the concatenation are not removed. Trailing blanks of the result string are
also not removed. The result string can occupy up to 80 characters. Characters in excess of 80 are
ignored and no operational error is issued. The conversion of elements of an arithmetic value to
ASCII characters is automatically performed as follows:
♦ A Boolean value is converted into one of the strings TRUE or FALSE
♦ An integer value is converted into a string of digits, if positive, or into a minus sign
followed by a string of digits, if negative.
♦ A real value is converted into a string of fixed length.The string contains:
♦ For the mantissa: a sign character (+ or -), one digit, the decimal point, six digits
and the character ’e’.
♦ For the exponent: a sign character (+ or -), and two digits.
Examples:
+5.434356e+03, -4.123456e-12
If (and only if ) an external reference (FPN) is preceded by the keyword STRING, it is expected to
be of data type string.
CONCAT_STR cannot be part of a string comparison. Examples of invalid comparisons:
CONCAT_STR(in_1 := ’AB’,in_2 := ’CD’) <> ’ABCD’
’ABCD’ = CONCAT_STR(in_1 := ’AB’,in_2 := ’CD’)
Example
Message := CONCAT_STR(in_1,in_2) ;
where:
in_1 := ’Temp ’
in_2 := ’High’
Message := ’Temp High’
181
B0193UZ – Rev A 6. SFC/ST Configurator Functions
MID
Syntax
MID(s,l,p)
where:
s := value of type STRING, STRING6, STRING12, or STRING80
l := integer value for length of string
p := integer value for starting position of subset
Description
MID separates a subset of characters from the string type variable s beginning at the start position p
with the length l. The data type of the result is a string type.
NOTE
No string constants are allowed for s. This exception to the IEC 61131-3 standards
is due to the HLBL syntax.
Example
string_var := ‘Example_string’ ;
a := MID(string_var, 3, 4) ;
where:
‘mpl’ := a
ORD
Syntax
ORD(v)
where:
v := value of type enumerated, boolean, or integer
Description
ORD takes the expression v of an ordinal type value and returns an integer result.
If v is an integer type value, ORD returns the value unchanged.
If v is a Boolean value, then ORD(FALSE) = 0 and ORD(TRUE) = 1.
If v is an enumerated value, then ORD yields the integer ordinal number in the range of values for
that enumerated type.
Examples
ORD(FALSE) = 0
ORD(123) = 123
ORD(ACTIVE) = 1
182
6. SFC/ST Configurator Functions B0193UZ – Rev A
ROUND
Syntax
ROUND(r)
where:
r := real value
Description
ROUND takes a real value r and returns an integer result that is the value of the real argument
rounded to the nearest integer.
If the argument r is nonnegative, then ROUND(r) is equivalent to TRUNC(r + 0.5); otherwise, it is
equal to TRUNC(r - 0.5).
Examples
ROUND(3.4) = 3
ROUND(-3.6) = -4
SQRT
Syntax
SQRT(n)
where:
n := real or integer value
Description
SQRT computes the real, square root of the absolute value of the real or integer type value n. The
data type of the result is real.
Examples
SQRT(25) = 5.0
SQRT(1.44) = 1.2
SQRT(0.0) = 0.0
TRUNC
Syntax
TRUNC(r)
where:
r := real value
Description
TRUNC converts a real type value into an integer result that is the integer part of the real
argument r.
183
B0193UZ – Rev A 6. SFC/ST Configurator Functions
Examples
TRUNC(3.8) = 3
TRUNC(-3.8) = -3
Function Blocks
The SFC/ST function blocks:
♦ Perform operations on data (procedural)
♦ Alter the flow of control
♦ Manipulate the elements of an array.
Table 6-8 lists the available function blocks.
All elements of an array can be manipulated in one stroke by means of an array function block.
The return parameter is an internal reference to a:
♦ User array parameter or if defined, its user label name
♦ Block local array variable
♦ Subroutine local array variable
♦ Input/output array parameter.
The elements of an external array (FPN array) cannot be manipulated by an array function.
ABORT
Syntax
ABORT(block := f) ;
where:
f := :compound_nam.block_nam
184
6. SFC/ST Configurator Functions B0193UZ – Rev A
where:
compound_nam is compound name (1 to 12 characters)
block_nam is block name (1 to 12 characters).
Description
ABORT deactivates a sequence (IND, DEP, or EXC) or monitor (MON) block by writing a FALSE
value to the ACTIVATE parameter of the addressed block.
Example
ABORT(block := :REACT_LOGIC:FILL) ;
ACTCASES
Syntax
ACTCASES(block := f, act := p) ;
where:
f := :compound_nam:block_nam or ::block_nam
p := pattern string of A, I, or - characters in any combination (1 to 16 characters)
where:
compound_nam is compound name (1 to 12 characters).
block_nam is block name (1 to 12 characters).
Description
ACTCASES sets the activity status of individual cases in the monitor case statement of the specified
monitor (MON) block. An activation pattern represents the new activity states of the cases
belonging to the addressed MON block.
Each character in the activation pattern corresponds to a case in that block. The characters
allowed in the pattern are A, I, and -:
A = Active
I = Inactive
- = No changes in activity state
The first character stands for the first case in the monitor case statement, the second character for
the second case, and so on. Any cases not specified in the pattern are left as they are.
Example
ACTCASES(block := ::FILL, act := ’A-AIIA---IA-I’) ;
ACTIVATE
Syntax
ACTIVATE(block := f) ;
where:
f := :compound_nam.block_nam
185
B0193UZ – Rev A 6. SFC/ST Configurator Functions
where:
compound_nam is compound name (1 to 12 characters)
block_nam is block name (1 to 12 characters)
Description
ACTIVATE starts a sequence (IND, DEP, or EXC) or monitor (MON) block by writing a TRUE
value to the ACTIVATE parameter of the addressed block.
Example
ACTIVATE(block := :REACT_LOGIC:FILL) ;
BIT_PATTERN
Syntax
BIT_PATTERN(out := n, in := n) ;
where:
n := name of integer or Boolean data type:
where:
♦ Integer data types:
II000n (where n = 1 to 8)
IO000n (where n = 1 to 5)
variable_name (a block or subroutine integer variable, or an input/output param-
eter of a subroutine)
Description
BIT_PATTERN enables the:
♦ Packing of a set of Boolean values into a bit pattern
♦ Unpacking of a bit pattern into a set of Boolean values.
The data type of the out parameter determines whether the bits are packed or unpacked. If the
out parameter is an integer parameter, a set of Boolean values are packed into the integer. If the
out parameter is a Boolean or a Boolean array parameter, the integer value is unpacked into the set
of Boolean parameters.
186
6. SFC/ST Configurator Functions B0193UZ – Rev A
Examples
BIT_PATTERN(out := IO0004, in := BA0003) ;
(* all 16 elements of BA0003 are packed as bit pattern into IO0004 *)
BIT_PATTERN(out := II0008, in := BO0001) ;
(* all 16 boolean output parameters are packed as bit pattern into
II0004 *)
BIT_PATTERN(out := II0001, in := Loc_Bool_arr) ;
(* up to 32 elements of the local boolean array Loc_Bool_arr are
packed as a bit pattern into II0001 *)
BIT_PATTERN(out := BI0001, in := II0002) ;
(* 24 bits of II0002 are used to give 24 boolean input parameters
a boolean value *)
BIT_PATTERN(out := BO0001, in := Loc_Int_Var) ;
(* 16 bits of the local integer variable Loc_Int_Var are used
to give 16 boolean output parameters a boolean value *)
EXIT
Syntax
EXIT( ) ;
Description
When executed, EXIT terminates the block algorithm. That is, deactivates the block. EXIT can be
used in subroutines, SBXs, and/or the main routine.
MULT_ARRAY
Syntax
MULT_ARRAY (value := in, dest := a) ;
where:
in := input expression of type real or integer
a := destination array of real or integer values
Description
MULT_ARRAY multiplies all elements of a destination array a by the value of the input expression in.
The data type of the input expression and destination array must be real or integer.
Examples
MULT_ARRAY (value := -1.2 * Max_Level, dest := RA0001) ;
MULT_ARRAY (value := 2, dest := IA0002) ;
187
B0193UZ – Rev A 6. SFC/ST Configurator Functions
OVERWRITE_STR
Syntax
OVERWRITE_STR(result := r, insert := s, len := l, pos := p) ;
where:
r := result string of any string data type
s := input string of any string data type
l := integer value for length of the inserted string
p := integer value for position where to start overwriting result string
Description
OVERWRITE_STR inserts a number of characters l from the string type input variable s into the
string type result variable r at a given position p. The characters inserted overwrite the existing
characters and the length of the result string does not change.
Example
OVERWRITE_STR(result := SN0001, insert := ’ABC’, len := 3, pos := 4 ) ;
If SN0001 = ’EXAMPLE_STR’ before the invocation of overwrite, then OVERWRITE_STR yields
SN0001 = ’EXAABCE_STR’.
RETRY
Syntax
RETRY( ) ;
RETRY directs the logic to re-execute the erroneous statement that caused the SBX to be executed.
The RETRY statement can be used only within the two error handling SBXs. RETRY is an alternate
exit point from the two error handling SBXs.
SENDCONF
Syntax
SENDCONF(msg := m, dest := g) ;
where:
m := message of any string type
g := destination message group ‘MSGGR1’, ‘MSGGR2’, ‘MSGGR3’, or ‘MSGGR4’
Description
SENDCONF sends a message interactively to logical devices or objects that act like logical devices (for
example, printers and historians).
Upon executing SENDCONF, the standard block parameter SUSPND (suspended on message), is set
true and statement execution is suspended until SUSPND is reset to false externally.
The message must be less than 80 characters.
188
6. SFC/ST Configurator Functions B0193UZ – Rev A
Examples:
SENDCONF(msg := ’Beginning New Batch’, dest := ’MSGGR1’) ;
SENDCONF(msg := CONCAT_STR(in_1 := ’Beginning Batch Number =’,
in_2 := batchno), dest := ’MSGGR2’) ;
SENDMSG
Syntax
SENDMSG(msg := m, dest := n) ;
where:
m := message of any string type
n := name of destination, which is any one of the following:
♦ User string parameter name = SN00nn (where nn = 01 to 10)
♦ User label name
♦ Message group ‘MSGGR1’, ‘MSGGR2’, ‘MSGGR3’, or ‘MSGGR4’.
Description
SENDMSG sends a message to:
♦ Logical devices or objects that act like logical devices (for example, printers and
historians)
♦ User string parameters or if defined, their user label name.
The message must be less than 80 characters.
Examples
SENDMSG(msg := ’Beginning New Batch’, dest := status_flg)
SENDMSG(msg := CONCAT_STR(in_1 := ’Beginning Batch Number = ’,
in_2 := batchno), dest := ’MSGGR2’) ;
SET_ARRAY
Syntax
SET_ARRAY (value := in, dest := a) ;
where:
in := input expression of type real, integer, boolean, or any string
a := destination array of type real, integer boolean, or any string
Description
SET_ARRAY assigns the value of the input expression in to all elements of the destination array a.
The data type of the input expression and destination array may be either string or arithmetic.
Examples
SET_ARRAY (value := 0, dest := RA0001) ;
SET_ARRAY (value := II0008 < 4 OR BI0023, dest := BA0001) ;
SET_ARRAY (value := ’Initialized String’, dest := STR_A2) ;
189
B0193UZ – Rev A 6. SFC/ST Configurator Functions
SET_SBXS
Syntax
SET_SBXS(avail := p) ;
where:
p := availability pattern string of E, D or - characters in any combination
(1 to 5 characters) for SBX1 to SBX5.
where:
E = Enable
D = Disable
- = No changes in availability state
Description
SET_SBXS uses its availability pattern to manipulate the five sequence block parameters DISBX1,
DISBX2, DISBX3, DISBX4 and DISBX5. When an SBX is enabled (DISBXi = false) the SBX is
available, and the block will execute the contents specified in the SBX when the corresponding
event occurs.
Each character in the availability pattern corresponds to an SBX. The characters allowed in the
pattern are E, D, and - (defined above).
The first character refers to SBX1, the second character refers to SBX2, and so forth. If the num-
ber of characters in the availability pattern is less than the maximum number of SBXs, the avail-
ability states of the unnamed SBXs are left as they are.
Example
SET_SBXS(avail := ’E-EDD’) ;
This invocation of SET_SBXS:
♦ Enables the ’TO_SYS_ERROR’ SBX (DISBX1 = false)
♦ Leaves the ’TO_USR_ERROR’ SBX as it was (DISBX1 is not changed)
♦ Enables the ’TO_INACTIVE’ SBX (DISBX1 = false)
♦ Disables the ’TO_MANUAL’ SBX (DISBX1 = true)
♦ Disables the ’TO_PAUSED’ SBX (DISBX1 = true).
START_TIMER
Syntax
START_TIMER(tim := f, init := v) ;
where:
f := :compound_nam:block_nam.tim_nam or ::block_nam.tim_nam
v := real or integer value for initializing the timer (in seconds)
190
6. SFC/ST Configurator Functions B0193UZ – Rev A
where:
compound_nam is compound name (1 to 12 characters)
block_nam is block name (1 to 12 characters)
tim_nam is timer name (TIMR1, TIMR2, TIMR3, TIMR4)
Description
START_TIMER turns on a specified timer in a timer (TIM) block. START_TIMER optionally initial-
izes a timer to the number of seconds specified by the value v. The timer is then incremented by
the value of the block’s period each time the block is scheduled to be executed. Timers are updated
as long as the TIM block is in automatic and the compound is on.
Example
START_TIMER(tim := ::Bl_NAME.TIMR3, init := 2.5) ;
STOP_TIMER
Syntax
STOP_TIMER(tim := f) ;
where:
f := :compound_nam:block_nam.tim_nam or ::block_nam.tim_nam
where:
compound_nam is compound name (1 to 12 characters)
block_nam is block name (1 to 12 characters)
tim_nam is timer name (TIMR1, TIMR2, TIMR3, TIMR4)
Description
STOP_TIMER turns off a specified timer in a timer (TIM) block.
Example
STOP_TIMER(tim := ::Bl_NAME.TIMR3) ;
TSENDCONF
Syntax
TSENDCONF(msg := m, dest := g, time := r, time_out := n) ;
where:
m := message of any string type
g := destination message group ‘MSGGR1’, ‘MSGGR2’, ‘MSGGR3’, or MSGGR4’
r := real value for the time limit (in seconds)
191
B0193UZ – Rev A 6. SFC/ST Configurator Functions
Description
TSENDCONF sends a message interactively to logical devices or objects that act like logical devices
(such as printers and historians).
Upon executing TSENDCONF, the standard block parameter SUSPND (suspended on message), is
set true and statement execution is suspended until SUSPND is reset to false externally or the
time limit expires.
The return parameter time_out is set to true if the time limit is expired. The return parameter
time_out is set to false if SUSPND is externally set to false before the time limit is expired.
The message must be less than 80 characters.
Examples
TSENDCONF(msg := ’Beginning New Batch’, dest := ’MSGGR1’,time := 20.0,
time_out := T_OUT_FLAG) ;
TSENDCONF(msg := CONCAT_STR(in_1 := ’Beginning Batch Number = ’,
in_2 := batchno), dest := ’MSGGR2’, time := 60.0,
time_out := loc_bool1) ;
SUM_ARRAY
Syntax
SUM_ARRAY (value := in, dest := a) ;
where:
in = input expression of data type real or integer
a = array of real or integer values
Description
SUM_ARRAY adds the value of the input expression in to all elements of the destination array a. The
data type of the input expression and destination array must be real or integer.
Examples
SUM_ARRAY (value := -1.2 * Max_Level, dest := RA0001) ;
SUM_ARRAY (value := 2, dest := IA0002) ;
192
6. SFC/ST Configurator Functions B0193UZ – Rev A
WAIT
Syntax
WAIT( time := n ) ;
where:
n = real or integer value for delay time in seconds
Description
WAIT delays execution of statements a specified number n of seconds. The time period expression
n must yield an integer or real value which is interpreted as number of seconds. If the time period
is less than 0.1, block execution is always suspended by one block period, regardless of the value of
the period.
Example
WAIT( time := 1.0 ) ;
193
B0193UZ – Rev A 6. SFC/ST Configurator Functions
194
Index
A
ABORT 184
About 135
ABS 180
Accessing the Constant Display dialog box 154
Accessing the graphical Transition Display window 144
Accessing the Step Display window 140
Accessing the textual Transition Display window 149
Accessing the User Label Display dialog box 155
Accessing the Variable Display dialog box 156
ACTCASES 185
ACTIVATE 185
Arithmetic expressions 178
Assignment statements 164
B
BIT_PATTERN 186
Block configuration procedures overview 2, 3
Block Configurator
child window area 19
common toolbar 19
Edit menu 20
Editor menu 25
File menu 23
Help menu 27
menu bar 19
menus 22
overview 12
parent window 19
SFC toolbar 19
status bar 20
Symbols menu 26
system integration diagram 13
title bar 19
toolbars 19
View menu 24
Window menu 26
Block detail display 126
Block inclusion concept 28
Block Information editor 46
Block modes
AUTO 124
BMAN 124
MAN 124
195
B0193UZ – Rev A Index
S-AUTO 124
Boolean (BOOL) data type 171
C
Cascade 134
CASE statement 165
Changing block mode and state 137
Character set 166
Characters 166
Checking syntax of a library object 121
Comments 27, 169
Common toolbar
functions 20
Compatibility issues 15
Compatibility with standards 15
Compiler
HLBL 14
sequence block 12
Compiling and installing the sequence block 103
CONCAT_STR 181
Concept
routine and block inclusion 28
Constant
adding 68
deleting 69
editing include file pathname 69
modifying 68
Constant Display dialog box 154
Constant Editor 67
Constants 173
Control configurator interface 14
Copying
sequence block 31
Copying a library object 116
D
Data types 170
Deleting a library object 40
Display Manager
Display menu 133
File menu 133
Help menu 135
menus 133
overview 13, 123
parent window 132
running in view-only mode 130
system integration diagram 14
View menu 133
Window menu 134
196
Index B0193UZ – Rev A
Display menu
Display Manager 133
Display menu, Display Manager
ST-trace 134
E
Edit menu
Block Configurator 20
commands 20
Library Configurator 107, 110
Edit menu commands
Clear 22
Clear Block 22
Clear Main 22
Copy 20
Cut 20
Delete 21
Embed 22
Paste 21
Redo 21
Replace Block from 21
Replace from 21
Replace Main from 21
Undo 21
Validate SFC 22
Editor menu
Block Configurator 25
Library Configurator 111
Editor menu, Block Configurator
Block Variable 25
Constant 25
Macro 25
Routine 25
SFC 25
Step 25
Subroutine parameter 25
Subroutine Variable 25
Transition 25
User label 25
Editor menu, Library Configurator
Constant 111
Macro 111
Routine 111
SFC 111
Step 111
Subroutine parameter 111
Transition 111
User label 111
197
B0193UZ – Rev A Index
Variable 111
Editor operations common to Block and Library Configurators 117
Embedding an included block or routine 34
EXIT 187
Expressions 176
External interfaces
control configurator 14
F
File menu
Block Configurator 23
Display Manager 133
Library Configurator 108
File menu, Block Configurator
Cancel 24
Compile 23
Delete from library 23
Done 23
History 23
Include 23
Print 24
Print Preview 24
Print Select 24
Print Setup 24
Save Routine to library 23
Save to library 23
SFCDM Protection 24
File menu, Display Manager
Exit 133
File menu, Library Configurator
Delete 109
History 109
Include 109
New DEP 109
New EXC 109
New IND 109
New Main 109
New SBX 109
New Subroutine 109
Open 109
Print 109
Print Preview 110
Print Select 110
Print Setup 110
Save 109
Save As 109
Save Routine 109
Syntax Check 109
198
Index B0193UZ – Rev A
G
Graphical Transition Display Color settings 146
Graphical Transition Display window 141, 143, 144
H
Help menu
Block Configurator 27
Display Manager 135
Library Configurator 113
Help menu, Block Configurator
About 27
Index 27
Using Help 27
Help menu, Display Manager
About 135
199
B0193UZ – Rev A Index
Index 135
Using Help 135
Help menu, Library Configurator
About 113
Index 113
Using Help 113
I
Identifiers 168
IF statement 164
Include file
adding 43
browsing 44
deleting 44
example 45
Include file pathname
modifying 43
Include files
using 42
Including a library object 33
Inclusion, handling 28
Inclusion, levels 30
Integer (DINT) data type 171
Internal references 175
K
Keywords 168
L
Library block
adding 118
editing 119
Library Configurator
child window area 107
common toolbar 107
Edit menu 107, 110
Editor menu 111
File menu 108
Help menu 113
menu bar 107
menus 108
overview 12
parent window 106
SFC toolbar 107
status bar 107
title bar 106
toolbars 107
200
Index B0193UZ – Rev A
M
Macro
adding 76
deleting 77
editing include file pathname 77
example 78
modifying 77
Macro Editor 75
Macros 163
definition 163
Menus
Block Configurator 22
Library Configurator 108
Microsoft foundation classes 12
MID 182
MULT_ARRAY 187
O
Object filenames 28
Object protection at run time 128
Operate the Step Display window 140
Operate the Variable Display dialog box 156
Operating the Constant Display dialog box 155
Operating the graphical Transition Display window 145
Operating the textual Transition Display window 150
Operating the User Label Display dialog box 155
Operator remarks 27, 169
ORD 182
OVERWRITE_STR 188
P
Printing configuration data 91
201
B0193UZ – Rev A Index
print options 92
selecting configuration data 93
Printing on Solaris workstations
printing to a file 101
printing to a generic file 102
printing to a printer 100
setting up a printer 99
Printing on Windows NT workstations
previewing the printed report 95
printing to a file 98
printing to a printer 97
setting up a printer 95
Protection class
setting a single protection class 90
setting different protection classes 91
Protection class settings 127
Q
Quick start 1
R
Real data type 171
Replacing definitions from library 34
Report configuration 91
RETRY 188
ROUND 183
Routine and block inclusion concept 28
Routine selection 31
Routine Selection dialog box 32
S
Save an object in a library 121
Saving a routine in a library
Block Configurator 39
Saving block in library
Block Configurator 37
SBX
adding a block SBX 85
deleting a block SBX 86
editing a block SBX 85
example 86
SBX Editor 83
Searching for included files 41
Select a routine to edit 32
Selecting a library object to edit 115
Selecting an SFC for display 137
Selection statements 164
SENDCONF 188
202
Index B0193UZ – Rev A
SENDMSG 189
Sequential Function Chart 1
deleting a link 55
displaying structured text 56
editing 52
editing a step name 56
example 47
inserting a branch 53
inserting a branch leg 54
inserting a horizontal line 56
inserting a link 54
inserting a step 53
inserting a transition 53
inserting a vertical line 56
validating the structure 56
SET_ARRAY 189
SET_SBXS 190
Setting an access level 129
SFC 1
SFC Editor 47
SFC graphical objects
branch 49
branch leg 49
horizontal line 49
link 49
Step 49
transition 49
vertical line 49
SFC network 160
SFC Sequence Block window
Display Manager 135
SFC toolbar 50
SFC/ST
Block Compiler 12
block compiler 12
Block Configurator overview 12
Display Manager overview 13
Library Configurator overview 12
Library Configurator parent window 106
System overview diagram 11
SFC/ST Library Configurator operations 105
SFC/ST Sequence Block Configurator operation 17
Special symbols 167
SQRT 183
sstate data type 172
Standard Block Exception Handlers (SBXs)
definition 162
Standards compatibility
IEC 61131-3 15
START_TIMER 190
203
B0193UZ – Rev A Index
204
Index B0193UZ – Rev A
T
Textual Transition Display window 148, 149
Toolbar
SFC 50
Tracing subroutines 153
Transition
editing the condition 66
example 67
Transition Display window 141
graphical 141, 143, 144
textual 148, 149
Transition Editor 64
Transition specification with Structured Text (ST) 165
TRUNC 183
TSENDCONF 191
U
User label
adding 74
deleting 75
editing include file pathname 75
example 75
modifying 74
User Label Display dialog box 155
User Label Editor 73
User-labeled parameter 159
V
Variable
adding 71
deleting 72
editing include file pathname 72
example 73
modifying 71
Variable Display dialog box 156
Variable Editor 69
Variables 173
Version history
Block Configurator 45
View menu
Block Configurator 24
Display Manager 133
Library Configurator 110
View menu, Block Configurator
Compiler Errors 24
Status Bar 24
Toolbars 24
View menu, Display Manager
Status Bar 133
205
B0193UZ – Rev A Index
W
WAIT 193
Window menu
Block Configurator 26
Display Manager 134
Library Configurator 112
Window menu, Block Configurator
Arrange icons 27
Cascade 27
Close 27
Close all 27
recent window 27
Tile 27
Window menu, Display Manager
Arrange Icons 134
Close 135
Normalize 134
recent window 135
Tile 134
Window menu, Library Configurator
Arrange icons 112
Cascade 112
Close 112
Close all 113
recent window 113
Tile 112
33 Commercial Street
Foxboro, Massachusetts 02035-2099
United States of America
www.foxboro.com
Inside U.S.: 1-866-PHON-IPS (1-866-746-6477)
Outside U.S.: 1-508-549-2424 or contact your local Foxboro representative.
Facsimile: 1-508-549-4999
Printed in U.S.A. 1002