SIMATIC Process Control System PCS 7 SFC For SIMATIC S7
SIMATIC Process Control System PCS 7 SFC For SIMATIC S7
1
SIMATIC Process Control System PCS 7 SFC for SIMATIC S7
______________
Introduction 2
______________
Getting started 3
______________
Essentials of SFC 4
SIMATIC ______________
Starting and working 5
Process Control System PCS 7
______________
Creating the project structure 6
SFC for SIMATIC S7 ______________
Creating, configuring and
7
managing SFCs
______________
Adapting the properties of
8
charts, types and instances
Programming and Operating Manual ______________ 9
Configuring messages
______________
Configuring the
10
______________
characteristics
Configuring sequential
11
______________
control systems
Standard interface and chart
12
______________
I/Os
Compiling SFC charts and
13
______________
SFC types
14
______________
Downloading to the AS
Behavior of the sequential
15
______________
control system in the AS
Testing and commissioning
16
______________
sequential control systems
17
______________
Documenting programs
Configuring parameter
18
______________
controls
19
______________
Tips & Tricks
03/2009
A5E02113384-01
Legal information
Legal information
Warning notice system
This manual contains notices you have to observe in order to ensure your personal safety, as well as to prevent
damage to property. The notices referring to your personal safety are highlighted in the manual by a safety alert
symbol, notices referring only to property damage have no safety alert symbol. These notices shown below are
graded according to the degree of danger.
DANGER
indicates that death or severe personal injury will result if proper precautions are not taken.
WARNING
indicates that death or severe personal injury may result if proper precautions are not taken.
CAUTION
with a safety alert symbol, indicates that minor personal injury can result if proper precautions are not taken.
CAUTION
without a safety alert symbol, indicates that property damage can result if proper precautions are not taken.
NOTICE
indicates that an unintended result or situation can occur if the corresponding information is not taken into
account.
If more than one degree of danger is present, the warning notice representing the highest degree of danger will
be used. A notice warning of injury to persons with a safety alert symbol may also include a warning relating to
property damage.
Qualified Personnel
The device/system may only be set up and used in conjunction with this documentation. Commissioning and
operation of a device/system may only be performed by qualified personnel. Within the context of the safety notes
in this documentation qualified persons are defined as persons who are authorized to commission, ground and
label devices, systems and circuits in accordance with established safety practices and standards.
Proper use of Siemens products
Note the following:
WARNING
Siemens products may only be used for the applications described in the catalog and in the relevant technical
documentation. If products and components from other manufacturers are used, these must be recommended
or approved by Siemens. Proper transport, storage, installation, assembly, commissioning, operation and
maintenance are required to ensure that the products operate safely and without any problems. The permissible
ambient conditions must be adhered to. The information in the relevant documentation must be observed.
Trademarks
All names identified by ® are registered trademarks of the Siemens AG. The remaining trademarks in this
publication may be trademarks whose use by third parties for their own purposes could violate the rights of the
owner.
Disclaimer of Liability
We have reviewed the contents of this publication to ensure consistency with the hardware and software
described. Since variance cannot be precluded entirely, we cannot guarantee full consistency. However, the
information in this publication is reviewed regularly and any necessary corrections are included in subsequent
editions.
7.6 Opening........................................................................................................................................90
7.6.1 How to open SFC charts or SFC types........................................................................................90
7.6.2 How to open SFC instances ........................................................................................................91
7.7 Copying ........................................................................................................................................92
7.7.1 Copying and moving SFC charts .................................................................................................92
7.7.2 Copying and moving SFC types ..................................................................................................94
7.7.3 Copying and moving SFC instances............................................................................................94
7.8 Deleting ........................................................................................................................................95
7.8.1 How to delete SFC charts and SFC types ...................................................................................95
7.8.2 How to delete SFC instances.......................................................................................................95
8 Adapting the properties of charts, types and instances............................................................................ 97
8.1 How to adapt chart properties......................................................................................................97
8.2 How to adapt type properties .......................................................................................................99
8.3 How to update SFC Types.........................................................................................................100
8.4 How to adapt instance properties ..............................................................................................101
9 Configuring messages ........................................................................................................................... 103
9.1 How to configure messages in the SFC ....................................................................................103
10 Configuring the characteristics............................................................................................................... 105
10.1 Using the characteristics editor and the interface editor............................................................105
10.2 Characteristics of the SFC type .................................................................................................106
10.3 Note on subsequent modifications to control strategies ............................................................108
10.4 How to configure note texts and position texts ..........................................................................109
10.5 Inputs/outputs for characteristics ...............................................................................................110
10.6 Block contacts ............................................................................................................................111
10.7 Attributes for characteristics.......................................................................................................112
11 Configuring sequential control systems ................................................................................................. 117
11.1 How to configure sequential control systems ............................................................................117
11.2 Creating the sequencer topology ...............................................................................................119
11.2.1 How to create a sequencer topology .........................................................................................119
11.2.2 How to configure multiple sequencers.......................................................................................120
11.2.3 Overview of inserting/creating SFC elements............................................................................124
11.2.4 How to create a sequence .........................................................................................................125
11.2.5 How to create and edit a simultaneous branch..........................................................................126
11.2.6 How to create and edit an alternative branch ............................................................................128
11.2.7 How to create and edit a loop ....................................................................................................129
11.2.8 How to create and edit a jump ...................................................................................................130
11.2.9 How to create and edit a text box ..............................................................................................132
Enhancements/changes in V7.0
Version V7.0 contains the following enhancements or changes compared to version V6.x:
● Executing SFCs after CPU restart
In the settings for the operating parameters you can determine if the SFC should be
initialized after a CPU stop and restart (default) or if it should remain in its current state.
The data that were valid before the stop are lost during an initialization. If you want to
retain the state, the operator can decide if the SFC should continue processing based on
the SFC and process state.
● Analyzing SFCs
With the menu command "Open SFCs..." in test mode, you open a dialog box in which
you can list the SFC charts and SFC instances of the project based on a variety of filter
criteria. For example, you can find SFCs that are in the "AUTO" operating mode and in
the "Held" operating state.
You can select SFCs from the list and open them for analysis.
SFC chart
A SFC chart contains the following:
● A standardized interface for controlling the SFC through the user program or by the
operator
● Up to 8 sequencers for formulating the sequential control system ("gray sequencer")
The sequential control system accesses the basic automation blocks and signals directly and
is therefore not reusable.
6)& &)&
6)&W\SH &)&6)&LQVWDQFH
&)&6)&LQVWDQFH
An SFC instance is derived from an SFC type and initially has properties identical to those of
the SFC type. You can adapt the SFC type to the SFC instance to a limited extent on an
instance-specific basis through changes in the CFC or SFC.
Note
The SFC editor is a tool for creating and testing sequential control systems.
In this documentation, the term "SFC" refers to the chart, type, instance or editor depending
on the context.
Operating principle
1. You create your sequential control system using graphic tools in the SFC editor. You
place the elements of the SFC in the sequencer according to fixed rules. You do not need
to be aware of details such as algorithms or the assignment of machine resources but
can concentrate solely on the technological aspects of your configuration.
2. After creating the sequencers as a series of steps and transitions, you proceed to
configure the object properties of SFC, sequencers, steps and transitions, and formulate
the respective properties there. You configure the following:
– Operating parameters of the SFC
– Start conditions of the sequencers
– Actions of the steps
– Step enabling conditions of the transitions
3. When this configuration is complete, you compile the executable machine code with SFC,
download it to the AS, and test it with the SFC test functions.
SFC chart
If you have never before worked with the SFC editor, it is best to begin with an SFC chart. In
this way, you will require an understanding of the following topics:
● Creating, configuring, compiling and downloading a sequential control system
● How the sequential control system works in the AS
● How to use commands (such as Start and Abort) in a sequential control system in test
mode
Additional information
For further information on this topic, see the following sections:
Creating an SFC chart (Page 23)
Creating an SFC type (Page 26)
Creating an SFC instance (Page 28)
Introduction
The steps for configuring SFC charts are presented in order below.
Procedure
1. Create the project structure
Create a project structure in the SIMATIC Manager in which you configure CFC/SFC
charts.
For further information on this subject, refer to the section
How to create a project structure (Page 73)
2. Adapt the chart properties
You can change the general properties (name, author, comment), adapt the operating
parameters and change the version.
By setting the operating parameters, you specify the behavior of the sequential control
system, such as operating mode (MANUAL, AUTO), step control mode (T, O, T and C,
etc.) and other execution options (cyclic operation, time monitoring or autostart).
In the chart properties, you can change the option that the chart is to be transferred to the
OS.
For further information on this subject, refer to the section
How to adapt chart properties (Page 97)
3. Runtime properties
The runtime properties of an SFC chart specify how this SFC chart fits in the time
sequence of the processing within the overall structure of the target system. You can
change the runtime properties in the window of the sequence editor for the CFC.
For further information on this subject, refer to the section
Runtime properties of an SFC (Page 165)
4. Create the sequencers
The newly created SFC already contains one sequencer (RUN). You create additional
sequencers in the tab of the currently selected sequencer using the shortcut menu or you
copy sequencers from the templates of the SFC Library.
For further information on this subject, refer to the section
How to configure multiple sequencers (Page 120)
5. Configure the sequencer properties
For each sequencer, you configure the start condition and, as an option, the action for
preprocessing and postprocessing and the OS comment, if needed.
For further information on this subject, refer to the section
How to edit sequencer properties (Page 143)
Note
Prior to compiling (Item 9), you must interconnect the external view of the SFC chart or
the SFC instance (of the SFC type) for AUTO mode in the CFC chart.
For further information on this subject, refer to the section
External view of the SFC chart (Page 40)
Tips
The following tips may help you:
● In the "SFC Library", you can access the "ChartStates" SFC chart with the menu
command SFC Library > Blocks+Templates > Templates. This already contains several
sequencers for state-oriented processing of the sequential control system. You can copy
this chart and use it as an example.
● If you want to focus initially on learning the steps from creation to testing of a sequential
control system, you should compile, download and test the "ChartStates" SFC chart (or a
newly created SFC chart) without any modifications. The SFC chart is processed in
MANUAL mode. In this way, you can monitor and influence the processing of the SFC
chart in test mode with the available test functions.
● To stop the SFC chart from being processed "too quickly" in the automation system, you
can move the SFC chart in the run sequence, for example, to the "OB32" task. Select the
menu command Debug >Test Settings and select a suitable monitoring cycle for the test
settings in the SFC.
Introduction
The steps for configuring SFC types are presented in order below:
Procedure
1. Create the project structure
Create a project structure in the SIMATIC Manager in which you can configure CFC/SFC
charts and SFC types.
For further information on this subject, refer to the section
How to create a project structure (Page 73)
Note:
You can also create an SFC type in a library.
2. Create the SFC type
In the Component View of SIMATIC Manager, insert an SFC type as a new object in the
chart folder. The SFC type is entered in the block catalog of CFC.
Tip: In the "SFC Library", you can access the "TypeStates" SFC type with the menu
command SFC Library > Blocks+Templates > Templates. The SFC type already contains
several sequencers for state-oriented processing of the sequential control system. You
will also find the "TypeCtrlStrategy" SFC type. It contains a control strategy-oriented
processing of the sequential control system. You can copy these templates and change
them to suit your purposes.
For further information on this subject, refer to the tips in the section
Configuring the SFC type (Page 83)
3. Adapt the SFC properties
You can change the general properties (name, author, family, FB number, comment),
adapt the operating parameters and change the version.
By setting the operating parameters, you specify the behavior of the sequential control
system, such as operating mode (MANUAL, AUTO), step control mode (T, O, T and O,
for example) and other execution options (such as cyclic operation, time monitoring or
autostart).
For further information on this subject, refer to the section
How to adapt type properties (Page 99)
4. Create the interface
The SFC type already has a standard interface that usually must be extended for the
interconnections of SFC instances with the basic automation.
You can find additional information in the SFC online help, in sections
Standard interface of the SFC type (Page 177)
"Inputs/outputs" interface expansions (Page 184)
"Characteristics" interface expansions (Page 187).
Introduction
The steps for configuring SFC instances are presented in order below:
Procedure
1. Open the CFC chart
Open the CFC chart in which you want to interconnect an SFC instance to the basic
automation blocks.
Place the SFC type in the chart from the CFC block catalog or from a library and thereby
generate an SFC instance.
For further information on this subject, refer to the section
How to Create an SFC Instance (Page 79)
2. Specify the SFC instance properties
Change the general properties (name, comment) in the object properties of the SFC
instance in the CFC, as required.
For further information on this subject, refer to the section
How to adapt instance properties (Page 101)
3. Adapt the operating parameters and options of the instance
In the CFC, open the SFC instance and adapt the operating parameters in the
"Properties" dialog box. These parameters determine the runtime behavior in the AS.
As an option, select which of the control strategies specified by the SFC type are to be
used for the SFC instance.
For further information on this subject, refer to the section
How to adapt instance properties (Page 101)
4. Assign parameters and interconnect the interface of the SFC instance
You assign parameters for the SFC instance in CFC using the object properties or in SFC
using the "I/Os” Interface editor.
In CFC, you interconnect the inputs/outputs of the SFC instance to the inputs/outputs of
the CFC blocks or to shared addresses.
Configuration environment
SIMATIC Manager is used as the graphic user interface for all target systems and it is used
to coordinate the tools and objects. It manages tools and data and is used, among other
things, to created and modify a project structure (CPU, CFC/SFC charts) and to start the
SFC editor.
The figure shows how SFC fits into the STEP 7 and PCS 7 environment:
Key:
Object Meaning
PH (Plant Hierarchy) Software packages of the process control system (PCS 7)
IEA (Import/Export Assistant)
PO (process object view)
WinCC Operator control and monitoring system in PCS 7 (here with the
add-on package for SFC Visualization).
Note
You cannot assign SFC types to a hierarchy folder in the plant view since they themselves
are not relevant to execution (from the perspective of the process to be automated).
Additional information
You can find additional information on the plant hierarchy in the online help for PH.
Object Number
Sequencers per SFC chart ≤8
Sequencers per SFC type ≤ 32
Steps per sequencer 2 - 255
Instructions per action ≤ 50
Transitions per sequencer 1 - 255
Conditions per transition / start condition ≤ 16
6)& &)&
To configure the sequential control system, you must know the mechanisms for processing
an SFC and its sequencers in the AS.
You will find more information on this subject in the following sections:
Sequential control systems in the AS (Page 243)
Runtime behavior of the sequential control system (Page 245)
Operating states (Page 251)
Operating state logic for SFC (Page 252)
Executing an SFC (Page 263)
Properties
The properties of the SFC chart include the following elements:
● Name, author and comment as descriptive data
● The operating parameters for the AS that determine the execution in the AS (for example,
operating mode, step control mode, execution options).
You will find more information on this subject in the following sections:
Operating modes (Page 246)
Step control modes (Page 247)
Execution options (Page 249)
Runtime behavior of the sequential control system (Page 245)
You can also specify whether operator control and monitoring of the SFC chart on the OS is
to be possible ("Transfer chart to OS for visualization" check box). You require the "SFC
Visualization" add-on package on the OS for this purpose.
You can configure the message properties and the footer data of the SFC chart as additional
properties.
Control
The standard interface of the SFC chart contains the required inputs/outputs for the following
tasks:
● Controlling the SFC chart in AUTO mode via the user program
● Operator control and monitoring of the SFC chart in MANUAL mode by the operator
Control of the SFC chart in AUTO mode is realized in the external view of the SFC chart.
For further information on the external view, refer to the section
External view of the SFC chart (Page 40)
For further information on the SFC chart, refer to the online help, in sections
Standard interface of the SFC type (Page 169)
Inputs/Outputs of the SFC chart standard interface (Page 170)
Inputs/outputs of the SFC chart sorted according to usage (Page 176)
Sequencers
The actual sequential control system is formulated with the sequencers.
The SFC chart allows configuration of up to 8 sequencers for formulating the control function
(in the figure this is the "gray sequencer").
For further information on the sequencers, refer to the following sections:
What is a sequencer? (Page 42)
What is an SFC type/SFC instance? (Page 36)
SFC chart and SFC type compared (Page 39)
SFC type
An SFC type is a sequential control system that normally controls a smaller sub area of a
plant (unit or section of a plant, whereby the control task occurs repeatedly in similar form in
the plant. For this reason, with the SFC type the sequential control system is created as a
type-defined template apart from a specific application. Once it is created, you can use the
SFC type repeatedly by generating SFC instances from it.
The SFC type contains a standardized interface to allow control of the SFC from the user
program or by the user and allows configuration of up to 32 sequencers for formulating the
control function ( "gray sequencer"). The interface can also be expanded by the user (
interface with "gray background" in figure). The SFC type accesses only its own interface
and can therefore be used as often as required as an SFC instance.
SFC instance
An SFC instance is derived from an SFC type and initially has properties identical to those of
the SFC type. You can adapt the SFC instance to a limited extent on an instance-specific
basis in CFC or SFC. Only after interconnecting the SFC instance with blocks and signals of
basic automation do you have an executable sequential control system.
6)&W\SH &)&6)&LQVWDQFH
&)&6)&LQVWDQFH
You can find additional information about this in the following sections:
Sequential control systems in the AS (Page 243)
Runtime behavior of the sequential control system (Page 245)
Operating states (Page 251)
Operating state logic for SFC (Page 252)
Executing an SFC (Page 263)
Common features
An SFC chart and an SFC type have the following common features:
● Standard interface for external control of the SFC (MANUAL/AUTO)
● Sequencers for formulating the control function of the SFC
Differences
An SFC chart and an SFC type differ as follows:
Display
The external view of the SFC chart represents the SFC chart in a CFC chart as a block with
its interface. To distinguish it from CFC blocks and nested charts, the external view has the
"SFC chart" icon in the header.
Purpose
In the external view, you can assign parameters for and interconnect the interface of the
SFC chart for AUTO mode so that the status of the SFC chart can be determined and the
control signals can be derived from it for the SFC chart. This allows you to influence the
processing of the SFC chart via the user program. If the SFC chart is used in MANUAL
mode, only the inputs/outputs that are also processed in MANUAL mode are relevant in the
external view.
Interconnection
You can provide the inputs/outputs with textual interconnection and/or interconnect them
with compatible inputs/outputs of other objects or with shared addresses. You make all
interconnections in the sheet bar. You cannot place any object, such as blocks, in this
window.
Properties
You can open the object properties for the entire interface or for each individual I/O in the
header of the external view. The Run Sequence window opens in the runtime properties box.
For additional information on the interface, refer to the following sections:
Standard interface of the SFC type (Page 170)
Inputs/outputs of the SFC chart sorted according to usage (Page 176)
Sequencer
Sequencers enable status-dependent and event-driven execution in the SFC.
When it is created, each sequencer is given a consecutive number. This number is required
for the "programmed target steps" and to interpret the outputs of the SFC in the CFC view.
An SFC chart can include a maximum of 8 sequencers and an SFC type a maximum of 32
sequencers, which can be controlled by defining different start conditions.
One sequencer at a time is displayed in the working window of the SFC. You switch to
another sequencer via the tab at the lower edge of the window.
When you create a new SFC chart/type, a sequencer with the name "RUN" and the start
condition RUN=TRUE is created automatically (Note: This corresponds to a chart of V5.x).
The start conditions are formulated like transition conditions. For additional information, refer
to the section What is a transition? (Page 46). An empty start condition – in contrast to the
transition – is evaluated as FALSE, in other words, the sequencer is never executed.
In addition to this start condition, each sequencer also contains the "Priority" attribute (1 –
255) that is used to specify the start order if the conditions of several sequencers are
satisfied simultaneously (in the "Start Condition" tab of the "Sequencer Properties" dialog
box). If the conditions of multiple sequencers with the same priority are met simultaneously,
the position of the sequencer in the tab determines the order of processing in the CPU
(similar to the alternative branch; you will find information on this in the section Processing
an alternative branch (Page 276)).
You can also configure an additional action for each sequencer. Each action consists of the
following:
● Preprocessing: actions to be executed in every cycle after the sequencer has started and
before the steps and transitions are processed
● Postprocessing: actions to be executed in every cycle after the steps and transitions are
processed
This, for example, allows you to make pre-settings or to pass on the results of the sequencer
execution.
You will find more information on configuring sequencers in the section
How to Configure Multiple Sequencers (Page 120)
Resources
When programming and assigning parameters for steps, transitions, start condition and
preprocessing and postprocessing in SFCs, you can access the interface of the SFC, the
CFC block inputs/outputs, the runtime groups, other SFCs, and all shared addresses of the
user program. With the textual interconnections, you can also access objects that do not yet
exist. When you configure steps and transitions in SFC types, it is only possible to use the
SFC type’s own interface inputs/outputs in addition to the textual interconnections.
Screen display
The elements of an SFC are shown on the screen as follows:
● All the elements of a sequencer, including the links are displayed in white with black print
in the unselected and unedited state.
● Selected elements, including the links are displayed in blue.
● Edited steps or transitions (whose object properties have been changed) are displayed in
gray with black print.
Note
The colors indicated here are the default settings, some of which can be modified.
For additional information, see: Default colors (Page 71).
Step
The step is a control entity for processing the assigned actions in the AS. You can configure
up to three actions (Initialization, Processing, Termination) for each step.
Action
An action is a series of statements formulated as follows:
● Assignments for assigning parameters of CFC blocks or shared resources, for example:
Setpoint temp:=100
XYZ.pump.on :=TRUE
● Enabling or disabling of an SFC or a runtime group, for example:
SFC_1.INTONOFF := TRUE
ABL_1.EN := FALSE
Step types
You can use one start step, a maximum of 253 normal steps, and one final step in each
sequencer. When a sequencer is created, one start step, one final step and one transition
are created automatically. These three basic elements form the initial state of a sequencer
that you can then adapt by adding further chart elements.
The start step is activated at the start of the sequencer and the associated actions are
executed according to the status of the successor transition. The final step does not have a
successor transition; all actions are processed exactly once.
You cannot copy, cut or delete the start step or final step. This ensures sure a sequencer
always contains one (and only one) start step and final step.
All steps besides the start step and final step are normal steps.
Transition
A transition contains the conditions with which a sequential control system passes control
from one step to the next. Several conditions can be logically combined using Boolean
operators. The result of the logic operation determines whether the next step is enabled.
1DPH &RPPHQW
Transition condition
The result of a transition condition in an SFC chart is derived from a Boolean expression that
is formed by logic operations on the values of the following elements:
● Shared addresses
● Textual interconnections
● CFC block inputs/outputs
● Runtime group state
● SFC chart status
In SFC types, only the inputs/outputs of the SFC type’s own interface can be used in addition
to the textual interconnections.
During compilation, an empty transition is pre-assigned the default value TRUE. This pre-
assignment is necessary because while the formulation of a condition is optional, the AS
requires a defined value as a step enabling condition.
If several transitions are valid simultaneously, for example, in the alternative branch, for a
loop or jumps), the system automatically assigns priority from left to right in descending
order.
Text
You can use the "Text” chart element to insert any static text (free text) you require in a
chart.
The text box can contain one-line or multiple-line character strings. For example, this allows
you to insert descriptive texts into the SFC during the analysis phase that can later be
replaced by automation functions.
Free texts are not embedded in the topological sequencer structure. If you change the
topology, the text boxes are not repositioned; they maintain their position.
Sequence
A sequence is a series of steps and transitions that can be created with a selectable length
and inserted in the sequential control system.
Sequencer
A closed sequence forms one sequencer in a sequential control system, for example
between the divergence and convergence of a simultaneous or alternative branch. The
entire sequencer is also designated as a sequencer in SFC. It runs from the start step to the
final step.
Simultaneous sequence
If the execution is to be split into two or more sequencers that are to be executed at the
same time, the simultaneous branch is used.
A simultaneous branch consists of at least two sequencers that are processed at the same
time.
A simultaneous branch is always preceded by a transition or an alternative branch. The
simultaneous branches end in a simultaneous convergence that is always followed by a
transition or alternative branch.
The successor transition executes only when all actions of the steps at the end of every
associated sequencer have been executed (apart from the "termination" action) and the step
enabling condition is fulfilled (synchronization).
Key:
(1) Sequencer
(2) Successor transition
Alternative sequence
If the execution is to be split up into two or more sequencers but only one of these
sequencers is to be executed, an alternative branch is used.
An alternative branch consists of at least two sequencers, of which only one will be
processed depending on the state of the first transitions in the individual sequencers. The
sequencer whose transition is fulfilled first is selected. If more than one transition is fulfilled
simultaneously, the sequencer furthest left with a fulfilled transition is executed.
The alternative branch can only be preceded and followed by a step or a simultaneous
branch.
Key:
(1) Sequencer
(2) Next step
Loop
If a section of the sequencer is to be executed again contingent on a transition, a loop is
used.
A loop consists of a sequence and a return path with a transition that encloses a sequence.
The start of the loop must be immediately following a step and the return path must converge
again immediately before a step.
Key:
(1) Sequence
(2) Return path
(3) Successor transition
The transition of the return path is processed chronologically after the successor transition.
If the successor transition and the return path transition are fulfilled at the same time, the
step or simultaneous branch located after the successor transition is processed.
Note
Return paths out of or into simultaneous or alternative branches are not possible.
Jump
A jump can be used, contingent on a transition condition, to continue the execution of the
sequencer at any step within the same sequencer.
A jump always leads immediately out of the sequence following a step (origin of the jump).
Several jumps are also possible.
6
6 6 6
7
Key:
(1) Jump origin
(2) Jump
(3) Jump destination
(4) Successor transition
A jump consists of an initiating transition and an arrow with the jump destination information.
The jump destination specification is the name of the step at which the execution is
continued when the transition is fulfilled. If the jump destination is still unknown, the name is
"???".
The transition of the jump is processed chronologically after the successor transition.
If the successor transition and one or more jump transitions are fulfilled at the same time, the
step (or simultaneous branch) located after the successor transition is executed.
The origin and destination of a jump must always be a step.
Note
Be aware of the possible consequences during execution in the AS when working with jumps
to or from a sequencer of a simultaneous branch.
For additional information on this subject, refer to the section
How to create and edit a jump (Page 130).
SFC Editor
You create your sequential control system using graphic tools in the SFC Editor by
specifying actions and step enabling conditions. The elements of the SFC are positioned in
the sequencer according to fixed rules. You do not need to be aware of details such as
algorithms or the assignment of machine resources; you can concentrate solely on the
technological aspects of your configuration.
After creating the sequencers as a series of steps and transitions, you proceed to configure
the object properties of SFC, sequencers, steps and transitions. You configure the operating
parameters of the SFC, the start conditions of the sequencers as well as the actions of the
steps and the step enabling conditions of the transitions.
After configuration, you compile the executable machine code with SFC, download it to the
CPU, and test it with the SFC test functions.
Introduction
You can call the CFC editor directly or via the SIMATIC Manager.
Introduction
There are several ways in which you can navigate in an SFC.
● Use the icon in the toolbar to zoom in and the icon to zoom out.
● With the View > Center menu command or by clicking the icon
● by dragging the SFC elements over the window border (automatic scrolling of the window
section)
● With the keyboard (Page 70)
SFC Editor
The SFC Editor is a Windows application consisting of the following elements:
● Frame window with title bar
● Menu bar
● Toolbar
● Status bar
● At least one working window
You execute functions and operator inputs using menu commands (menu bar, shortcut
menu) and in dialog boxes as needed.
It is generally advisable and more efficient to manipulate functions and objects using the
mouse. Most operations can be also performed using the keyboard.
Windows
Within the SFC Editor, you can open as many windows as you wish (within the limits of
Windows). Each window contains the view of an SFC (chart or type). You can also open
several windows for the same SFC. The window in the foreground is always the active
working window. This means that the menus and buttons in the toolbar always apply to this
window.
A scroll bar is located at the lower border of the window, which you can use to move the
content in the visible area of the window.
This bar also contains the tabs with which you can switch between the sequencers of the
chart.
Title bar
The title bar of the SFC window contains the name "SFC" and the buttons that you normally
find in Windows applications. If you display the SFC maximized to the full screen display, the
name also appears in the title bar of the SFC window, since the title bar of the working
window is no longer displayed. The title bar of the online window can be distinguished from
the title bar of the offline window by the different colored background and/or the text (can be
specified in the SIMATIC Manager using the menu command Options > Customize > "View"
tab).
Menu
A menu is a group of functions that can be selected and activated in the menu bar. Menu
commands that are not applicable in a particular situation are displayed in gray and cannot
be selected.
Opening a menu
You open menus by clicking the menu title or, using the keyboard, by typing the underlined
character in the menu title while holding down the ALT key.
If you hold down the left mouse button, you can move through the menu bar and open and
close the menus one after the other (browsing).
Shortcut menu
By right-clicking in the current context, you can display a shortcut menu containing frequently
needed commands from the menu bar. You obtain a different shortcut menu with the
following objects:
● Free area
● SFC element
● "Properties" dialog box in the editing window
● "Properties" dialog box for the selected line outside the editing window
Key:
(1) Activate selection
(2) Insert step + transition
(3) Insert simultaneous sequence
(4) Insert alternative sequence
(5) Insert loop
(6) Insert jump
(7) Insert text
Status bar
The status bar is located at the bottom edge of the SFC window and displays important
information.
The left part of the status bar displays contextual information, for example explanations of
menu commands, operator prompts or error messages.
The right part of the status bar displays current information such as the current location of an
element. In test mode (online), the operating state of the CPU is displayed and also
visualized by a color (red = STOP, green = RUN)
Optional layout
While the menu bar is always visible, you can toggle the display of the toolbar, element bar
and status bar on or off, for example to make more room on your screen. You can specify
what is displayed by selecting the appropriate command in the "View" menu.
Operator control
When you activate some functions, a dialog box opens. Here, you can make settings and
selections for the function you have activated. In the dialog boxes of modal dialogs, you
cannot make selections or entries outside the box. You must first close the dialog box by
clicking "OK" or "Cancel". The dialog boxes for "Properties" and "Browse", on the other hand,
remain on the user interface while you continue to edit the sequencer topology or select
other menu functions (except for activating test mode: here, the dialog boxes are closed).
Layout
Some dialog boxes contain tabs. This means that several pages (tabs) are cascaded on the
screen. You can navigate from tab to tab as necessary.
To make configuration more convenient, some dialog boxes not only offer standard buttons
(such as OK, Cancel, Help), they also have buttons with useful functions.
In the "Object Properties" dialog box, you can use the buttons within the
sequencer to access the next element of the selected element type (step or transition)
without having to open and close the box again each time. The jumps to the base elements
are in the logical order and not the geometrical order.
With , in a simultaneous or alternative branch you jump from left to right to the first
element of the next sequencer.
With , you jump from right to left to the last element of the sequencer further left.
With you move from top to bottom in a sequencer. When a simultaneous or alternative
branch is reached, only the left sequencer is executed.
With you move from top to bottom in a sequencer. When a simultaneous or alternative
branch is reached, only the right sequencer is executed.
Autoscrolling
When moving elements in a chart, you can scroll the displayed window if the insertion
position of the element is not currently visible. Holding down the left mouse button, drag the
object to the edge of the window so that the positioning crosshair is on the inner (horizontal
or vertical) line of the window frame. The window is then scrolled until the limit of the chart is
reached or until you pull the positioning crosshair away from the edge of the window.
Examples
5.7.4 Navigating in the menu bar and menus with the keyboard
Opening Help
Defaults
(Change these defaults with the menu command Options > Customize > Colors...).
Selection Blue
Step/transition [transition] parameters assigned [object] Gray
Step/transition parameters assigned [name] Black
Step/transition no parameters [object] White
Step/transition no parameters [name] Black
Step/transition [comment] Black
Step/transition selected [name] White
Step ACTIVE [object] Green
Step ACTIVE [name] Black
Step EXECUTED [object] Dark green
Step EXECUTED [name] White
Step HELD [object] Yellow
Step HELD [name] Black
Step ERROR [Object] Red
Step ERROR [name] Yellow
Transition FALSE [object] Red-brown
Transition FALSE [name] White
Transition TRUE [object] Dark green
Transition TRUE [name] White
Operator Prompt Gray
Error confirmation Red
Defaults that cannot be changed:
Textual interconnection [object] Yellow
Textual interconnection [name] Black
Step INACTIVE [object] *)
Step INACTIVE [name] *)
Transition INACTIVE [object] **)
Transition INACTIVE [name] **)
Windows default:
(Modify with the right mouse button on Desktop: Properties > Display > Extended > Element:
Selected elements)
Background of the tab ID for tabs with content Blue
*) Color is identical to the color for the unselected step and cannot be changed
**) Color is identical to the color for the unselected transition and cannot be changed
Optional procedures
Use the SIMATIC Manager to create a project. The following options are available in the
SIMATIC Manager SIMATIC Manager for creating a project:
● PCS 7 Wizard
With the PCS 7 Wizard, you create a single project or multiproject in the Plant view and in
the Component view. In addition to the actual project, a multiproject also includes a
master data library.
● STEP 7 Wizard
With this wizard you create a STEP 7 project with the following elements:
– The SIMATIC station
– The CPU
– The S7 program
– The block folder
● Menu commands
With the menu commands you create a new project and insert all the required
components.
We recommend the procedure using the PCS 7 Wizard (point 1) because it is both faster
and is less liable to errors.
You can select the PCS 7 Wizard or the STEP 7 Wizard in the SIMATIC Manager in the
"Wizards" tab with the menu command Options > Settings.....
Overview
You can create new charts and types, open them for editing, and modify their properties in
SIMATIC Manager and in the SFC Editor. You can copy and delete charts and types only in
the SIMATIC Manager. You copy and delete instances in the relevant CFC chart.
The SFC chart can be displayed in CFC in its external view, allowing the SFC to be
controlled by CFC interconnections. The external view displays the SFC like a block; in other
words, with the standard interface.
Introduction
You create a new SFC chart in the following ways:
● in the Component view, Plant view or Process Object view of the SIMATIC Manager
● in the SFC Editor
Introduction
You create a new SFC type in the following ways:
● In the Component view of the SIMATIC Manager
● In the SFC Editor
Result
The type is given a default name by the system, for example SFC_Type(1), which you can
change. The next free FB number is automatically reserved for the SFC type and the type
template (FB 247) is copied to the block folder with this number. This allows you to configure
messages and instances for the type once it is created without having to compile the type.
The FB number can be modified later in the object properties dialog box.
When you first create an SFC type, the blocks required for compilation and for execution in
the AS are copied to the current program and then managed in the ES. The blocks are
included in the supplied block library.
Note
SFC types cannot be assigned to a hierarchy folder in the plant view since they themselves
are not relevant to execution (from the perspective of the process to be automated).
Introduction
The SFC types available in the chart folder are displayed in the CFC block catalog. They are
either in the "All blocks" directory and in the directory of the family, if they are assigned to a
family, otherwise, they are in the "Other blocks" directory.
You can also insert SFC types in the CFC chart from the libraries (for example, SFC library
or master data library).
Procedure
In CFC, drag the SFC type into the CFC chart from the block catalog or from a library.
Result
The SFC instance is represented like a CFC instance block. If there is not enough space to
position the SFC instance, it is displayed as an "overlapping block" (light gray and without
visible inputs/outputs). After moving them to a free position in the chart, the overlapping
blocks are displayed as normal blocks again.
You can rename, assign parameters for, and interconnect the SFC instance in the CFC
chart.
Introduction
In SFC, there is initially the "SFC chart" object type along with the "SFC type" object type.
The SFC chart allows the definition of sequential control systems using a predefined
interface and process signals to the plant being automated. The SFC chart must first be
compiled and it is then downloaded to the automation system where it is executed.
Basics of configuration
The SFC chart has an interface that is created when the SFC chart is generated and
includes the standard interface derived from the SFC chart template (block @SFC_RTS).
This is required to provide SFC system functionality (operating modes, operating states, step
control modes, etc.) at the interface of the SFC chart.
You cannot move or delete the elements of the standard interface. Neither can you add new
elements to the standard interface. You can edit the initial value, comments, and attributes.
During configuration, you can use the interface I/Os and any required process signals to
formulate step assignments or the transition and start conditions. Here, textual
interconnections are also possible.
The SFC chart is therefore not self-contained and can only be used once. If you wish to
reuse the SFC chart, copy the SFC chart and adapt it fully to the "new environment" because
the process signals used must usually be replaced by others.
For more detailed information on creating an SFC chart, refer to the section Creating an SFC
chart (Page 23).
You can set or change the following in the "Properties" dialog box:
● The "General" properties (name, author, comment, OS comment).
● The "AS operating parameters" (default settings: Step control mode, Operating mode,
Command Output, Cyclic operation, Time monitoring and the start options: Autostart, Use
default operating parameters when SFC starts)
● The option whether or not the SFC chart is available on the OS for operator control and
monitoring
Runtime properties
An SFC chart is inserted in the run sequence in order to determine when the SFC chart is to
be processed in the automation system.
For further information on this subject, refer to the Runtime properties (Page 165) section.
Messages
You have the option of configuring seven messages requiring acknowledgment for an SFC
chart in the SFC Editor (menu command SFC > Message...). The SFC chart itself requires
the remaining available messages (one message requiring acknowledgment and one that
does not).
For more information on this subject, refer to the Configuring messages in SFC (Page 103)
section.
Footer
You can configure an optional footer for an SFC chart.
For further information on this subject, refer to the Defining footers (Page 304) section.
Testing
In the SFC test mode, the execution of the SFC is made dynamic and can be influenced with
the test functions.
For further information on this subject, refer to the section Operator control and monitoring
during testing (Page 283).
Description
You can change the topology (step/transition sequences, jump destinations) or the
configured steps/transitions in the SFC chart. The changes do not take effect until the chart
has been compiled and downloaded.
Following a topology change, you can download inactive sequencers at any time. You need
to disable the SFC chart to download active sequencers.
You can download changes in the step and transition configuration at any time even if the
SFC chart is currently being processed in the automation system.
The basic rule is that changes in the SFC chart that prevent or restrict a download of
changes in RUN mode can be made only after the user has confirmed a prompt.
Further procedure
After completing the changes, you must compile and download the OS to ensure that the
current data are available on the OS.
Introduction
The SFC contains the SFC type" object type, in addition to the "SFC chart" object type. The
SFC type allows the definition of sequential control systems including an interface. The
sequential logic of the SFC type is based only on the interface I/Os of the SFC type. This is
why the SFC type cannot access all process signals, in contrast to the SFC chart.
Configuring messages
You can configure seven messages that must be acknowledged and five that do not require
acknowledgment for an SFC type. The SFC type itself requires the remaining available
messages (one message for each message type and 10 status messages for SIMATIC
BATCH).
For more information on this subject, refer to the Configuring messages in SFC (Page 103)
section.
Configuring footers
You can configure one footer for an SFC type.
For further information on this subject, refer to the Defining Footers (Page 304) section.
Compiling/downloading
The SFC type is compiled in the "Compile program" context and downloaded to the CPU in
the "Download to CPU" context.
You will find more information on this subject in the following sections:
Overview of compiling charts, types, and instances (Page 227)
How to download programs (Page 235)
Tips
The following tips may help you:
● In the "SFC Library", you can find the "TypeStates" SFC type with the menu command
SFC Library > Blocks+Templates > Templates. This already contains several sequencers
for state-oriented processing of the sequential control system. You will also find the
"TypeCtrlStrategy" SFC type containing control strategy-oriented processing of the
sequential control system. You can copy these templates and change them to suit your
purposes.
● When creating an SFC type for SIMATIC BATCH, remember the following points:
– In Properties >Operating Parameters AS for the SFC type, you need to select the
"AUTO" mode, otherwise the control commands from SIMATIC BATCH will have no
effect (this also applies to the SFC instances).
– In Properties > Options, you have to set one of the categories, "EOP" or "EPH",
otherwise the SFC type remains "invisible" to SIMATIC BATCH.
– If you wish to use the "Continuous mode" of the SFC, you have to set inputs/outputs
ENASTART=1 and SELFCOMP=0. You must take into account the READY_TC
input/output when configuring the start condition for sequencers (this also applies to
SFC instances).
For additional information, refer to the section Start requirements of an SFC
(chart/instance) (Page 270).
Note
If you perform the download with the SIMATIC Manager function "Compile and Download
Objects" and the SFCs need to be disabled for this, the SFCs will not be disabled. In this
case, the download will not be performed and an error message is entered in the log.
While changes are being downloaded, the SFC instances cannot be processed in the
automation system and the SFC instances cannot be accessed via the interconnections in
the CFC.
You do not have to disable the SFC instances to rename I/Os and characteristics or to
change units and limits.
Changes in the topology (step/transition sequence, jump destination) and the step or
transition configurations are made in the SFC type and do not become effective in the SFC
instances until they are compiled and downloaded. You can download inactive sequencers
following changes to the topology at any time. If you want to download active sequencers
following changes to the topology, you must first disable the SFC instances before
downloading. You can download changes to the step and transition configuration at any time
even if SFC instances of the SFC type are currently being processed in the automation
system.
After changing the configuration, you need to compile the OS to ensure that the current data
are available on the OS.
Introduction
An SFC instance is derived from an SFC type. The SFC type is first inserted into a CFC
chart similar to a function block type in the CFC. The SFC instances are therefore always
assigned to one CFC chart and are addressed using the chart. SFC instances are displayed
as blocks, same as CFC instances; in other words, their interface is visible in the CFC chart.
SFC instances are not displayed in the SIMATIC Manager since they can only be addressed
via the CFC chart. With the assignment of the CFC chart to the plant hierarchy, the SFC
instances contained are also indirectly assigned to the plant hierarchy.
Runtime properties
The runtime properties of an SFC instance are identical to the runtime properties of CFC
block instances.
Messages
You can configure the messages of an SFC instance in SFC (menu command SFC >
Message...) and in CFC using the "Object Properties" dialog box.
Configuration
The configuration options for SFC instances in the SFC are limited compared to SFC types.
The interface and the sequencers cannot be changed in the SFC instance since they are
specified identically for all instances based on the SFC type. However, you can change the
parameters (initial value and comments) of the interface I/Os for each specific instance.
You can make the following settings in the "Properties" dialog box:
● "General" properties (name, comment).
● "AS operating parameters" (these are the default settings: Step control mode, Operating
mode, Command output, Cyclic operation, Time monitoring and the start options:
Autostart, Use default operating parameters when SFC starts).
● The "options" for SIMATIC BATCH (category, allow operator instructions) cannot be
modified here; the configured control strategies can be enabled or disabled here for the
instance.
You can open the "Properties" dialog box as follows:
1. Select the SFC instance in the CFC.
2. Open the shortcut menu and select the menu command Open
The SFC instance opens in the SFC.
3. Select the menu command SFC > Properties...
The "Properties SFC Instance" dialog box opens.
Compiling/downloading
SFC instances are compiled in the "Compile program" context and downloaded to the CPU
in the "Download to CPU" context.
You will find more information on this subject in the following sections:
Overview of the blocks generated during compilation (Page 231)
Overview of compiling charts, types, and instances (Page 227)
How to download programs (Page 235)
Tips:
● You can use the "SFC Visualization" add-on package on the OS for operator control and
monitoring of the SFC instances (and SFC charts). You also use "SFC Visualization" to
perform the necessary configuration steps for SFC operator control and monitoring.
You can find additional information on SFC Visualization in the SFC Visualization for S7
manual or the "Options" folder of the WinCC online help.
Description
Due to the limited configuration options for SFC instances, any changes you make directly in
the SFC instances can be downloaded at any time, even if the SFC instances are currently
being processed in the automation system.
Further procedure
After completing the changes, you must compile and download the OS to ensure that the
current data are available on the OS.
7.6 Opening
Introduction
You can open an SFC chart or an SFC type in both the SIMATIC Manager and SFC Editor.
Note
The "SFC" menu displays the last four objects edited (SFC charts and/or SFC types) as
menu commands. If you select one of these menu commands, the corresponding object
opens.
Note
If the project is assigned a plant hierarchy, you can also open SFC charts in the Plant view
or Process Object view in the SIMATIC Manager. In this case, you open the hierarchy folder
that contains the chart instead of the chart folder.
SFC types are not included in the plant hierarchy since they are not relevant to execution
from a technological perspective.
Introduction
You can only open SFC instances in the CFC chart.
Procedure
1. Select the SFC instance in the respective CFC chart.
2. Select the Edit > Open menu command.
The SFC Editor starts (if it is not already started) and the SFC instance is displayed in a
window of the SFC Editor. The displayed topology is determined by the associated SFC
type.
7.7 Copying
Introduction
You can copy or move SFC instances within a CFC chart, between CFC charts or indirectly
by copying/moving the CFC chart in the SIMATIC Manager. The runtime objects associated
with the SFC instance are also copied or moved.
7.8 Deleting
Procedure
1. Select the SFC chart or SFC type in the Component view of the SIMATIC Manager.
2. Press the <Del> key.
Procedure
1. Select the SFC instance in the CFC chart.
2. Press the <Del> key.
Introduction
You can view and change the properties of the current SFC chart (SFC Editor) or any SFC
chart in the chart folder (in the SIMATIC Manager). The chart properties are displayed in a
dialog box with several tabs.
Tabs
You can modify the chart properties in the following tabs.
● General information
Use this tab to enter or modify the chart name, the author and the comment and to
enable or disable the write protection. When write protection is enabled, the chart cannot
be unintentionally changed with the SFC Editor or interface editor.
● Operating parameters AS
You can set the following options in this tab.
– Defaults for the initial state of the chart: "Step control mode", "Operating mode",
"Command output", "Cyclic operation" and "Time monitoring".
– SFC startup following an CPU restart
The options are "Initialize SFC" or "Retain SFC state." This allows you to determine if
the SFC should start with the data it had before the CPU stop or if it should be
initialized again following a restart of the CPU.
– Start options of the chart: "Autostart" and "Use default operating parameters when
SFC starts".
● OS
If the "Transfer chart to OS for visualization" check box is selected, the SFC chart is
transferred to the OS automatically with the next OS compilation.
● Version
The major and minor versions can be set separately with the cursor keys. Version change
is disabled for write-protected charts. You can set versions from 0.0001 to 255.4095. A
new chart always starts with version number 0.0001. No number less than the previously
saved version can be set.
Use "Data version" to obtain information on the software version used to create the chart.
When versioning is enabled in the properties of the project, the dialog box is opened
automatically with the "Version" tab after a chart has been changed and the chart has
been closed.
Data version:
This tab displays the software version used to create or most recently modify the
program. The data version does not depend on the product version. The data version is
determined by the database and shows the current version of your data structure.
Tabs
You can modify the type properties in the following tabs.
● General information
Use this tab to enter or modify the type name, the author, the family, the FB number, the
comment and to enable or disable the write protection. When write protection is enabled,
the chart cannot be unintentionally changed with the SFC Editor or the characteristics
and interface editors.
● Operating parameters AS
You can perform the following actions in this tab:
– Set the defaults for the initial state of the SFC instances that are generated from this
type. "Step control mode", "Operating mode", "Command output", "Cyclic operation"
and "Time monitoring".
– Enable or disable the start options for the SFC instances: "Autostart" and "Use default
operating parameters when SFC starts".
– SFC startup after CPU restart
This includes the "Initialize SFC" and "Retain SFC state" options. This allows you to
determine if the SFC should start with the data it had before the CPU stop or if it
should be initialized again following a restart of the CPU.
● Options
You can perform the following actions in this tab:
– Classification of the SFC type for SIMATIC BATCH in the "Category" box:
"None": There is no classification (type is ignored by SIMATIC BATCH).
"EOP": The SFC type is classified as "Operation type".
"EPH": The SFC type is classified as "Phase type".
– Allow operator instructions to enable input of values in the operator dialog on the OS.
– Control Strategy Selection
This box contains all control strategies configured for the SFC type (maximum of 32).
Select the respective check box to enable control strategies of the SFC type as default
for the SFC instances. This applies to all SFC instances that are already in the project
- as long as the default value has not been changed in the instance - and for all the
SFC instances yet to be generated. The control strategy selection can be modified for
the individual instances.
– SIMATIC IT
Use the "MES-relevant" check box to decide whether or not the information of the SFC
instances is transferred to the enterprise levels MIS/MES when requested.
● Version
The major and minor versions can be set separately with the cursor keys. Version change
is disabled for write-protected SFC types. You can set versions from 0.0001 to 255.4095.
A new SFC type always starts with version number 0.0001. No number less than the
previously saved version can be set.
Use "Data version" to obtain information on the software version used to create the chart.
When versioning is enabled in the properties of the project, the dialog box is opened
automatically with the "Version" tab after a type has been changed and the window has
been closed.
Data version:
This tab displays the software version used to create or most recently modify the
program. The data version does not depend on the product version. The data version is
determined by the database and shows the current version of your data structure.
Updating in multi-project
SFC types can be updated in a multi-project. The procedure is the same as when updating
block types of CFC.
You can find additional information about this in the CFC documentation under
How to update block types/SFC types.
Tabs
You can modify the SFC instance properties in the following tabs.
● General information
This tab is used to enter or modify the instance name and the comment. All other
properties (see SFC type) can be read but not modified. The "Write-protected" check box
indicates if the CFC chart is write-protected. In this case, you have read-only rights for the
SFC instance.
● Operating parameters AS
In this tab, you can change the operating parameters for the SFC instance
(see SFC type).
● Options
In this tab, you can view and change the options set for the SFC type:
– SIMATIC BATCH "Category"
"None": There is no classification.
"EOP": The SFC type is classified as "Operation type".
"EPH": The SFC type is classified as "phase type".
– SIMATIC BATCH "Allow operator instructions"
Values can be input in the operator dialog box on the OS when this option is set.
– Control strategy (cannot be changed if write protection is enabled)
This box contains all control strategies configured for the SFC type (maximum of 32).
The control strategies adopted from the SFC type are selected. You can change the
selection for each SFC instance. You can select a new control strategy or deselect an
existing assignment.
Note: If you change the control strategy selection for an SFC instance, all subsequent
changes to the control strategy selection for the SFC type are no longer applied
automatically for this SFC instance.
– SIMATIC IT
The "MES-relevant" check box determines whether or not the information of this SFC
instance is transferred to the MIS/MES enterprise levels when requested.
● Version
In the "Version" box, you always see the version of the associated SFC type. The version
cannot be changed in the SFC instance.
Data version:
This tab displays the software version used to create or most recently modify the
program. The data version does not depend on the product version. The data version is
determined by the database and shows the current version of your data structure.
Configuration limits
You can configure the following number of messages for one SFC chart:
● Seven messages requiring acknowledgment
You can configure the following number of messages for one SFC type or one SFC instance:
● Seven messages requiring acknowledgment
● Five message that do not require acknowledgment
The SFC type itself requires the remaining available messages (one message for each
message type and 10 status messages for SIMATIC BATCH).
The reserved message events have default texts:
● "Step runtime exceeded"
● "Operator prompt"
● 10 status messages for SIMATIC BATCH (only with SFC type/instance)
– "Run"
– "Completed"
– "Held"
– "Aborted"
– "Ready to complete"
– "Stopped"
– "Error"
– "MANUAL"
– "Not released for SIMATIC BATCH"
– "Runtime exceeded"
Operator prompt
The operator prompt is a message that does not require acknowledgment and that is
signaled in an SFC chart with the NOTIFY message block and in an SFC type with
NOTIFY_8P message block.
You can find a table of the I/Os used for the messages in the interface under Messages
(Page 220).
Note
When configuring messages, remember that the messages of ALARM_8P can only be
assigned message classes requiring acknowledgment.
Note
You define individual inputs/outputs in the interface editor. These are available in addition to
the inputs/outputs defined in the characteristics editor. These inputs/outputs are unknown to
the characteristics editor and cannot be handled there.
Setpoints, for example, are created and assigned values during the definition of
characteristics. From this definition, the characteristics editor generates the required
inputs/outputs, which are displayed in the interface editor after it is opened and can be used
to configure the sequential logic. You cannot change the I/Os generated by the
characteristics editor in the interface editor (except system attributes, initial value, comment).
You can group inputs/outputs only in the characteristics editor. These groups are taken into
account during compilation in the applicable plausibility checks and status and message
processing. The values (such as setpoints) required for visualization/operator control on an
OS station that are displayed with the SFC type faceplate are configured in the
characteristics editor.
You can find additional information on the characteristics editor in the Characteristics of the
SFC type (Page 106) section
Characteristics
A characteristic is the technology-oriented functionality of an SFC type that is described by a
set of attributes (for example, I/O name, data type, initial value or high limit).
The following characteristics are available for creating the type:
Characteristic Meaning
Control strategies Control strategies are used for structuring of an SFC type as required for
process control. You define control strategies in the characteristics editor in
order to use them in configuring sequencers (for heating or cooling, for
example). The control strategy can be set by the operator or by a higher-level
controller (for example, SIMATIC BATCH). Control strategies are optional.
For further information, refer to the section
Note on Subsequent Modifications to Control Strategies (Page 108)
Setpoints Setpoints control the SFC type or are used by it to control underlying
automation functions. Setpoints can be set by the operator or by a higher-level
controller (SIMATIC BATCH, for example). A setpoint is assigned to the
control strategies that exist when it is created. You can change the
assignment individually for each control strategy.
Process values Process values control the SFC type based on process signals (for example,
the value for the fill level).
Control values Control values are used by the SFC type to control external logic.
Parameters Parameters modify the behavior of the SFC type. For example, you can use
parameters to select alternative branches or to configure start conditions.
Bit memory Bit memory is the local data memory of the SFC instances belonging to the
SFC type. You can temporarily store data here and reuse it later. The data are
retained until they are overwritten or deleted.
Timers Timer objects are used to configure time-driven sequences in an SFC type.
Timer objects can be used locally for a step or applied overall to multiple steps
and sequencers. Timed routines are started in steps, stopped, and the
elapsed time queried in transitions or start conditions. You can vary timed
sequences with a variety of modes (for example, pulse, extended pulse, on
delay, retentive on delay, off delay).
Note texts Note texts are used to display information relating to execution that may
require action on the part of the operator. A note text is displayed on the OS in
the SFC faceplate and can be acknowledged there.
For more information on this subject, refer to the section
Using note and position texts (Page 109).
Characteristic Meaning
Block contacts Block contacts represent blocks of the basic automation. When a block
contact is created, inputs/outputs of the block to be represented are created in
the interface of the SFC type. When configuring the SFC type, you can use
these inputs/outputs to represent the block that will later be interconnected
with an SFC instance.
For more information on this subject, refer to the sections
Inputs/Outputs for Characteristics (Page 110)
Block Contacts (Page 111).
Position texts Position texts are used to display the current progress in execution or the
status of execution of the SFC. A position text is displayed on the OS in the
SFC faceplate.
For more information, refer to the section
Using Note and Position Texts (Page 109).
Additional information
You will find additional information in the following sections:
Inputs/outputs for characteristics (Page 110)
Attributes for characteristics (Page 112)
Notes
Control strategies that have already been used, for instance in:
● Start conditions
● Transitions
● Assignment to setpoints
● Control strategy release
Should not be deleted or moved in the characteristics editor, otherwise the control strategies
will be renumbered. This also applied for control strategies that you copy from an SFC type
into a different SFC type.
The numbers of the control strategies in the existing utilization are not adapted. For this
reason, accesses and other mechanisms that reference these numbers no longer function as
originally intended.
Example
You no longer want to use the control strategy with number "2" and delete it.
The control strategies are renumbered. The previous control strategy "3" is given the number
"2", control strategy "4" is given the number "3", etc.
If you no longer want to use a control strategy, do not delete the control strategy; rather,
rename it as "not used", for example. The numbering and functionality of the other control
strategies is then retained.
Notes
Note the following:
● The display of note and position texts does not cause a message to be generated and is
not documented in the message system. The acknowledgment of a note text, on the
other hand, is documented as an operating message.
● When copying instruction texts and position texts from an SFC type and inserting in a
different SFC type the numbers are reassigned. If usages already exist in steps,
transitions and sequences and chains then you must check these numbers and correct
them if necessary.
Additional information
For further information, refer to the following sections:
"Characteristics" interface parameter assignments (Page 185)
"Characteristics" interface expansions (Page 187)
Standard interface of the SFC type (Page 177)
Block contacts (Page 111)
Attributes for characteristics (Page 112)
Block contacts
If you want to use block contacts to connect the basic automation blocks, specify the
inputs/outputs relevant for the connection to an SFC type in the block types.
To do this, the "S7_contact=true" system attribute must be set for the block I/O in the
creation language of the block type. The technological blocks from the PCS 7 Library are
prepared accordingly. You can adapt the inputs/outputs in the supplied block types to your
project conditions.
Connections between SFC types via block contacts are not supported.
Note
If you subsequently add or change system attribute "S7_contact" for the I/O of a block type
that is used as a block contact in the SFC type, this has no effect on the block inputs/outputs
of the SFC type.
If you want these changes to be adopted for the SFC type, note the following:
• Import the changed block type in the CFC with the menu command Options > Block
Types. All block instances of the type are updated during the import.
• Update the block contacts in the SFC with the menu command Options > Block Contacts.
This menu command applies the changes to the interface of the SFC type and to all SFC
instances.
By defining an instance of the "block contact" characteristic in the characteristics editor, the
selected block inputs/outputs are created accordingly in the SFC type. The IN I/Os of the
block type are created as OUT I/Os in the SFC type. The OUT I/Os of the block type are
created as IN I/Os in the SFC type. The IN_OUT I/Os of the block type are created as OUT
I/Os in the SFC type.
This allows you to interconnect a specific CFC instance of the block type to the
corresponding inputs/outputs of an SFC instance. An instance of the "block contact"
characteristic is therefore always assigned to exactly one block type. You must enter the
relevant block type in the "Block" column in the right window pane. The block type must be
present in the ES data management.
This procedure enables you to configure, commission, and visualize basic automation blocks
independently. As a result, you can configure SFC types based on block contacts and
interconnect them later to the basic automation blocks.
Characteristics Control Set Pro- Control Para- Bit Timers Note Block Posit-
→ strategy points cess values meters memory texts contacts ion
values texts
Attributes
↓
Name x x x x x x x x x x
Display x x x x
name
Number x x x
Standard x
Data type x x x x x
Input/output x x x x x x x
name
Comment x x x x x x x x x x
<Setpoint> x
Initial value x x x x x x
Text length x x x x x
Precision x x x x x
Unit x x x x
Low limit x
High limit x
Text0 x
Text1 x
Enumeration x
Archive x
Test x
Setpoint ID x
Proc val ID x
Material x
Tracking ID x
Blocks x
Faceplate x
Transfer ID x
Transfer x
counter
Attribute Meaning
Name The name is a designator for the characteristic that must be unique among all characteristics of a
type. It can contain a maximum of 24 characters and cannot contain spaces or special characters
(exception: "_"). The name is irrelevant for the interface I/Os.
Display The display name is multilingual and is transferred to WinCC during OS compilation. The display
name names can only be modified on the type.
Number The number uniquely identifies the corresponding characteristic.
With control strategies, the number is managed by the system and assigned consecutively from 1 to
32 according to the position in the characteristics editor. The control strategy <no> is assigned bit
<no-1> in the SELCS I/O of the SFC type. This bit is set if the corresponding control strategy has
been configured. With an SFC type and SFC instance, the bit is deleted when the corresponding
control strategy is not to be used (selection with the menu command SFC > Properties > Options:
Control strategy selection).
The next available number is used for note and position texts. However, you can replace the number
with any other number of your choice as long as it is unique and in the range of 1 to 32767.
Standard "Standard" indicates the control strategy that will be used when starting the SFC instance with
prepared values.
Data type Permitted data types for characteristics are BOOL, INT, DINT, REAL, and STRING. For setpoints,
the data types PI and PO are also available and basically represent a REAL setpoint with the
addition of the "Material" and "Tracking ID" attributes. Enumerations can be assigned to the data
types DEST, SOURCE, VIA and TKEY.
Depending on the characteristic and its data type, other boxes can either be edited or are locked.
I/O The I/O name is required to generate the interface I/Os belonging to the characteristic. The I/O name
name is derived from the characters of the name. You can change the I/O name. The following limits apply:
Setpoints and counters: max. 16 characters
Block contacts: max. 10 characters
All other characteristics max. 24 characters
When the interface I/Os are created, several I/Os are generated depending on the characteristic. A
suffix is appended to the I/O name so that the I/Os are named uniquely.
The maximum lengths of the I/O names result from the different ways of generating interface I/Os.
With setpoints and timers, the system limits the suffix to a maximum of 8 characters. With block
contacts, the length of the suffix depends on the block being used. No suffix is appended to the other
characteristics so that the I/O name can contain a maximum of 24 characters.
Comment You can use comments to describe the characteristic in greater detail. The comment can contain a
maximum of 80 characters and include any special characters.
<Setpoint> Setpoint selection for the "Control strategy" characteristic. Name of each created setpoint is
displayed as a column. This allows you to assign the required setpoint to the control strategy by
selecting the corresponding column.
The assignment of setpoint to control strategy is stored in the "<setpoint-I/O name>_CS" I/O for each
setpoint. The coding is the same as for the SELCS I/O; in other words, control strategy <no> is
assigned bit <no-1>. This bit is set if the setpoint is assigned to the control strategy; in other words, it
is required to run the control strategy.
Initial value The initial value corresponds to the value of the characteristic when no current value is available.
The attribute can be changed in the SFC instance.
Text length With the STRING data type, the text length defines the maximum length of the string (number of
characters: 1 to 254).
Precision With the REAL, PI, and PO data types, the precision defines the number of decimal places to be
displayed (0 to 7).
Attribute Meaning
Unit With the INT, DINT, REAL, PI, and PO data types, a unit can be defined. This is stored as system
attribute "S7_unit" for the interface I/Os. The attribute can be changed in the SFC instance.
The units are included as a basic set in the ES data management and can be added to or modified
in the SIMATIC Manager as "shared declarations".
Low limit With the INT, DINT, REAL, PI, PO, DEST, SOURCE, VIA, and TKEY data types, a low limit can be
defined for the range of values. This is stored in the "<I/O name>_LL" I/O. The attribute can be
changed in the SFC instance.
High limit With the INT, DINT, REAL, PI, PO, DEST, SOURCE, VIA, and TKEY data types, a high limit can be
defined for the range of values. This is stored in the "<I/O name>_HL" I/O. The attribute can be
changed in the SFC instance.
Text0 With the BOOL data type, this is used to specify the value identifier for the value FALSE. This
attribute is stored as system attribute "S7_string_0" for the interface I/Os. The attribute can be
changed in the SFC instance.
Text1 With the BOOL data type, this is used to specify the value identifier for the value TRUE. This
attribute is stored as system attribute "S7_string_1" for the interface I/Os. The attribute can be
changed in the SFC instance.
Enumeration With the BOOL, INT and DINT data types, you can assign an enumeration. This is stored as system
attribute "S7_enum" for the interface I/Os. The enumeration is defined in the SIMATIC Manager in
the "Shared declarations". You can select the name of the enumeration for the attribute from a drop-
down list box. The attribute can be changed in the SFC instance.
The enumeration is then available for operator control and monitoring of SFC instances in SIMATIC
BATCH and in the SFC faceplates.
Note: If "S7_enum" is used, the "S7_string_0" and "S7_string_1" system attributes are ignored.
Archive From the drop-down list box, you can select whether the current value of the "<I/O name>_AO"
output is to be archived in WinCC, is not to be archived, or is to be transferred to the long-term
archive. The attribute can be changed in the SFC instance.
An archive tag is created when the OS is compiled so that the value is transferred to the archive.
Test This selects the characteristic that is to be provided for manual testing (manufacturing instruction) in
the batch report of SIMATIC BATCH.
Setpoint ID You use the ID number to specify if the characteristic value is to be saved for logging. If the ID is
Proc val ID greater than 0, the setpoint or process value is also made available for an external program. You
can make processing in an external application easier if you assign unique ID numbers to the
characteristic values. You can assign ID numbers from 0 to 32767.
Material With the PI and PO data types, you can enter a material identifier.
Tracking ID With the data types PI, PO, you can enter a numeric ID to identify the material.
Blocks This attribute contains the name of the block type represented by the block contact. When the
interface I/Os are generated, the interface I/Os for which system attribute "S7_contact=true" is set
are adopted in the SFC type from the block type. The names of the interface I/Os of the block type
are appended as suffixes to the I/O names of the block contact. Inputs and in/outs of the block type
become outputs of the SFC type. Outputs of the block type become inputs of the SFC type.
Faceplate Here you can select the parameters that will be displayed in the parameter view of the SFC
faceplate.
Transfer ID This ID is the unique ID of an individual transfer in SIMATIC BATCH. It is part of the transfer key
(data type, TKEY) and assigned by an MES application.
Transfer This attribute shows the loop repetition number of the transfer phases in SIMATIC BATCH. It is part
counter of the transfer key (data type TKEY) and is assigned by an MES application.
Additional information
You can find additional information about the I/Os and characteristics in the following
sections:
"Characteristics" interface parameter assignments (Page 185)
"Characteristics" interface expansions (Page 187)
You can find additional information about the system attributes in the STEP 7 online help
under:
System attributes for block interfaces
Requirements
Before you can configure sequential control systems, you must first create the required basic
automation functions with CFC and/or STEP 7 tools. At the same time, the AS blocks to be
used in the SFC charts or SFC types are also inserted. Automation functions that do not yet
exist can be added as needed and then used in the SFC.
Procedure
When configuring a sequential control system (SFC chart or SFC type), proceed as follows:
● Create the sequencer topology with the required number of sequencers and the required
layout of SFC elements.
● Configure the start condition, the preprocessing and the postprocessing in the
"Properties" dialog box for the sequencers.
● Configure the actions and conditions in the "Properties" dialog box for the steps and
transitions.
Color ID
The objects of the sequential control system are displayed in different colors depending on
their current state. The elements of an unselected sequential control system, for example,
are displayed in "white" (parameters not assigned) or "gray" (parameters assigned) and in
"blue" when they are selected.
You can select your own color scheme for specific elements using the menu command
Options > Customize > Colors....
When you open the object properties then the tab IDs of the tab that do not have any entries
have the standard background color of the dialog box. For a tab with content the background
of the tab ID is marked in the color that is set in the Windows properties for the display (right
mouse button on desktop: Properties > Display > Extended > Element: Selected Element).
Textual interconnections
If you delete CFC blocks that access the SFC, these accesses will be configured as textual
interconnections (text of the address is marked in yellow).
You can complete a textual interconnection as soon as the connection partner is available
again in the chart folder. The textual interconnection will then become a real interconnection.
To complete a textual interconnection, select either the menu command Options > Make
Textual Interconnection or select the "Make textual interconnection" check box in the
"Compile" dialog box.
Sequencer display
In its initial state, the new SFC consists of one sequencer; however, this can be extended up
to a maximum of 8 (SFC chart) or 32 (SFC type) sequencers. You create each sequencer in
its own working window. A tab is created for every working window at the bottom of the
screen. The tab shows the name of the sequencer (for example, RUN or SEQ1). You can
switch to the individual sequencers using these tabs.
A newly created sequencer (menu command Insert > Sequencer > ...) is inserted at a
selected position in the SFC in its initial state consisting of an initial step, transition and final
step.
For further information, refer to the section: How to configure multiple sequencers
(Page 120)
If you insert or delete SFC elements in the sequencer, its layout is changed automatically
according to predefined rules. These rules determine the spacing between elements, the
extension of steps and transitions, or the alignment of alternative branches. You can change
these layout rules at any time using the menu command Options > Settings > Layout....
You can center the entire sequencer topology in the window. You can zoom into and zoom
out of the display as required using the zoom functions. The changes are made in
percentage increments that are determined by the zoom factor.
Adding elements
If you want to add additional elements to the SFC, select the icon of the required element to
be created in the element bar.
The cursor changes its appearance from an arrow to the selected icon with a positioning
crosshair. Position the cross at the desired located to insert the sequencer element. The
position of insertion is marked by a green line. Left click on the insertion position. The
inserted elements are highlighted in color.
Syntax rules
The sequencer topology is formed by the sequences of steps and transitions. The
fundamental rule of the sequencer topology is that a step (S) must be followed by a transition
(T) and a transition must always be followed by a step (sequence: S-T-S or T-S-T). The
editor automatically adheres to the rules.
Example:
If you insert a simultaneous branch after a transition and before a step in a sequencer, a
transition is automatically created between the simultaneous branch and the step.
Introduction
An SFC can contain several sequencers that can be used for different applications. By
specifying different start conditions, you can arrange for a specific sequencer to start when a
particular event occurs. You can, for example, configure a separate sequencer for every
operating state (idle, active, or error, for example) or for every control strategy (heating,
cooling, or tempering, for example).
Note
Predefined sequencers are already available for various standard scenarios. These
sequencer templates are available in the "SFC Library".
You can copy these templates and adapt them to suit your purposes.
Examples
Example 1:
Configure a sequencer with a start condition that queries one of the control strategies of the
SFC. The formulation is, for example, "QCS=Heat". If the SFC is set to this control strategy,
the sequencer is executed and is not dependent on the operating state of the SFC.
Example 2:
Configure a sequencer with the start condition "<SFCName>.IDLE=Idle". This sequencer is
executed if the operating state is "Idle".
Example 3:
Any process status can also be queried for the start condition.
To do this, interconnect the process status to the external signal "LOCKERROR" (input of
the SFC). The SFC changes to "Error" state if the problem occurs. Also configure a
sequencer for handling the problem whose start condition is "<SFCName>.ERROR=Error
AND <process status>=1", for example.
Example 4:
As an alternative to example 3, error handling is also possible without a state change. To
achieve this, you configure a sequencer with the start condition "<process status>=1" and
assign it a high priority. This sequencer is always executed when the problem occurs and the
sequencer that is currently being processed has a lower priority than the sequencer for
handling the problem. In this case, do not interconnect the process status to the
"LOCKERROR" input as this would mean a change to "Error" state.
Note
With a chart, the address "<SFCName>.I/O" is specified and with a type only "I/O" is
specified.
Note
Pasting also works within the same SFC window. The copied/cut sequencer is then renamed
and inserted before the current sequencer.
Notes on configuration
Note the following:
● The names of the steps and transitions must be unique within a sequencer; you can use
the same names in different sequencers.
● You can also configure an additional action for each sequencer. Each action consists of
the following:
– Preprocessing: actions to be executed in every cycle after the sequencer has started
before processing the steps and transitions
– Postprocessing: actions to be executed in every cycle after processing the steps and
transitions this, for example, allows you to make pre-settings or to pass on the results
of the sequencer execution.
You configure both parts in the "Sequencer Properties" dialog box. The dialog box
provides the "Preprocessing" and "Postprocessing" tabs for this purpose, whose structure
corresponds to the processing phases of steps.
Introduction
When generating a sequence, a transition-step-sequence (TS) or an step-transition-
sequence (ST) (see figure) is generated depending on the position.
Key:
(1) TS sequence
(2) ST sequence
Procedure
1. Click the step/transition icon in the element bar.
2. Click the vertical line of the sequencer between a step and transition (or between a
transition and step).
3. If you move the cursor to a "permitted" insertion point in the sequencer, you will see a
horizontal green line.
4. If you also want to define the length of the sequence, hold down the left mouse button
and drag the lasso in the vertical direction.
The current length that will be inserted (number of ST/TS pairs) is displayed as a number
at the starting point of the lasso.
Result
The sequence is inserted at the desired position.
Introduction
When you create a simultaneous branch, two sequences are generated, each consisting of
one step. Depending on the point of insertion, a further transition is added automatically
before or after the simultaneous branch to ensure that the syntax is maintained.
Procedure
7 7
6 6 6
7 7
6 6
7
7
If you drag a lasso so that instead of a pure step sequence (here: S5 to S6) a step-
transition sequence is captured (here: S5 to T5), due to syntactic reasons an additional
step (here: S10) is created in the left sequence and a transition (here: T9) is created after
the simultaneous branch. S10) in the left sequence and a transition (here: T9) after the
simultaneous branch.
7 7
6 6 6
7 7
6 6
7 7
6
7
3. If you want to expand a simultaneous branch, switch to the desired insertion mode (for
example, alternative branch) and click using the positioning cursor at the desired position
in the vicinity of the upper or lower branch line.
Introduction
When you create an alternative branch, two sequences are generated, each consisting of a
transition. Depending on the point of insertion, a further step is added automatically before or
after the alternative branch to ensure that the syntax is maintained.
Procedure
Introduction
When you create a loop, a sequence, which can consist of a single step, and a return path
with a transition are generated.
Procedure
Result
The loop is created around the elements contained between the start position and end
position. The syntax is maintained by adding elements as necessary.
Moving a loop
If you want to move a loop, first select the loop with the elements it contains. Keep the
mouse button pressed and place the loop at the desired position on the vertical line of the
sequence.
Note
• Loops leading into or out of alternative or simultaneous branches are not permitted. Due
to the block-oriented sequencer topography, only entire chart elements, including
alternative and simultaneous branches, can exist within a loop.
• The return path of a loop can and must contain only one transition.
Introduction
When you insert a jump, a transition with an arrow and jump destination information is
generated.
"""
Procedure
Note
• When a step used as a jump destination is deleted, all jumps referring to it become
undefined.
• If the name of a step used as a jump destination is subsequently changed, all the
jumps referencing it are automatically adapted.
Jump to destination
1. Select the jump.
2. Select the shortcut menu command "Go to Jump Destination".
Result: The jump destination is displayed as selected.
You can use the function in the edit and test modes.
Deleting a jump
Select the jump-transition and press the "Del" key.
Note
Be aware of the possible consequences during execution in the AS when working with jumps
to or from a sequence of a simultaneous branch.
Jumps to or from a simultaneous branch should be used with special care: the respective
jump always refers to the sequence in the simultaneous branch in which the source or
destination is located. All other sequences will continue to be processed regardless of what
happens.
If you jump from one of the sequences, you should make sure that
• There is a return jump to the same sequence
or
• All other sequences are also exited with a jump.
The user is responsible for using jumps carefully and being aware of the consequences to
prevent unexpected runtime behavior in the AS.
Recommendation: Avoid using jumps into or out of simultaneous branches.
Introduction
You can insert, delete, copy and move a text box to any free position in the chart. You
cannot move text objects across charts using drag-and-drop.
Procedure
Note
When positioning, make sure that the text box does not cover elements of the sequencer
topology. If this happens, the unselected text box will be displayed as a frame with a
transparent surface (without content). The chart elements below it remain visible.
Single selection
You can select in the following ways:
● You can select steps and transitions by simply left-clicking them.
● You select sequences by clicking the vertical line between a step and transition. Provided
that the sequence is not in a simultaneous branch, alternative branch, or a loop, the
entire sequencer is selected.
● You can select sequences by clicking on the upper or lower horizontal line.
● You can select loops by clicking the upper or lower horizontal line of the return path (the
entire loop is selected) or on the vertical link (only the return path with the transition is
selected).
● You can select jumps by clicking the horizontal line of the jump or the vertical line below
the step of the origin of the jump (the origin and the jump are both selected). If you click
the jump destination information, the associated transition is also selected.
● You can select the entire sequencer by clicking the vertical link of a sequence containing
the start or final step.
● If you click an element, any other elements selected at the time are deselected.
● If you right click, the shortcut menu appears with the currently available menu commands.
Multiple selection
If you want to select more than one SFC element, hold down the <Ctrl> key when clicking
with the mouse. The clicked SFC element is selected without deselecting elements you have
already selected. If you have inadvertently selected an element, you can deselect it by
clicking again while holding down the <Ctrl> key.
If you have selected an entire sequence and click a single element while holding down the
<Ctrl> key, the single element is deselected and the entire selection effectively becomes a
selection of single elements.
Overview of copying
You can insert copied elements of a sequencer to a syntactically correct position within the
same sequencer or in another sequencer of the same SFC or a different SFC on the same
CPU or a different CPU. If necessary, new names are assigned automatically to the copied
elements. The copies contain the same actions or conditions as the originals.
If you paste a copied step or a copied transition in an SFC on a different CPU, textual
interconnections may be created if there are accesses to objects that have not been copied
(for example, blocks in the CFC).
When you copy, the syntax is automatically corrected, for example, by adding an empty step
or an empty transition.
Note
Multiple selected text boxes cannot be copied at the same time.
Procedure
1. Select the SFC element whose object properties you want to copy.
2. In the shortcut menu, select the menu command Copy object properties.
3. Select the SFC element that is to adopt the copied object properties.
4. In the shortcut menu, select the menu command Insert object properties.
A message will appear that prompts you to confirm this action.
5. Acknowledge with "Yes".
The selected SFC element will adopt the copied object properties.
Note
The message appears prior to each inserting action. If you tick the box "Do not show this
message in the future", the message will not be shown anymore.
If you open the "Customize" dialog box with the menu command "Options > Customize...
in the SIMATIC Manager , you can reactivate the system messages in the "General" tab.
Overview of moving
You can paste cut elements of a sequencer to a syntactically correct position within the
same sequencer or in another sequencer of the same SFC or a different SFC on the same
CPU or a different CPU. If necessary, new names are assigned automatically to the copied
elements. The moved elements retain their actions or conditions.
When you insert, the syntax is automatically corrected by adding an empty step or an empty
transition as needed.
Note
Multiple selected text boxes cannot be moved at the same time.
"General" tab
You change the name and comment of the sequencer in the "General" tab. The "Number"
box contains the sequencer number generated by SFC. This cannot be changed. In The
"Priority" box, you can assign the sequencer a priority of 1 to 255. Here, 1 represents the
lowest priority and 255 the highest priority. The priority decides which sequencer of an SFC
is started when the start conditions of several sequencers are met simultaneously.
"General" tab
On the "General" tab, you can enter or change the step name, the run time and the
comments for the step and the OS.
The number was assigned by SFC when the step was generated and is unique in this
sequencer. It is read-only and cannot be modified. The number sequence is consecutive
without gaps; in other words, if the step is deleted and a new one is inserted later, the new
step is given the number of the previously deleted step.
You can assign a flag to the step by clicking the "Confirmation" check box. This flag
determines the behavior of the step during execution in the AS in the "T/T and O" modes.
Follow-on transitions after steps with this flag will only become active (enable the next step)
once they have been met and confirmed by the operator (as in "T and O" mode). Without
these flags, the successor transitions enable the next steps once their conditions are
satisfied (as in the "T" mode).
With "Minimum:" You can set the minimum time that a step should remain active regardless
of whether the successor transition is already satisfied.
With "Maximum:" You can specify a time for the time monitoring limiting the maximum time
that the step can be active.
In the "Comment" and "OS Comment" boxes, you can enter texts, for example, a brief
description of the step. The comment for the step can contain up to 80 characters and the
OS comment up to 512 characters. The OS comment is used in process control for
visualizing the step.
Introduction
You enter the statements for actions in a formatted dialog box.
Editing actions
Note
Note that an SFC type can only access its own interface and not external objects.
For each step, you can formulate up to 50 statements per action. Ten of these are visible in
the dialog box. You can change the visible section with the scroll bar.
Each statement line consists of the following elements:
● The button with the line number for selecting the line
● The check box that you can use to select the statement as an OS comment
● An edit box for the left (first) address, the operator, and the right (second) address.
You can use the number buttons at the start of each line to can select a statement in order to
copy it, delete it or insert a previously copied statement before it. Once you have selected a
button, you can right-click to access the available menu commands.
In unselected lines, you can use the Copy/Paste Action shortcut menu command to copy the
statements of a complete action and paste them into another action. In this way, you can
easily copy the statements from the "Initialization" action to the "Termination" action, for
example.
If you have placed the text cursor in an address box, the shortcut menu only displays the
functions required for editing the contents.
Texts with a yellow background reference objects that no longer exist or do not yet actually
exist (block inputs/outputs, charts, runtime groups).
This reference is a textual interconnection that you can make with the menu command
Options > Make Textual Interconnection if the interconnection partner actually exists. The
textual interconnection is displayed on a yellow background in the line of the address. The
same highlighting is used if a previously real interconnection becomes a textual
interconnection due to deletion of the interconnection partner.
Note
Interconnections cannot be set up if the target of the interconnection is not unique; in other
words, its name occurs more than once. The interconnection is also displayed as a textual
interconnection in this case and it cannot be made.
Example: The object name of an SFC is the same as the symbolic name of a DB.
For further information on editing the step, refer to the following sections:
How to edit addresses in a step (Page 149)
Valid data types (Page 164)
Selecting addresses
Note
Note that an SFC type can only access its own interface and not external objects.
Notes
● Accesses to CFC blocks can also be modified in the relevant CFC chart. This
modification, however, is restricted to "rewiring" SFC accesses; in other words, moving
the access to another block I/O (with <Alt> + Drag-and-Drop).
● Do not write any values to outputs of blocks and charts (CFC and SFC). Generally, these
are overwritten again by the processing of the block or chart.
Editing addresses
When making textual entries, make sure that names are consistent. A symbol that does not
exist in the symbol list (or a referenced symbol that is subsequently renamed) cannot be
checked in the editor and is set up as a textual interconnection.
Notes
● When you enter statements, they are checked for consistency to ensure the correct
syntactic and semantic formulation. The program, for example, checks if the data types of
the logically combined addresses are compatible.
● In the addresses, you can enter accesses to CFC block inputs/outputs whose block does
not yet really exist in the CFC chart. These statements are displayed in the statement line
on a yellow background and are set up as textual interconnections.
You will find more information on textual interconnections in the CFC Help in the section
Working with textual interconnections
Go to point of use
If you want to see the point of use of an address, place the cursor in the address box and
click "Go To". The corresponding chart opens. If the address is an input or output of a block
in the CFC chart, the I/O of the relevant block is selected. You can also move to the point of
use by double-clicking on the address.
With shared addresses, you jump to HW Config if the address is known there. Otherwise, an
error message is displayed.
The "Go To" function cannot be used for runtime groups.
Left address
SFC chart
The following entries are permitted in the SFC chart for the left address:
● A block input of a block in a CFC chart
Syntax: <chart_name>\<block_name>.<IO_name>
● an SFC chart (switch on/off)
Syntax: <chart_name>.INTONOFF
● An interface I/O of the SFC/CFC chart (own or another SFC chart)
Syntax: <chart_name>.<IO_name>
● A runtime group (on/off)
Syntax: <group_name>.EN
● A shared address, to which write access is permitted
Syntax: <symbolic_name>
● A textual interconnection
Syntax: <any characters> or
path reference to an object that does not yet exist (syntax as for block I/O)
● Structures
Right address
The following entries are permitted in the SFC chart for the right address:
SFC chart
● A block I/O of a block in a CFC chart
Syntax: <chart_name>\<block_name>.<IO_name>
● An SFC chart (on/off)
Syntax: <chart_name>.BUSY
● An interface I/O of the SFC/CFC chart (own or another SFC chart)
Syntax: <chart_name>.<IO_name>
● A runtime group (on/off)
Syntax: <group_name>.EN
● A shared address
Syntax: <symbolic_name>
● A textual interconnection
Syntax: <any characters> or
path reference to an object that does not yet exist (syntax as for block I/O)
● A constant
Syntax: depends on data type
For the data types BOOL, BYTE, INT, DINT, WORD, DWORD, instead of the absolute
numeric values, you can also specify their symbolic identifiers (value identifiers).
● Structures
Procedure
In the "CFC Charts" tab of the "Browse" dialog, you can use a filter to display only the block
I/Os that are relevant for assignment in the current address box. In the "Filter – I/Os" dialog
box, you can specify the criteria that decide which I/Os of the selected block are displayed or
not displayed.
Filter criteria
The following filter criteria are ANDed with each other.
Introduction
In the step properties, you can configure structure assignments. Structures, substructures or
structure elements are possible according to the following syntax:
Structure: <I/O_name>
Substructures: <I/O_name>.[<Substructure>...]<Substructure>
Structure element: <I/O_name>.[<Substructure>...]<Element>
You can enter this information directly in the statement lines or by means of the "Browse"
dialog box. In the "Browse" dialog box, you can enter the desired structure in the statement
line by double-clicking or by selecting the structure and clicking "Apply" or by selecting the
shortcut menu command Apply I/O. You apply substructures or structure elements in the
"Structure" dialog box.
In the Transition Properties, it is only possible to compare structure elements.
Selecting a structure
1. Select the desired structure in the "Browse" dialog box.
2. Select the menu command Open Structure from the shortcut menu.
The "Structure" dialog box opens.
The name of the structure is specified in the title bar. The table of the dialog box contains
the same columns as found in the "I/Os" column of the "Browse" dialog box.
3. Double-click the table line or click "Apply".
The substructure, structure, or structure element is entered in the "Properties" dialog box.
Note
Structures and substructures are not entered in the "Properties" dialog of the transition.
var01_char
var04_struct
var02_bool
var02_int
var06_struct
var03_word
var03_date
var01_time
Data type
Shows the data type of the structure element (BOOL, DINT or CHAR) or STRUCT for
substructures.
I/O
Shows the I/O type of the structure element or substructure (IN, OUT, IN_OUT).
CFC interconnection
If the structure is interconnected in CFC, this is indicated here by an 'x' (entire column).
SFC access (writing)
An existing (write) access by the SFC to a structure element is indicated by an "x".
Comment
Shows the comment of the structure element, for example: "1=CPU DPV1 mode".
"General" tab
In the "General" tab, you can enter or change the name and comment.
The number was assigned by SFC when the transition was generated and is unique in this
sequencer. It is read-only and cannot be modified. The number sequence has no gaps. If a
transition is deleted and a new one inserted later, the new transition is given the number of
the previously deleted transition.
"Condition" tab
In the "Condition" tab, you can combine 2 x 5 and 2 x 3 conditions using three-stage
transition logic to form a Boolean expression.
Introduction
You specify the step control conditions for the selected transition in the "Condition" tab.
Note
Note that an SFC type can only access its own interface and not external objects.
Formulating a transition
You formulate the transition as a Boolean expression, which can consist of 2 x 5 and 2 x 3
conditions (expression segments). The conditions are combined using three-stage transition
logic.
The Boolean operators are designed as buttons. By clicking the operator, you can change it
from "AND (&)" to "OR (≥1)". To make a "NAND" from an "AND" and a "NOR" from an "OR",
click the output of the operator. The negation is displayed by a bolded dot on the output line.
Alternative operation: If you position the cursor over an operator, you can right-click to open
the shortcut menu, which displays all the available Boolean operators. After you select the
menu command, the operator is changed accordingly.
You will find more information on editing a transition in the sections:
How to edit addresses in a transition (Page 159)
Valid data types (Page 164)
Selecting addresses
You can edit addresses or, as described in the section How to edit addresses in a step
(Page 149)", define them in the "Browse" dialog box. The advantage of browsing is that the
addresses are then unique. As a third possibility, you can use a drag-and-drop operation to
move the block inputs/outputs from CFC charts directly to the box for the address.
Note
Note that an SFC type can only access its own interface and not external objects.
As when selecting addresses for the steps, you can also enter the value identifiers of the
inputs/outputs for the transitions.
If you make the selection by means of the "Browse" dialog box or using a drag-and-drop
operation from the CFC chart, the entries are expanded to include the path of the plant
hierarchy (if this exists). The hierarchy path and the chart name are separated by double
backslashes ( \\ ).
Texts with a yellow background reference objects that no longer exist or do not yet actually
exist (block inputs/outputs, charts, runtime groups).
This reference is a textual interconnection that you can complete during compiling or
explicitly using the menu command Options > Make Textual Interconnection if the
interconnection partner actually exists. The textual interconnection is displayed on a yellow
background in the line of the address. The same display is used if a former actual
interconnection becomes a textual interconnection due to subsequent deletion of the
interconnection partner.
Textual interconnections that cannot be made are ignored during compilation. A
corresponding warning is entered in the log indicating which input/output still has a textual
interconnection. An unmade textual interconnection is also tolerated in the download.
Notes
● Accesses to CFC blocks can also be modified in the relevant CFC chart. This
modification is, however, restricted to "rewiring" SFC accesses; in other words, moving
the access to another block I/O (with <Alt> + Drag-and-Drop).
● Access to structures is possible but is restricted to the structure elements. In the "Browse"
dialog, you can open the structure by right-clicking the structure and selecting the
shortcut menu command Open Structure and then select the desired structure element.
● Interconnections cannot be set up if the target of the interconnection is not unique; in
other words, its name occurs more than once. The interconnection is then displayed as a
textual interconnection and cannot be made. Example: The object name of an SFC is the
same as the symbolic name of a DB.
● When you enter conditions, they are checked for consistency to ensure the correct
syntactic and semantic formulation of the conditions. The program also checks if the data
types of the logically combined addresses are compatible.
● The predefined logic is normally sufficient. If you require more complex formulations, you
can create them with blocks in a CFC chart and enter the results that were calculated in
the chart as the address in the transition conditions.
Go to point of use
If you want to see the point of use of an address, place the cursor in the address box and
click "Go To". The corresponding chart opens. If the address is an input or output of a block
in the CFC chart, the I/O of the relevant block is selected. You can also move to the point of
use by double-clicking on the address.
With shared addresses, you jump to HW Config if the address is known there. Otherwise, an
error message is displayed.
The "Go To" function cannot be used for runtime groups.
Entering an OS comment
In the "OS Comment" tab, you can enter a text for every condition. This text will be displayed
on the OS during process control. The text of the condition is entered by default.
You cannot change the Boolean operators in this part of the dialog box; the buttons are only
for visualizing the existing logic operations.
If comment lines are labeled with the symbol, the comment is identical to the text of the
condition (default).
Notes
● The OS comment for the SFC type and SFC instance can be different. If the SFC type
has an I/O that is interconnected in the SFC instance, the interconnection partner is
indicated for the instance. If this is an output with multiple interconnections, only one of
the interconnections is displayed.
If the inputs/outputs are not interconnected, the OS comment of the SFC type and SFC
instance are identical.
Example:
Shared addresses
Shared addresses are connection partners that are outside the CFC/SFC charts. Shared
addresses can be read- and write-accessed. Note that the data type of the shared address
and of the accessing object (address of a statement or condition in SFC, block I/O in CFC)
must match.
You can specify the addresses in symbolic (Page 163) or absolute (Page 162) form.
Rules
The address of a value is used for absolute addressing.
Follow these rules:
● The address must not be located in the area reserved for compiling the CFC chart menu
command (Options > Settings for Compilation...).
● The address must not be located in a value range that does not exist for the current CPU.
● The address must be compatible with the data type of the accessing object (address of a
statement or condition in SFC, block I/O in CFC). If the case of a peripheral input word
(PIW), the first interconnection determines the type.
● The data width must accommodate the address and I/O.
Examples
The following examples illustrate how to specify addresses in absolute form:
Address Remark
I5.1 Access to input 5.1
Q5.1 Access to output 5.1
M6.7 Access to memory bit 6.7
MW10 Access to memory word 10
DB10.DW20 Access to data block 10, data word 20
DB20.DX2.1 Access to data block 20, bit 2.1
Symbolic addressing
With symbolic addressing, you specify the address to be processed as a symbol. Symbols
and addresses are assigned in the symbol table. The menu command Options > Symbol
Table opens the symbol table where you can add or edit entries.
When you make your entries in the symbol table, remember to adhere to the STEP 7
conventions.
Examples
Below, you can see several examples of possible entries. The following examples illustrate
how addresses can be specified symbolically.
Address Remark
Limitswitch For example access to an input bit.
The absolute address is defined in the symbol table.
Recipe.setpoint Access to a data block (recipe). The structure or the type of the data block
determines the data block element (value).
DB17.setpoint As above, but with absolute addressing of the data block
Recipe.DW5 As above, but with absolute addressing of the data word
"I5.1" Access to the symbol with the name I5.1. To avoid the absolute address with the
same name being addressed instead of the symbol, the symbol is enclosed in
quotation marks.
Runtime properties
The runtime properties of an SFC chart or SFC instance determine how the SFC is included
in the chronological execution sequence within the overall structure in the CPU. These
properties determine the behavior of the target system with respect to response times, dead
times, or the stability of time-dependent structures, such as control loops.
Note
You cannot insert the same SFC more than once in the same task. Inserting an SFC in
several cyclic tasks is not allowed because this can result in unpredictable behavior. No
provision is made for insertion of the SFC in other non-cyclic tasks (except in OB 100).
Introduction
You can insert SFCs in runtime groups if they have the "reduction ratio" and/or "phase
offset" attributes. You set the attributes in the object properties of the runtime group. All
charts of the runtime group then have the same "reduction ratio" and "phase offset".
Note
SFCs can run in different cyclic tasks when they are inserted in runtime groups. From a
technological point of view, this enables you to structure the project better, which will result in
considerably better performance when configuration changes are made (including reducing
the time needed for compilation).
Note
You should only use reduction ratio and phase offset in the tasks that are executed in
defined cycles; in other words, in (cyclic) interrupt tasks. In all other tasks you should use
extreme caution, particularly in process interrupt tasks and special tasks. Here, you should
not change the default reduction ratio=1 and phase offset=0.
Key
1) Depends on "SFC properties/operating parameters AS/cyclic operation"
2) Depends on "SFC properties/operating parameters AS/command output"
3) Depends on "SFC properties/operating parameters AS/time monitoring"
4) Depends on "SFC properties/operating parameters AS/operating mode"
5) Depends on "SFC properties/operating parameters AS/step control mode"
Additional information
You can find additional information about the inputs/outputs in the following sections:
SFC type: Standard interface (Page 178)
Inputs/outputs of the SFC type sorted according to usage (Page 184)
"Characteristics" interface parameter assignments (Page 185)
"Characteristics" interface expansions (Page 187)
Changing the control strategy and setpoints for an SFC instance (Page 279)
"Inputs/outputs" interface expansions (Page 184)
Key
1) Depends on the number of control strategies in the characteristics editor
2) Depends on "SFC properties/operating parameters AS/cyclic operation"
3) Depends on "SFC properties/operating parameters AS/command output"
4) Depends on "SFC properties/operating parameters AS/time monitoring"
5) Depends on "SFC properties/operating parameters AS/operating mode"
6) Depends on "SFC properties/operating parameters AS/step control mode"
7) Depends on "SFC properties/options/control strategy selection"
Valid inputs/outputs
The "Inputs/Outputs" interface editor is available for interface expansions. The following data
types are permitted for the inputs/outputs in the IN, OUT and IN_OUT sections:
INPUT (IN section):
BOOL, BYTE, CHAR, WORD, DWORD, INT, DINT, REAL, S5TIME, TIME, DATE,
TIME_OF_DAY, STRING
OUTPUT (OUT section):
BOOL, BYTE, CHAR, WORD, DWORD, INT, DINT, REAL, S5TIME, TIME, DATE,
TIME_OF_DAY, STRING
IN_OUT (IN_OUT section):
BOOL, BYTE, CHAR, WORD, DWORD, INT, DINT, REAL, S5TIME, TIME, DATE,
TIME_OF_DAY, STRING
Key
1) Depends on the number of control strategies in the characteristics editor
2) Depends on "SFC properties/options/control strategy selection"
For more information on this subject, refer to the section
Changing the control strategy and setpoints for an SFC instance (Page 279)
Note
In the following tables of characteristics, "name" stands for "I/O name". It is not the name of
a characteristic.
"Setpoints" characteristic
For detailed information about the inputs/outputs for setpoints, refer to the section
Usage of inputs/outputs for setpoints (Page 197).
For explanations of the table entries, refer to the section
Meanings in the table (Page 175)
Key
1) Depends on the number of control strategies in the characteristics editor
2) Depends on "<Setpoint>/Properties/Control strategy assignment"
Key
1) Depends on the number of control strategies in the characteristics editor
2) Depends on "<Setpoint>/Properties/Control strategy assignment"
Key
1) Depends on the number of control strategies in the characteristics editor
2) Depends on "<Setpoint>/Properties/Control strategy assignment"
Key
1) Depends on the number of control strategies in the characteristics editor
2) Depends on "<Setpoint>/Properties/Control strategy assignment"
Key
1) Depends on the number of control strategies in the characteristics editor
2) Depends on "<Setpoint>/Properties/Control strategy assignment"
*) The parameters are implemented as outputs because no IN_OUT parameters are permitted
with the "STRING" data type!
Key
1) Depends on the number of control strategies in the characteristics editor
2) Depends on "<Setpoint>/Properties/Control strategy assignment"
"PO" data type (process output = parameter for main products, by-products, and waste products)
Key
1) Depends on the number of control strategies in the characteristics editor
2) Depends on "<Setpoint>/Properties/Control strategy assignment"
Key
1) Depends on the number of control strategies in the characteristics editor
2) Depends on "<Setpoint>/Properties/Control strategy assignment"
Inputs/outputs of setpoints
The following explanations apply to all setpoints regardless of their data type. Specific
explanations are indicated as such.
Process values
The process value input is used to read out the actual process value from the plant. The
process value can be value from the process or a calculated value. The value is output
unmodified on the output.
Prepared Setpoints
At the setpoint inputs for AUTO or MANUAL mode, the word that will be used when the SFC
instance is next started is "prepared.
You can assign parameters for the MANUAL mode inputs in the "Prepared values" view of
the SFC faceplate. The prepared values are sent to the outputs.
"Parameters" characteristic
Note
Bit memory is an internal variable that does not appear as a visible I/O on the interface. As a
result, for example, you cannot use the "Browse" dialog box or the interface editor to
incorporate this variable in the addresses of the step/transition properties. You have to enter
the I/O name for the bit memory with the keyboard.
"Timers" characteristic
Key
*) Depends on "SFC properties/operating parameters CPU/operating mode"
Previous operating Enable MANUAL Enable AUTO Changeover Next operating mode:
mode: -> MAN -> AUTO 0 = MANUAL
0 = MANUAL 1 = AUTO
1 = AUTO
QAUTMAN ENMAN QENMAN ENAUT QENAUT MAN AUT QAUTMAN
0 x x 0 <-> 1 0 <-> 1 0 0 0
0 x x 0 0 0 1 0
0 x x 1 1 0 1 0 -> 1
1 0 <-> 1 0 <-> 1 x x 0 0 1
1 0 0 x x 1 0 1
1 1 1 x x 1 0 1 -> 0
Switching the operating mode via operator input (SFC test mode/SFC visualization)
The "padlock" enable button also shows the status of QENMAN or QENAUT.
The QFORCEMAN output is set for one cycle when there is a changeover from AUTO to
MAN if no enable was set.
Note
The I/O INTONOFF is not an available SFC type in V6.1 and higher. It has been changed to
a reserve (IORES0). Existing accesses to INTONOFF are converted to textual
interconnections.
Special states
READY_TC
With the READY_TC (Ready to complete) output of the standard interface, the SFC provides
a signal for synchronization between the SFC and the higher-level controller for the transition
from "Run" to "Completing." The SFC sets the READY_TC to "1" if "Run" has finished
executing, in other words, the start conditions for a sequencer are not fulfilled or a started
sequencer has been executed completely. Regardless of the reason, READY_TC can also
be set in increments. This enables the actual SFC execution completion to be signaled. A
higher-level controller issues the "Complete" command to the SFC only when the
READY_TC output is set.
If "Run" operating state is exited (for example, due to a "Complete", "Hold," or "Error"),
READY_TC = 0 is set. If the SFC has been placed in "Hold" state and then resumed,
READY_TC is not automatically reset to the previous value; rather, it remains set to 0
because the SFC cannot decide whether the conditions for READY_TC = 1 have been
fulfilled again when a resumption occurs. The project engineer is responsible for proper
handling of READY_TC in this case.
BUSY
BUSY = 1 indicates that the SFC is "busy," i.e., has been started. This signal replaces the
signal <SFCname.EN> used for transitions in SFC V5.2 and lower.
Note
If several commands are queued simultaneously (for example, external and internal
commands), an interconnection error (LI_ERR=1) is usually displayed. The commands will
not be executed or only one of the commands will be executed.
With ENTARGETSTEP, you can enable or disable the manual setting of target steps in
MANUAL mode (relevant only in MANUAL, in contrast to other "EN..."). ENTARGETSTEP
has no effect on programmed target steps.
With TARGETSEQ and TARGETSTEP, only one target step can be set in a sequencer. A
target step that has already been set is reset.
See also
Behavior when multiple commands are queued (Page 271)
Key
2) Depends on "SFC properties/operating parameters AS/cyclic operation"
3) Depends on "SFC properties/operating parameters AS/command output"
4) Depends on "SFC properties/operating parameters AS/time monitoring"
6) Depends on "SFC properties/operating parameters AS/step control mode"
Key
*) Only for SFC type
**) Only for SFC chart
Key
*) Only for SFC type
For an explanation of the cooperation between user controls and SFCs, refer to the section
Continuous mode (Page 257).
MANUAL
● Execution options:
Bit 5 - SELFRESET = 1 and "Cyclic Operation" control and display section
(neither SELFRESET nor "Cyclic Operation" is executed)
● Internal commands and external interlocks
Bit 6 - more than one internal command at the same time (e.g., INTABORT and
INTCOMPLETE) (1 cycle)
Bit 7 - more than one external interlock at the same time (e.g., LOCKABORT and
LOCKCOMPLETE)
Bit 8 - internal commands and external interlock at the same time (INT...+LOCK...) (1
cycle)
Key
*) Only for SFC type
**) Only for SFC chart
Key
*) Only for SFC type
Key
*) Only for SFC type
BA_ADDSTATE
BA_STATE
Key
*) Only for SFC type
**) The state that was in effect before the error state is also displayed.
SFC_STATE
Bit Meaning
0-15 User-assigned
Special
● The MODE parameter is preset by the SFC code generator for insertion of the SFC
instance in the startup OB or cyclic interrupt OB and must not be modified.
● The SFC_INIT parameter is used to initialize the SFC instance for test purposes and must
not be used.
Compiling
When compiling (scope: entire program), all charts, SFC types, and SFC instances of the
current chart folder are converted to the source language and then compiled. If you have
modified an SFC chart, SFC type or SFC instance, you have the option of compiling the
changes only.
When you compile, first all SFC types then all SFC instances and then all SFC charts are
compiled. Finally, the CFC charts are compiled.
The SFC type is compiled only if a compilation-relevant change in the type has been made
since the last compilation.
A function block type containing the I/Os defined in the interface and the configured
sequencers is generated from the SFC type provided with an interface. As with the SFC
chart, an action FC and a transition FC are also generated.
During compilation, a consistency check is performed automatically. You can start this test
regardless of the compiling process using the menu command SFC > Check Consistency.
Logs are created during the consistency check and when compiling and downloading. You
can view the logs in the SIMATIC Manager with the menu command Options > Charts >
Logs... and in the SFC and CFC with the menu command Options > Logs....
After compilation, you can download the user program to the target system and perform
testing and commissioning.
CPU comparison
Select the menu command CPU > Compare if you want to compare the time stamp of the
most recent changes before downloading.
A dialog box opens listing the date and time of the following changes:
● Last download-relevant change
● Last compilation
● Compilation of the loaded program
If the time stamp of the last download-relevant change is older than the last offline program
change, this has no effect on the execution of the program in the CPU. You do not need to
download the program again.
If the time stamp of the "Last compilation" is older than the time stamp of the most recent
modification relevant to the download, you must compile the charts and download them to
the CPU so that they match.
If the time stamp of the "Compilation of the loaded program" is older than the time stamp of
the "Last compilation," you must download the user program from the PC or programming
device to the CPU so that they match.
Additional information
You can find additional information about compiling in the following sections:
Settings for Compiling (Page 229)
How to compile (Page 230)
Overview of the blocks generated during compilation (Page 231)
Consistency check (Page 233)
Logs (Page 303)
Note
If you work only with CFC and SFC in your program, you can leave the default
compilation settings unchanged.
Result
The charts of the current program (chart folder) are checked for consistency and then
compiled. The messages from the consistency check are written to a log file. If "errors" and
"warnings" occur, you can jump to the relevant SFC by double-clicking the message.
During compilation, a dialog box with a progress bar is displayed. You can stop the
compilation at any time by clicking "Cancel".
Note
You can also perform a consistency check without compiling. To do so, select the menu
command SFC > Check Consistency....
For further information, refer to Consistency check (Page 233).
Introduction
Understanding the following relationships can be helpful if you want to control the use of
resources in the CPU.
Overview
The structure you have configured in SFCs is mapped to the S7 objects function block,
function (FC) and data block (DB). All charts (CFC and SFC) of a chart folder are always
compiled.
Each SFC in the chart folder is mapped as follows during compilation:
In order for the SFC charts/SFC instances to be executed in the AS, the following blocks are
also present in the block folder (depending on the configuration):
When you create a new SFC chart or SFC type, the required blocks are automatically copied
to the block folder. For an SFC type, an additional copy of FB 247 is created (FB number is
the first available number, for example, FB 1025).
Furthermore, additional FCs are required in order to call the blocks processed in the CFC
according to the configured run sequence, as follows:
● One FC for each OB used
● One FC for each runtime group
DBs are used by the CFC as follows:
● An instance DB is created for each inserted block of a block type (FB).
● Pool DBs are created for storing interim results of FCs, for example. One pool DB is
required per data type. When the maximum length (4 Kbytes) is reached, another DB is
created.
The quantity of FCs and DBs available varies according to the CPU. You must allocate these
as follows:
● FCs for block types
● FCs and DBs for the structures created with the STL, LAD and SCL programming
languages
● FCs and DBs for compiled charts
Procedure
1. To do so, select the menu command Chart > Check Consistency.
All charts of the current folder are checked. When the check is completed, the result is
shown in the "Logs" dialog box.
2. You can also read or print the log at a later time.
3. In SFC, select the menu command Options > Logs..., or in the SIMATIC Manager, select
the menu command Options > Chart > Logs....
You will find additional information about this under Logs (Page 303).
Introduction
In order to commission graphically generated charts/types for a CPU, the program must first
be compiled and downloaded to the target system. The charts are downloaded to the CPU to
which the user program containing the current chart folder is assigned.
Note
Programs created with SFC must always be downloaded to the CPU from SFC or CFC,
since only this download function guarantees the consistency of the configuration data with
the CPU data. The same download function is also used if you select the menu command
CPU > Compile and Download Objects… in the SIMATIC Manager.
On the other hand, copying blocks in the "Offline Block Folder" to insert them in the "Online
Block Folder" is not permitted.
Change log
The download to the CPU is - similar to working in test mode - a secure, logged function for
S7 if SIMATIC Logon Service is installed and access protection and change logging are
activated.
In addition to the change log of the SIMATIC Manager, in the ES the actions and the time
stamp can be listed in the ES log when loading, if the current chart folder is activated for the
ES log. Activate the selected chart folder in the dialog box of the object characteristics in the
tab "ES Log".
For further information on this subject, refer to the CFC manual or the CFC online help under
Change log.
Procedure
1. Select the Edit > Object Properties... menu command.
The "Download" dialog box opens.
2. Select the download mode to specify if the "Entire program" or only "Changes" are to be
downloaded to the CPU. You can also select the entire program in a "Download to test
CPU".
3. Click "OK" to download the program.
If you have made download-relevant changes in the configuration and have not compiled
since you made the changes, you will be prompted to compile before you download. If the
compilation is free of errors, the download will be started automatically when the compilation
is complete.
Downloading changes
In the "Changes" download mode with CPU in "RUN-P" mode, you can download changes in
your configuration to the AS without having to change the CPU to STOP mode. With this
type of download, you only download changes that have been made since the last download.
Notes on H CPUs
● If the H CPU is in solo mode, for example, due to the failure of a CPU, and a CPU failover
has taken place, when there is an online access, (in this case, downloading changes), a
selection dialog box opens. In this dialog box, you can select the required CPU. This
dialog box does not appear in redundant mode.
● If you download program changes to a CPU that is operating in solo mode and then
perform a "switchover with modified configuration" using the menu command CPU >
Operating Mode..., these changes are lost and you can only download the entire
program.
Remedy: Download in redundant mode. In this case, you must make sure that the
operating mode remains unchanged until the download is complete.
Note on F systems
Downloading changes in programs with a modified F component requires the entry of an F
password. Without this legitimating, downloading is aborted.
Note
Note that there is no absolute guarantee that the CPU will be prevented from changing to
STOP mode when you download changes.
You can find additional information about this in the CFC documentation under System
support for avoiding causes of CPU STOP.
Comparing programs
If you generated an image of the downloaded program, you can click "Show Changes" in the
"S7 Download" dialog box to run a comparison between the XML file and the program you
now want to download before it is actually downloaded.
The VXM is then called and runs the comparison. The comparison will enable you to see
which data have changed in relation to the program that was downloaded previously. You
can then decide whether or not to download the latest version.
Example 1
A sequencer is running with the "Error" state and this sequencer should be loaded.
The following sequences occur:
Example 2
A sequencer is running with the "Aborting" state and this sequencer should be loaded.
The following sequences occur:
Note
A sequencer is running in the "Aborting" state, cannot be deactivated by the loader if user
confirmation is required by the configured step control mode
Example 3
A sequencer is running with the "Idle" state and this sequencer should be loaded.
The following sequences occur:
You can find additional information about the effects of a modified SFC type under
Configuration changes in the SFC type (Page 86)
Requirements
● The SFC created with the SFC Editor has been specified with the following:
– The sequencers (start condition and pre/postprocessing) and their sequencer
topologies
– The action functions of the steps
– The conditions of the transitions
– The runtime properties
● The program has been compiled and its blocks have been downloaded to the AS.
"Defaults" group
Step control mode T Transition (process-driven)
Operating mode MANUAL Operator mode
Command output On
Cyclic operation Off
Time monitoring Off
"Start options" group
Autostart Off
Use default operating parameters when SFC Off
starts
The following operating state is set after the CPU starts:
Overview
The various step control modes change the behavior of the SFC when passing control from
active steps to successor steps.
You can change the step control mode in all operating states. The individual step control
modes are mutually exclusive. SFC recognizes the following step control modes:
T/T and O
Step-specific confirmation by operator:
The "Confirmation" label is set or reset on a step-specific basis in the "Properties" dialog box
for the step. The sequential control system runs in the following modes:
● Process-controlled in steps without the "confirmation" option.
Each completed transition following a step without this identifier passes on control without
operator intervention (corresponds to "T").
● Controlled by the operator for steps with the "Confirmation" option.
When an active step with the "Confirmation" option becomes true, the system prompts
the operator to acknowledge the next step and then continues the sequencer
(corresponds to "T and O").
Step control mode "T /T and O" is possible in MANUAL mode (operator mode) or AUTO
mode (process mode).
Note
In step control modes "O" and "T or O", the minimum run time of the step can be overridden
by the operator.
Introduction
You use the execution options to specify the behavior of the sequential control system. The
individual execution options can be combined.
You can set the execution options in the "AS Operating Parameters" tab of the "Properties"
dialog box. You open the dialog box with the menu command SFC > Properties....
● Autostart
When an SFC has the property "Autostart: on", the SFC goes immediately to "Starting"
state after a restart in the CPU without any operator intervention. An automatic start does
not occur after downloading changes (CPU does not go to STOP). The SFC must be
restarted by the operator or via the program (for example, from the external view in the
CFC).
If "Use default operating parameters when SFC starts : on" is set, all the defaults/options
set in the runtime properties that, for example, have been changed in test mode are
effective again when the SFC chart starts.
The setting for "Autostart" can only be changed in the SFC > Properties > "Operating
Parameters AS" dialog box.
● Use default operating parameters when SFC starts
If "Use default operating parameters when SFC starts : on" is set, all the defaults/options
set in the runtime properties that, for example, have been changed in test mode are
effective again when the SFC starts.
Notes on diagram
The SFC OSL contains some state changes that have been retained in order to ensure
compatibility with older projects. These are displayed with dashed blue lines in the diagram.
The numbers in the diagram are the identifiers for the individual operating states whose
meaning is listed in the following tables.
Note
Switching from SELFCOMP=0 to SELFCOMP=1 only has an effect when the "Run" and
"Ready to Complete" state have not yet occurred.
Transitional states can, of course, also be exited due to an external problem or with the
"Abort" and "Stop" commands. In this case, the appropriate change is executed, and not the
implicit change.
,GOH
6WDUW
6WDUWLQJ
6(/)&203
6(/)&203 DQG +ROGLQJ (UURU
FRPSOHWH
5HVHW &RPSOHWLQJ
(UURU
(UURU
(UURU
6WDUW
+HOG +HOG (UURU
(UURU
&RPSOHWLQJ
&RPSOHWHG
$ERUWLQJ 6WRSSLQJ
$ERUWHG 6WRSSHG
Key
Implicit transitions that are triggered from SFC, if the active sequencer has been
processed to completion or if there is not sequencer to process.
Overview
The sequencer OSL controls processing of sequencers.
The operating state logic of the sequencer is defined by the Diagram of the state changes for
sequencer OSL (Page 262).
The sequencer OSL is executed independent of the SFC-OSL when a sequencer is
processed. This means that the sequencer has a state which differs from the SFC state. For
example, the state of the SFC OSL can be "Holding", whereas the state of the sequencer
OSL is "Run" (due to the processing of the sequencer to the "Holding" state). The processing
of the sequencer OSL is subordinate to the SFC OSL. This means that the state change in
the SFC OSL usually effects the state change in the sequencer OSL.
,GOH
6WDUW
$ERUW +ROG
$ERUWHG 5XQQLQJ 5HVXPH +HOG
6WDUW 5HVWDUW
&RPSOHWHG 6WDUW
&RPSOHWHG
$ERUW
Key:
Introduction
In the following description of the basic principles of cyclic operation of an SFC, it is
assumed that the SFC contains several sequencers with user-defined start conditions.
How it works
The SFC is executed based on the input signals pending in the SFC interface and the
internal status of the SFC. After an entire chart folder has been downloaded to the
automation system, all the SFCs are in "Idle" state or "Starting" state if Autostart = 1 is set.
The following is checked:
● The operating mode, commands, and external and internal signals are checked. This
determines the state that the SFC should take based on the input signals.
● All start conditions of the sequencers are checked. This determines which sequencer is to
be processed based on the preceding checks.
Startup characteristics
When the CPU goes into the stop state, the running sequencer stops at the step it is
currently processing. When the CPU is restarted, the SFC is initialized and the data valid
before the stop occurred is lost. The property of the SFC is the default state.
If you want the SFC to retain its state when the CPU restarts, you need to set the AS
operating parameter defaults correspondingly (Chart > Properties > tab: AS Operating
Parameters > SFC Startup after CPU Restart > Option: Retain SFC state).
The operator can decide how the SFC should continue execution based on the SFC and
process state. It may be necessary to switch from AUTO to MANUAL.
Another factor to be considered is whether the CPU went to stop during block processing or
processing was completed. If the first case is true, the data are inconsistent. The following
procedure needs to be performed as a result:
CPU stop does not occur during block processing (data are consistent)
Command Processing
Resume SFC resumes in the current operating state
Cancel SFC aborts according to the OSL
Stop SFC stops according to the OSL
The "Resume" command is always allowed regardless of the operating state, but the "Abort"
and "Stop" commands are only permitted when they conform to the state changes of the
SFC OSL (Page 252).
The state symbols are displayed and the "CPU_RESTART" output is set until one of the
commands is executed (Resume, Abort, Stop, Reset).
You can use the TRIG_CPU_RESTART output for the start condition of the sequencers that
should be executed after the CPU restart. This output is only set by the system and must be
reset by a configured actions (such as step action TRIG_CPU_RESTART = 0).
Note
After the CPU restart, the ENRESUME, ENABORT, ENSTOP and ENRESET are not
considered for the buttons Resume, Abort, Stop and Reset.
CPU stop
The symbols for "CPU restart and SFC with consistent data" and "CPU restart and SFC with
inconsistent data" are also displayed in the operator control and display section.
Additional information
For further information on this topic, see the following sections:
States of the steps and transitions (Page 291)
Display in test mode (Page 288)
15.3.3 Commands
Introduction
Regarding the commands for changing the operating mode, there is a distinction between
commands for "MANUAL" and "AUTO" modes.
Note
The commands arranged as buttons in the control section of the online window (Test mode)
are effective for the SFC chart or SFC instance only and not for sequencers.
General requirements
An SFC is started only when the requirements for starting are fulfilled. The start enable must
be set (ENSTART = 1) and the SFC must be in a state in which starting is permitted. The
following conditions must also be met:
● There is no interlock error (LI_ERR = 0).
● None of the signals INTERROR, LOCKERROR, LOCKCOMPLETE, LOCKHOLD,
LOCKABORT or LOCKSTOP is active at the same time.
● There is no operator error in MANUAL mode (OP_ERR = 0).
If you are using control strategies for an SFC instance, you must have selected one of the
defined control strategies (CS=<defined control strategy>). With CS=0 or CS>CS_HL, it is
not possible to start the SFC instance. If you have not configured any control strategies, the
CS, CS_LL, CS_HL inputs/outputs are assigned the value 0 during compilation and must not
be modified.
If you are using setpoints, you must specify them within the respective limits. Otherwise it is
not possible to start the SFC instance.
With an SFC instance in AUTO mode, you must have set the parameter transfer (PARAM=1)
before starting. The transferred control strategies and setpoints are then checked and the
start disable reset (QDIS_START=0) if the parameters are valid. The start disable remains
set until a PARAM is set by a parameter transfer. Following a successful start, the start
disable remains until the next parameter transfer.
If one of the conditions above is not fulfilled, the start disable (QDIS_START=1) is set and
the start is not executed. The "Start" button is not enabled in this case.
Additional information
For more information on this subject, refer to the section
Start requirements of an SFC (chart or instance) (Page 270)
Runtime phases
Each step is divided into three phases (actions):
● Initialization: Action for initial processing
● Processing: Action for cyclic processing
● Termination: Action for final processing
The following figure shows the runtime phases of a step in conjunction with a successor
transition: On the left are the elements of the sequencer topology and on the right the
corresponding runtime phases.
,QLWLDOL]DWLRQ ILUVW
H[HFXWLRQ
6[ ([HFXWLRQ
F\FOLFH[HFWLRQ
7[ 6HTXHQFHWUDQVLWLRQ
8QIXOILOOHG
)XOILOOHG
&RPSOHWLRQ ILQDO
H[HFXWLRQ
5XQQLQJ
1RWUXQQLQJ
$FWLRQV6
6WHS6 ,QLWLDOL]DWLRQ
6
([HFXWLRQ
&RPSOHWLRQ
7UDQVLWLRQ7
)XOILOOHG
7
8QIXOILOOHG
5XQQLQJ
6WHS6
6 1RWUXQQLQJ
$FWLRQV6
,QLWLDOL]DWLRQ
([HFXWLRQ
&RPSOHWLRQ
&\FOLF
When the chart progresses from one step to the next, the termination action is executed in
the same cycle as the first action (initialization or processing) of the next step.
This allows the "non-latching behavior" specified in IEC 1131 - 3 to be achieved.
Example:
In step S4, the processing phase opens a valve and the termination phase closes it again. If
the same valve is opened again in the first action of the next step (S5), the overlapping of the
two actions (both in one cycle) means that the valve is not closed.
Special situations
The example in the schematic shows the time behavior when all three actions of a step are
configured.
Other combinations are also possible:
● If no "initialization" action is configured, the "processing" action begins immediately when
the step is enabled.
● If no "termination" action is configured, the step is disabled immediately as soon as the
transition is fulfilled.
The minimum time that a step is active depends on the number of configured actions. This is
one or two actions with a normal step, and up to three actions with a final step.
If a minimum run time is set for the step, the step remains active for at least this time even if
the transition condition is fulfilled earlier.
7 7
6 6 6
7 7
6 6
/DVVR
7 7
The transition after the simultaneous branch becomes true when all steps at the end of the
sequencers are active and the conditions are fulfilled.
If several conditions are fulfilled at the same time, the transition that is located furthest left in
the sequencer topology is activated.
Note
An alternative branch cannot contain an unprogrammed transition at the start of a
sequencer.
Reason: Unprogrammed transitions are always set to TRUE by default, and are thus
automatic fulfilled. This means that they are always fulfilled before a programmed transition.
Processing a loop
The figure below shows the runtime phases of a loop: On the left are the elements of the
sequencer topology and on the right the corresponding runtime phases.
,QLWLDOL]DWLRQ
8QIXOILOOHG
([HFXWLRQ )XOILOOHG
/RRSWUDQVLWLRQ
6HTXHQFHWUDQVLWLRQ
8QIXOILOOHG
&RPSOHWLRQ
&RPSOHWLRQ
Processing a jump
The jump is executed when the transition of the jump is satisfied.
6 6
6 6 6 6
7 7 7
6 6
7 7
Key
1 Successor transition
2 Jumps
3 Alternative branch
Example on the left in the figure: If there is more than one jump following the origin of a jump
(S4), then – similar to processing in an alternative branch - the jump whose transition is
fulfilled first is executed. If several transitions are fulfilled at the same time, the transition that
is located furthest left is activated.
Example on the right in the figure: If an alternative branch follows instead of a successor
transition (such as T4 in the left configuration) in the sequencer, all the transitions of the
alternative branch (T5 and T7) are queried before the transitions of the jumps.
15.4.1 Changing the control strategy and setpoints for an SFC instance
Introduction
You can change the control strategy and/or setpoints before restarting an SFC instance or
change the setpoints and apply them immediately.
Summary
In both mechanisms, the output CSSPACCEPT indicates whether or not the requested
changes were applied. This output is set after applying the control strategy and/or setpoints
by the SFC instance at the relevant outputs. The CSSPACCEPT output is set for one
processing cycle (for 1.) or remains set until the TAKESP request is reset (for 2.).
Output LI_ERR indicates whether or not an error occurred when attempting to apply value
changes with the result that the values could not be completely applied. If LI_ERR is set,
QDIS_START is not reset and a start and, thus, the adoption of the control strategy and/or
setpoints is prevented (for 1.).
Overview
Debug functions are integrated in the SFC Editor for the following tasks to provide support
for commissioning:
● Monitoring the work process of the sequential control system in the AS
● Influencing the operating modes
● Changing setpoints
Test modes
You can start test mode in either of the following test operating modes:
● Process mode
● Laboratory mode
You can select the test operating mode while in edit mode using the menu commands in the
"Debug" menu. You cannot switch once you are in test mode.
In process mode, the communication for the online dynamic display of the SFC charts and
SFC instances is restricted to keep the load on the CP and bus to a minimum. If overload
occurs in this test operating mode, a message is displayed indicating that the limit of the bus
load has been reached. In this case, stop the testing of the SFCs that are not absolutely
necessary for the test.
In laboratory mode, communication for the online dynamic updates of the SFCs is
unrestricted. Use laboratory mode to perform convenient and efficient testing and
commissioning.
Note
If the cycle time is changed in the SFC chart, this affects charts/instances with dynamic
properties. A change in CFC affects only newly registered SFC charts/instances.
Requirements
● The sequential control system (chart or instance) to be tested including the necessary
basic automation functions (CFC charts) have been compiled without errors and
downloaded to the CPU.
● The chart is open in SFC or SIMATIC Manager, the SFC instance is open in the CFC
chart.
Note
With S7, loading into the CPU - and working in test mode - are functions that are logged if
the SIMATIC Logon Service is installed and the access protection and change log are
activated.
Information in this regard is available in the CFC documentation under Change log and
ES log
Note
Make sure that the sequential control system is not waiting for operator input when you
switch to edit mode.
The mode switch always relates to the currently active SFC. The overview display of this
SFC is dynamically and cyclically updated.
After you have switched to test mode, the current state of the sequential control system is
displayed. This does not mean that a sequential control system that has already started can
necessarily be monitored or controlled from the start. For example, this is the case with
sequential control systems that are started immediately after they are downloaded to the AS
without requiring any operator command (autostart).
Note
If the H CPU is being operated in solo mode, for example, due to CPU failure, and a CPU
failover has taken place, if there is online access (here: Activate Test Mode), a selection
dialog box is displayed. In this dialog box, you can select the required CPU. In redundant
operation, this dialog box does not appear.
Acknowledgement information
In the object properties of the step you can assign parameters for acknowledgement
information. In step control mode "Step-specific confirmation by operator (T/T and O)", this
acknowledgement information is displayed at the associated acknowledgement button for an
operator prompt. The text can be positioned as required using the mouse pointer, it remains
connected with the button over a connecting line.
Note
If you want to modify existing SFC instances, you must exit test mode and then change the
corresponding SFC type. After compiling and downloading the changes, all the instances are
automatically adapted.
Trace
In test mode, you can use the Debug > Trace menu command to specify that the active
sequencer is always displayed automatically. If this menu command is not set, the explicitly
selected sequencer is displayed.
Note
When tracing is activated, you can only open the object properties of a step or transition that
is currently active. If you open object properties of a step or transition that is not active, a
dialog box appears asking if you wish to disable the tracing.
67$57
(1'
581
The following elements are shown in the control and display section (from left to right):
● First row:
– Symbol and name of the SFC mode
– Status display and name of the active sequencer
– Status display and name of the held sequencer
– Box with drop-down list for displaying and changing the step control modes
● Second row:
– The current operating mode (MANUAL/AUTO)
– Status flag "Continuous mode" for bumpless switching to AUTO mode (for example, to
avoid an SFC having to be switched off before it is restarted). This is displayed when
output QCONT = 1.
– Status display "Ready to complete", when the SFC is not self-completing (SELFCOMP
= 0) and is waiting in the run state for the "Complete" command (display, when
READY_TC=1).
– The display for CPU restart with consistent data
or
the display for CPU restart with inconsistent data
– The display for an interconnection error (or empty box)
– The display for an operator error (or empty box)
– The display for a step error (or empty box)
– The display for an operator prompt (or empty box)
Resume
Start Hold
Stop
Abort Complete
Reset Error
Restart
• The check boxes for enabling and disabling the execution options "Command Output",
"Cyclic Operation", and "Time Monitoring".
Operator prompt
An operator prompt (not with "T") is displayed by the button beside the transition icon.
After clicking the button (or ) and continuing execution, the operator prompt disappears.
When an acknowledgement was configured for the step, this is displayed in the step control
mode "Step-specific acknowledgement by operator (T/T and O)" at the associated
acknowledgement button. The text can be positioned as required using the mouse pointer, it
remains connected with the button over a connecting line.
Runtime error
The button is only displayed when a runtime error is displayed for the current step.
You click this button (or ) to acknowledge the pending errors. After acknowledgment,
the appearance of the step returns to the state it had before the error occurred (active =
"green", for example).
Held Yellow
Error Red
Note
Please note the following:
• If you use "programmed target steps", the target steps sent by the operator in the
corresponding sequences are deleted.
• Target steps set in "MANUAL" mode are not deleted when there is a changeover to
"AUTO".
• Setting or deleting target steps is possible only when ENTARGETSTEP = 1 is set.
In the "Run times" area, you can change the "Minimum" and "Maximum" parameters for
SFC charts. If you click in the edit box, an additional dialog box opens in which you can
enter a new time. Any changes you make are entered in the ES data management when
you click "OK" and take effect in the next processing cycle in the AS.
You can use the "Current", "Minimum" and "Maximum" boxes to monitor the run time.
If no values were configured for the runtimes (time = 0), the individual boxes display
"- - -".
In the box "Comment" you will see the comment of the step.
In the "Acknowledgement information" box, you see the text displayed to the operator as
information in the mode "Step-specific acknowledgement by the operator (T/T and O)."
The information appears in test mode or in the SFC visualization on the corresponding
acknowledgement button. The text can be positioned anywhere in the window but
remains linked to the button with a connection line.
● "Initialization", "Processing", "Termination" tabs
On the left next to the first address there is a box displaying the current value of the
address. The box on the right next to the second address contains the configured value
that you can change (only in the SFC chart). If you click in the box, you open the "Change
Value" dialog box, in which you can enter the new value.
After you close the dialog box, the changed value is written to the ES data management
(and in the CPU) and becomes effective in the next processing cycle.
● Register "OS comment" (initialization), (processing), (termination)
In these registers you can see the initialization, processing, or termination actions. The
middle column does not show the interconnection information, however, as it does in the
Initialization, Processing and Termination tabs. Here it shows the configured OS
comment. All other details are the same.
Buttons
If a time error occurs in the time monitoring of a step and the button for acknowledging
the step runtime error is displayed next to the affected step, the button is also displayed
in the dialog box. This allows you to acknowledge the error from the dialog box.
Note
When a step runtime error occurs, the step is returned to the state that it had before the error
occurred (for example, active = "green") after the error has been acknowledged.
You can use the "Go To" button of an SFC chart to jump from the current address box to its
point of use, for example, to the block in the CFC chart or to the I/O address in HW Config
(not possible for an SFC instance).
Buttons
If an operator prompt is displayed for the monitored transition in the sequencer and the
button is displayed beside the transition, the dialog box also has the button added to it.
This allows you to acknowledge the operator prompt from the dialog box.
You can use the "Go To" button of an SFC chart to jump from the current address box to its
point of use, for example, to the block in the CFC chart or to the I/O address in HW Config
(not possible for an SFC instance).
Overview
The documentation of SFC charts/types/instances includes the following:
● Printout of the SFC in a variety of layouts
● Parameter assignments
● Properties
● Chart reference data
Printing an SFC
1. Click on the icon in the toolbar or
select the menu command SFC > Print....
A dialog box opens.
2. Here, you make settings for the print scope and the layout:
Print What:
– Properties
– Interface inputs/outputs
– External view (for SFC chart) or characteristics (for SFC type/instance)
Sequencers:
– Properties
– Normal size
– Overview (you can select either normal size or overview, but not both).
– Steps/transitions
Options (only with "Normal size"):
– Alternative branch aligned left
– Comment/text
Statistics
The graphical display shows the quantity of utilized CFC and SFC objects and S7 resources,
the time stamp of the current program and the process objects of the project.
You will find a detailed description of the lists and the meanings of the columns in the CFC
online help "Chart Reference Data" in the section
Display of chart reference data
Export
You can save the generated lists as a file in CSV format (for use in Microsoft EXCEL, for
example) by selecting the menu command Reference Data > Create Export File....
17.3 Logs
Tabs
"Compile" tab
List of the messages that occurred during compilation (including the compiler messages); for
example, if the project contains a program but no station. Example message: "The program
is not assigned to an actual CPU."
"Check Consistency" tab
List of the messages that occurred during the consistency check.
"Download" tab
List of the messages that occurred during a download, for example, if the download was free
of errors: Example message: "0 errors and 0 warnings found".
"ES Log" tab
Log of all protected actions (download, test mode). This requires that the SIMATIC Logon
Service is installed.
"Step Processing" tab
After checking the SFC runtime behavior with the menu command Options > Check Step
Processing, this tab lists the steps that use the same address in the terminating action of one
step and in the initializing action or processing action of the next step. The log shows how
many SFC charts were checked and how many accesses were found and the SFC charts
with an unchanged runtime behavior.
"Convert Format" tab
After converting charts of older versions to V5.1 or later, the charts that no longer have the
same properties are listed here. These include, for example, SFC charts that had the
attributes "scan rate" and "phase offset" in the old version. The information includes the
insertion location (task) and the values for the scan rate and phase offset for every chart
affected.
Example: "SFC1: Task OB32 scan rate 4 phase offset 2"
"Make Textual Interconnections" tab
The menu command Options > Make Textual Interconnections is used to make all textual
interconnections that are assigned to a specific interconnection partner in the current chart
folder. The textual interconnections made with this action are displayed along with error
messages indicating the textual interconnections that could not be made for one reason or
another.
Overview
The menu command SFC > Footers... opens a dialog box where you can enter the text to be
displayed in the footers on every printed page.
With the DOCPRO add-on package, you can print the SFC chart/type together with footer
data. A distinction is made between global data and specific data (local data) for footers.
You can enter the global data for the project using DOCPRO or SIMATIC Manager; the
specific data must be entered with the SFC Editor. Remember that the specific data
overwrites the entries of the global data for the particular SFC.
You can enter specific data even if you have not installed the DOCPRO add-on package.
These data are saved and can be printed later when DOCPRO is available for print jobs.
Keywords in footers
In the global footers, you can enter keywords that will be replaced by current texts in the
printout. Below, you can see the available keywords and their meaning:
Note
If you print other objects (for example STL blocks or the DOCPRO content directory) with the
keywords used in SFC, the keywords themselves appear in the printout for these objects and
not the replacement. This problem no longer exists if you use DOCPRO keys.
When using DOCPRO keys, you must change the standard layout in DOCPRO. You can
replace the default footers with specific footers in the "Modify Layout" dialog box. You can
find information about this in the DOCPRO online help or in the DOCPRO manual: Creating
Documentation in Conformance with Standards.
The keys for "project path" and "Location of the project" (in the lower part of the table) must
continue to be used since there are no DOCPRO keys for them.
Parameter control
In addition to fixed sequential control systems, parameter controls are also used in batch
processes. Parameter controls are sequential control systems with variable parameters.
These variable parameters are compiled in a shared data block (recipe data block). You can
give the recipe data block a symbolic name, for example, "RecParDB".
The variables of the recipe data block are values assigned to the parameters of the basic
automation during configuration.
For further information about parameter control, refer to the sections:
How to configure the runtime (Page 308)
Execution with different parameter sets (Page 309)
Example of a recipe data block (Page 311)
Procedure
You configure the runtime of the parameter control with the SFC Editor. The procedure is
similar to the configuration of the sequential control system. You assign the values from the
recipe data block to the parameters of the basic automation in the "Object Properties" dialog
box.
7
6
7 7 7
6 6 6
7 7 7
6
7
Condition in T2 "RezParDB".altzwg =1
Condition in T3 "RezParDB".altzwg =2
Condition in T4 "RezParDB".altzwg =3
Changing on the OS
If you change the content of the recipe data block, parameter control can also run with
different parameter sets. You change the parameters on the OS.
Examples
The examples below show the various ways in which you can change the content of the
recipe data block.
● You can integrate the variables of the recipe data block as modifiable variables in the OS
process pictures and specify the current values of the variable on the OS before starting
the parameter control.
● You store various recipe parameter sets in the AS. The alternative statement of a recipe
parameter set for the recipe data block can result in an alternative branch in the "T and O
or "O" step control mode.
6
2 2 2
6
● In the OS process picture, you have included the modifiable variables "Batch ID" and
"Amount". By calling an appropriate user block in the parameter control, the parameters
in the recipe data block "RecParDB" are adapted relative to a standard batch.
$1:
Tasks
You can use the SFC to perform the following tasks:
● Configuring hierarchical SFC chart calls
or
● Coordinating processing of multiple SFC charts in the automation system
Control strategies and/or setpoint changes for projects created with SFC < V6.1 SP1
To make control strategy and/or setpoint changes effective, the block FB 245 must be copied
from the SFC library to the block folder prior to the change followed by compilation of the
entire program and download of the changes.
For more information on this subject, refer to the section
Changing the control strategy and setpoints for an SFC instance (Page 279)
Note
You must change the attributes again after every installation of SFC for SIMATIC S7.
G L
Generated blocks, 231
Layout, 61
SFC, 231
Dialog box, 61
Getting started, 21
LI_ERR, 217
Group acknowledgements, 213
Loop, 50, 129, 277
SFC inputs/outputs, 213
Creating, 129
Group displays, 213
Editing, 129
SFC inputs/outputs, 213
in the AS, 277
H M
Handling, 75, 77
MANUAL commands, 268
Charts, 77
Meaning and usage of inputs/outputs for setpoints, 197
SFC, 75
Memory requirements, 231
Help, 70
Menu, 67
opening with keyboard, 70
Control, 67
How it works, 308
Messages, 220
Configuring, 308
SFC inputs/outputs, 220
Messages in the SFC, 103
Configuring, 103
I
Migration from older projects, 314
I/O groups, 110 Moving, 92, 94, 140
Inputs/outputs, 110, 176, 184 SFC chart, 92
for characteristics, 110 SFC element, 140
SFC chart, 184 SFC instance, 94
SFC chart, 176 SFC type, 94
Inputs/outputs of the standard interface, 178 Multiuser engineering, 54
SFC type, 178
Inserting/creating, 124
SFC elements, 124
N P
Navigating, 55 Parameter control, 307, 309
in the SFC, 55 Configuring the runtime, 308
Note texts, 106, 109, 186 Example of a recipe data block, 311
Characteristics, 186 Execution with different parameter sets, 309
Configuring, 109 Parameter sets, 309
NOTIFY, 103 Different, 309
Parameters, 106
Position texts, 106, 109, 186
O Characteristics, 186
Postprocessing, 42, 120
Object properties, 139
Preprocessing, 42, 120
Copying, 139
Printing, 303
OCCUPIED, 263
Logs, 303
OP_ERR, 217
Priority, 268
Opening, 90, 91
Commands, 268
SFC chart/SFC type, 90
Process values, 106
SFC instance, 91
Processing, 263, 266, 273, 275, 276, 277, 278
Operating modes, 203, 246
Alternative branch in the AS, 276
SFC inputs/outputs, 203
Jump in the AS, 278
Operating state logic, 260
Loop in the AS, 277
for sequencers, 260
Sequencer, 263
Operating state logic for SFC, 252
Sequencers, 266
Operating states, 205, 251
SFC, 263, 266
S7, 251
SFC after a CPU stop, 266
SFC inputs/outputs, 205
Simultaneous branch in the AS, 275
Operator control, 67, 68
Step and transition in the AS, 273
Dialog boxes, 68
Programmed target steps, 205
Menu, 67
Programs, 235
Operator control and monitoring during testing, 283
Downloading, 235
Operator input, 62, 63
Project structure, 73
With the keyboard, 63
Creating, 73
With the mouse, 62
Properties, 293, 295, 297
OSL, 252, 260
Sequencer during testing, 297
for sequencers, 260
Step during testing, 293
for SFC, 252
Transition during testing, 295
OSL for sequencers, 262
Purpose
Diagram, 262
Note text, 109
OSL for SFC, 258
Position text, 109
Diagram, 258
Overview, 231
Blocks generated during compilation, 231
Q
QDIS_START, 217
T Type properties, 99
Adapting, 99
Target step, 263, 293
Type/instance concept, 83
Target steps, 205
of the SFC, 83
Programmed, 205
TARGETSEQ, 205, 263
TARGETSTEP, 205, 263
U
Test mode, 288
Display, 288 User interface, 56, 61, 62, 63, 64, 65, 67, 68, 69, 70
Text, 47, 69 Elements, 56
Selecting with keyboard, 69 Using the keyboard, 64, 67, 68, 69, 70
Text box, 132
Creating, 132
Editing, 132 V
Timers, 106
Valid data types, 164
Tips & Tricks, 313
Valid entries for addresses, 151
Trace, 283
Tracking, 281
Control strategies and setpoints, 281
W
Transition, 46, 154, 156, 159
Access to structures, 154 What's new in SFC V7.0?, 11
Editing, 156 What's new in SFC V7.1?, 11
Editing addresses, 159 Window section, 70
Editing OS comments, 161 Changing, 70
Formulating conditions, 158 Working, 53
with the SFC Editor, 53
Working with SFC, 21
principle, 21