s7cfcs7b en US
s7cfcs7b en US
s7cfcs7b en US
03/2019
A5E41356073-AD
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
indicates that minor personal injury can result if proper precautions are not taken.
NOTICE
indicates that property damage can result if proper precautions are not taken.
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 product/system described in this documentation may be operated only by personnel qualified for the specific
task in accordance with the relevant documentation, in particular its warning notices and safety instructions. Qualified
personnel are those who, based on their training and experience, are capable of identifying risks and avoiding
potential hazards when working with these products/systems.
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 complied with. The information in the relevant documentation must be observed.
Trademarks
All names identified by ® are registered trademarks of 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.
1 Security information....................................................................................................................................11
2 What's new in CFC? ...................................................................................................................................13
3 Introduction.................................................................................................................................................17
4 Getting started ............................................................................................................................................19
5 Essentials of CFC.......................................................................................................................................21
5.1 CFC in the STEP 7 environment............................................................................................21
5.2 Blocks in CFC ........................................................................................................................24
5.3 Automatic naming ..................................................................................................................27
6 What you should know about CFC .............................................................................................................29
6.1 PCS 7 license information......................................................................................................29
6.2 Count and booking of the PO licenses...................................................................................30
6.3 Drive for page file ...................................................................................................................34
6.4 Reaction of S7 CPUs to error.................................................................................................35
6.5 Migration to the new CFC version..........................................................................................36
6.5.1 Migration to other CFC versions ............................................................................................36
6.5.2 Converting CFC library blocks to BOPs .................................................................................36
6.5.3 Migration of old projects to the enhanced runtime model ......................................................38
6.5.4 Migration of control blocks to the external view .....................................................................39
7 Multiuser engineering .................................................................................................................................41
7.1 Multiuser engineering.............................................................................................................41
7.2 Configuring in the network .....................................................................................................43
8 Starting and operating the CFC editor........................................................................................................47
8.1 Starting and closing the CFC editor .......................................................................................47
8.2 Operator controls and structure of the CFC editor .................................................................48
8.2.1 Working window .....................................................................................................................48
8.2.2 Catalog of blocks, charts, templates and libraries..................................................................48
8.2.3 Menu bar ................................................................................................................................52
8.2.4 Toolbar ...................................................................................................................................53
8.2.5 Status bar...............................................................................................................................53
8.2.6 Shortcut menu........................................................................................................................54
8.3 Keyboard and mouse operation .............................................................................................55
8.3.1 Shortcut keys for menu commands........................................................................................55
8.3.2 Shortcut keys in the CFC chart ..............................................................................................55
8.3.3 Cursor movement in the text editor ........................................................................................58
8.3.4 Cursor movement in the menu bar/shortcut menu.................................................................59
8.3.5 Cursor movement in dialog boxes..........................................................................................59
19.1.2 ARRAY.................................................................................................................................421
19.1.3 BLOCK_DB, DB ...................................................................................................................421
19.1.4 BLOCK_FB, FB ....................................................................................................................422
19.1.5 BLOCK_FC, FC....................................................................................................................422
19.1.6 BOOL, BO ............................................................................................................................422
19.1.7 BYTE, BY .............................................................................................................................422
19.1.8 CHAR, C ..............................................................................................................................423
19.1.9 COUNTER, CR ....................................................................................................................423
19.1.10 DATE, D ...............................................................................................................................423
19.1.11 DATE AND TIME, DT...........................................................................................................423
19.1.12 DINT, DI ...............................................................................................................................424
19.1.13 DWORD, DW .......................................................................................................................424
19.1.14 INT, I ....................................................................................................................................424
19.1.15 POINTER, P.........................................................................................................................424
19.1.16 REAL, R ...............................................................................................................................425
19.1.17 S5TIME, T5 ..........................................................................................................................425
19.1.18 STRING, S ...........................................................................................................................426
19.1.19 STRING[N], SN ....................................................................................................................426
19.1.20 STRUCT, ST ........................................................................................................................426
19.1.21 TIME, TI ...............................................................................................................................426
19.1.22 TIMER, TR ...........................................................................................................................426
19.1.23 TIME OF DAY, T ..................................................................................................................427
19.1.24 WORD, W ............................................................................................................................427
19.2 References...........................................................................................................................428
19.2.1 Synchronize AS-wide Interconnections................................................................................428
19.2.2 Example of reduction ratio and phase offset........................................................................428
19.2.3 Display of the runtime properties box...................................................................................429
19.2.4 "Properties - Block/Chart" dialog box, "General" tab............................................................429
19.2.5 "Properties - Block/Chart" dialog box, "I/Os" tab ..................................................................433
19.2.6 "Properties - Block/Chart" dialog box, "Type update settings" tab .......................................438
19.2.7 Enable Attribute....................................................................................................................439
19.2.8 Displaying tooltips using the cursor......................................................................................440
19.2.9 Searching for objects in the catalog .....................................................................................441
19.2.10 Phase offset .........................................................................................................................441
19.2.11 Signal processing with driver concept up to V5.2 ................................................................442
19.2.12 Reduction ratio .....................................................................................................................446
19.2.13 "Properties - Input/Output" dialog box ..................................................................................446
Index.........................................................................................................................................................451
CFC V9.0
Compared with the previous version V9.0, version V8.2 SP1 includes the following
enhancements or changes:
● Technological configuration:
For technological configuration, the Equipment Phase "EPH" is provided to enable control
of multiple lower-level equipment modules. The lower-level equipment modules (EM) are no
longer permanently assigned in this case, but instead requested at runtime, allocated and
then released again.
The equipment phase of the assignment partner is at the process control end when
interfacing to SIMATIC BATCH.
You can find additional information on this in the section "Basics of the equipment phase
(Page 295)".
CFC V8.2
Compared with the previous version V8.1 SP1, version V8.2 includes the following
enhancements or changes:
● Chart-based runtime group management for blocks of CFCs
For a CFC with activated chart-based runtime group management, the blocks are
automatically managed in separate runtime groups based on the chart, i.e. the blocks of the
CFC are organized in runtime units that are permanently assigned to this CFC.
When F-blocks are also used in this CFC, not only is a runtime group for blocks
automatically created in the "standard program", but a runtime group for the included F-
blocks as well.
You can find additional information on this in the section "Chart-based runtime group
management for blocks of CFCs (Page 192)".
● "Type update in RUN" for default value changes in the interface of blocks / block types
In the case of default value changes on the interface of a block/block type, this block can be
downloaded with the type update in RUN. It is no longer necessary to put the CPU in STOP
mode for this.
You can find additional information on this in the section "Type update with a CPU 410-5H
PA (Page 113)".
● The prompt for the password of the safety program for CFCs with fail-safe blocks has been
changed.
You can find additional information on this in the section "Special features of F-blocks in
CFCs (Page 102)".
See also
Selective download of individual charts (Page 374)
Operator control and monitoring (Page 170)
Overview of data exchange with COMOS (Page 328)
References at the parameters of a control variable (Page 241)
Configuring enumerations (Page 164)
Attributes of the objects of an equipment module (Page 288)
Operating principle
You work with graphic tools in the CFC editor: You drag-and-drop pre-configured blocks from
the pool of blocks to your chart. The chart is a kind of "drawing board". You interconnect the
block inputs and outputs via a mouse click. There is no need to consider details such as
algorithms or the assignment of machine resources, in other words, you can fully concentrate
on the technological aspects of your configuration.
The runtime properties of blocks are assigned default settings you can adapt individually. Since
individual blocks or groups of blocks can be copied or moved from chart to chart, you can save
a considerable amount of time. Interconnections between the blocks are retained.
After having created all functions, generate the executable machine code by means of mouse
click, download the code to the target system and debug it using the CFC debugger functions
provided for this purpose.
Target systems
CFC can be used to configure various target systems. Operations performed by the user when
working with CFC are identical to a great extent.
It is possible that parts of this help do not apply to the target systems that differ from SIMATIC.
This affects the description of the STEP7 and PCS 7-specific blocks in particular. In this case,
please read the Help for the superposed applications.
Note
MW0 cannot be used for operation with an S7-300 module, because it would be overwritten
each time a block with startup characteristics is called, for example, FC 70 (RESTART).
Pool of blocks
You can import blocks required in CFC from block libraries, the master data library or other
projects, or you can create your own blocks.
Note
CFC is "upwards compatible". Modification of programs using tools other than those of the CFC
editor will lead to inconsistencies.
Additional information
You can find brief instructions relating to the configuration steps required to create a project and
download it to the AS in the section: Getting started (Page 19)
STEP 7 components
The following STEP 7 components are important when working with CFC:
● SIMATIC Manager
The SIMATIC Manager is used as the central database and to coordinate the tools and
objects for all target systems. It manages tools and data and is used, for example, for
creating and modifying project structures (CPU, CFC charts) and for starting the CFC editor.
● STEP 7 tools
These tools are used to create the input data for CFC and I/O data which you can reference
from the CFC:
– LAD, STL, SCL
Programming languages used to create block types for S7. After you have created block
types in these languages, you can import them into CFC and configure them.
– Symbol table
The process signals and other shared addresses such as bit memories and data blocks
are assigned symbolic names and are entered in the symbol table of STEP 7. The CFC
can use these names.
● SFC (PCS 7)
Engineering tool used to create technological sequential control systems. With sequential
control systems, you can control functions in basic automation using operating and state
changes (these functions are normally configured with CFC).
%ORFNW\SHV &)&FKDUWV
%ORFNLQVWDQFHV 3DUDPHWHUV
&)&HGLWRU
&RPSLOH
*HQHUDWH
FRGH
3URJUDP
6&/VRXUFHV
/$'67/
&UHDWH ,QVWDQFH'%
VKDUHG'% SDUDPHWHUV
&RPSLOH
3URJUDP
6&/
/$'
67'
&UHDWH
EORFNW\S
6XVHUSURJUDP %ORFNOLEUDU\
/RDG
63/&
0DFKLQHFRGH
Functions as blocks
In CFC, you work with preconfigured blocks that execute a specific function. You insert these
function blocks in the chart, interconnect and configure them.
Note
The initial value at the output of the CFC blocks is "1", regardless of the values at the inputs.
This means the following logic is supplied with "1" as long as the block is not processed.
One useful aspect of this type instance concept is, for example, that subsequent local changes
to the block type can be automatically distributed to all block instances.
Block families
Blocks are assembled in groups (block families) according to their functional properties. Each
block is assigned a family identifier when it is created. The following blocks, for example, form
a family:
● Conversion blocks for adapting various data types
CONVERT (e.g., BO_BY, BY_DW, W_DW)
● Multiplexer blocks =
MULTIPLX (e.g., MUX8_R, MUXn_DI)
● Blocks with mathematical (floating point) functions
MATH_FP (e.g., SQRT, ADD_R)
The block family names are also used, for example, as a sort criterion in the CFC catalog.
Organization blocks
The interface between the CPU operating system and the user program is formed by tasks
known under S7 as organization blocks (OBs). These OBs are used to execute specific
program sections. For example, there are OBs for:
● CPU startup (cold restart, hot restart)
● Process alarms
● Cyclic interrupts with different time bases
Organization blocks or tasks do not represent blocks in the context of CFC; since they can
neither be inserted nor edited in CFC. In CFC, the OBs are displayed in a run sequence after
calling the runtime editor.
Additional differences
Blocks also differ in their type. When a block is created, it must be declared as a function block
(FB), function (FC) or basic operation (BOP).
● The FB has a memory function. Existing data can be accessed across several processing
cycles. Data access is enabled by creating a data block (DB) for each block instance. In a
complex block, however, the FB contains additional subsidiary FBs, but only one common
DB.
● The FC does not have a memory function. The values generated by the block are processed
directly. No data block is required here. Outputs of an FC are not assigned default values.
● The BOP does not have a memory function, the same as the FC. Its basic operations form
part of the CFC program and are entered as SCL statements during compilation and used
for basic functions such as AND and OR.
Note
In case of a warm restart of the CPU, the BOP inputs receive the last value of the pool DB.
Introduction
Automatic naming in this context refers to objects generated, copied or moved via SIMATIC
Manager and/or the CFC/runtime editor.
Creating
Each object in a project is automatically assigned a name at the time of its creation. This name
consists of the object type name and an appended counter. The counter is displayed in
brackets. Uniqueness of names within the namespace is taken into consideration here. This
applies to the following objects:
Objects Namespace
Hierarchy folder (THO) Project
OS area ID and picture name for OS Project
Charts (top charts and nested charts) Program
Examples:
Copying
The following applies when copying objects within or to other folders:
If the name is identical, the "Overwrite object" dialog box appears, with the options "Yes", "No"
or "Rename":
● If you select "Yes", the object is overwritten and the name is retained. This only makes
sense when copying data to another folder, since this would otherwise generate a zero
operation.
● If you select "No", the object is copied and an additional counter is appended without
delimiter.
When the (original) object is copied once again, the appended counter is incremented.
When you copy the copied version, an additional counter is appended.
Examples:
● If you select "Rename", another dialog box appears. Here you can enter a new name or
accept the default name automatically assigned in the input field.
Moving
The conventions for copying objects also apply when you move objects.
The response of objects described below differs to that of those described above:
Moving block instances
When you insert it in the chart, the block is automatically assigned a number as its name. This
naming is sequential. Each new block inserted as a copy or via drag-and-drop from the catalog
is assigned the next available higher number.
The following applies when you change the default name of this copied/moved block:
Identical names are appended a number (without brackets). If the name being modified already
ends in a number, this number is simply incremented.
Examples:
Block: 2 Copy → 3
Block: REG Copy → REG1
Block: REG1 Copy → REG2
Basic sequence
The loader determines the process objects (PO) and the serial number of the CPU and Memory
Card during the download. Aided by this number, a program is assigned to the CPU. A PO info
is created in the ES data management for each CPU that is downloaded and records identifiers
and the number of used PO licenses.
During the downloading process it is determined if and how many PO licenses for the current
CPU have already been used. The number of POs that were identified during the last download
is read from the PO info stored in the ES data management. The difference between the
currently determined number of POs is compared with the number of licenses available in
Automation License Manager (ALM). If the required POs are still covered by the license the
difference is booked in the ALM and the download is executed.
If the current program contains fewer POs than the one previously downloaded, the number of
available PO licenses is increased again through the download. If not enough licenses are
available, the license violation generates a corresponding message that must be confirmed
Now you may either terminate the download or continue just the same. The number of the
required but unavailable licenses are recorded as a shortage. If you have purchased additional
licenses, these missing licenses are included and registered in the ALM at the next download.
Licensing of the PO for the CPU 410-5H PA
The following additional properties apply to the licensing of POs for the CPU 410-5H PA:
● The number of POs is licensed by the hardware for the CPU 410-5H PA. It is not possible
to download a greater number of POs than is licensed by the hardware into the AS.
● For the CPU 410-5H PA, the number of process objects (POs) that are booked in the
Automation License Manager under the "AS RT PO" license are compared to the number
of POs that are loaded in the CPU.
If the number of booked licenses for POs in the Automation License Manager is lower than
the number of POs loaded in the CPU 410-5H PA, there is insufficient licensing. This
indication only applies if the CPU was loaded from this project and the POs were therefore
booked in this project.
The insufficient licensing is indicated by:
– An entry in the diagnostics buffer of the CPU
– Cyclic triggering of a corresponding message in SIMATIC WinCC.
The message is always triggered immediately during the loading operation for which
insufficient licensing is detected and when the difference changes due to the loading
operation. After this, the message appears approximately every 6 hours.
When the process objects are sufficiently licensed once again, for example due to the
purchase of additional licenses, this message no longer appears. No "OUTGOING"
message is generated.
● Retiring a CPU
If you no longer wish to use a CPU then you can retrieve its used POs. Use the Charts >
Booking Back Process Objects for selected chart folder.
A comparison with the PO info is made to verify whether the same CPU that was used during
the last download is connected.
If this is not the case then a corresponding message appears informing that the PO licenses
that were used during the last download can not be booked back by deleting the program in
the connected CPU. The process must be terminated here in order to repeat it after the
"correct" CPU is connected.
A security check is made to verify the pending deletion of the program after the correct CPU
is connected. The program is deleted after confirmation is made. The number of stored PO
licenses is booked back in the ALM. Afterwards, the PO info is initialized; in other words,
during the next download procedure, the program appears as if it were newly created.
The PO info remains unchanged if you were unable to book back the POs because, for
example, the license was no longer available. You can book back the POs at a later time
after the license is available again.
This function is terminated after a corresponding message appears if no CPU is connected
or the one that is connected is not accessible.
● Multiple use of a program in several CPUs
If the same program is downloaded to several CPUs then the number on the PO counter for
each downloaded CPU is reduced by the current number of POs.
After comparing the data of the PO info the loader determines that this program has already
been downloaded to a different CPU. A message is output which indicates that the number
of POs stored during the last download can no longer be booked back if this download
procedure continues. Here you can terminate the download process. Otherwise the PO info
is updated with the data from the CPU that is currently connected. The current number of
POs is determined and entered likewise in the PO info. This number is booked in the ALM.
This results in reducing the counter reading of licenses.
Notes on PO use
● Download to S7-PLCSIM and test CPU:
No PO count is carried out here.
● Deleting projects:
The CFC is not notified when you delete a project. Therefore you cannot book back any POs
either.
● Deleting chart folders or superimposed objects:
If you delete the chart folder, the S7 program, the CPU or the SIMATIC station, then this
order to delete is passed on to the CFC. In this case a warning message appears that allows
you to terminate the deletion process.
● Defective CPU:
A new CPU that replaces a defective CPU is recognized as the previous download
destination if the data stored in the PO info corresponds with the serial number of the CPU
or the memory card. It is assumed that the "correct" CPU is connected for older CPU
versions that do not allow a serial number query.
● CPU replacement in a high availability system:
In a high availability system, if the memory cards used do not permit a query of the serial
number and both CPUs are to be replaced, you should follow the procedure below.
To avoid an incorrect booking of the PO of this high availability system, the CPUs may only
be replaced one after the other. After the replacement of one CPU, the associated AS must
be loaded again. Only then may the second CPU be replaced and loaded.
You can find additional information on process objects (PO) unter: PCS 7 license information
(Page 29)
An S7 CPU will always continue to run in the event of number overflow/underflow or division by
0.
Reaction to such states can be determined via the block algorithm, by means of evaluation of
the status bit in the status word.
You can find more information in the LAD/STL/FBD online help, for example, help on STL,
statement list, floating-point functions, master recipe operations.
The response of library blocks is described in the corresponding "Troubleshooting" help topic.
Further processing
You can still process data created with CFC V3.x to CFC V7.x as follows in CFC V8.x:
● You can read and display the CFC data from previous versions with CFC V8.x.
● If you edit those data, the contents of each chart folder are converted at the first write access
following a prompt for confirmation. This ensures compatibility.
● When upgrading ES data from versions 5.x or 6.x to V8.x, note the following if attributes of
I/Os have been changed manually:
Note
Templates introduced in version 7.0 are also integrated in the project during the upgrade .
During this process, the attributes of I/Os are set to the values of the template, for example,
"S7_m_c" = "TRUE" is set to "FALSE" when upgrading to the value of the template.
Therefore, if attributes of the I/Os have been changed manually in the original version, you
need to check these attributes after the upgrade and adjust them if necessary.
Introduction
As of version V5.0, you can convert blocks previously stored in the CFC library to basic
operations (BOPs).
The new BOPs are shown in the list "Blocks as BOPs" below.
You can achieve the following goals by using the basic operations:
● You improve CPU runtime.
● You require fewer DB numbers.
Projects created with CFC versions < V5.0 (old projects) are not modified automatically when
you convert them to V7.x, since this would effect changes in the S7 program on the CPU.
Note
The "CFC Library" no longer contains the blocks now available as basic operations.
Migration
If you want to migrate old projects without modifying your existing program, proceed as follows:
1. Create a new S7 project program, including a chart folder and a CFC chart.
2. Copy the symbol table to the new S7 program.
3. Delete all blocks that are now shown as BOPs in the symbol table (you can find information
on this in the “Blocks as BOPs” list below).
4. Double-click the chart icon.
The CFC chart opens.
5. Use the menu command Options > Customize > Compile/Download… to open the “Settings
for Compilation/Download” dialog box.
6. Set the number ranges according to the previous ranges and
click "OK".
The dialog box closes.
7. Use the menu command Options > Customize > Copy/Move… to open the “Settings for
Copying/Moving” dialog box.
8. In "Connections to Addresses", select the option "Include" and
click "OK".
The dialog box closes.
9. Close and delete the newly created CFC chart.
10.Select all charts – not the chart folder! - of the old project and
copy them to the new chart folder.
11.If your project contains user-specific blocks whose DBs are in the area reserved for other
applications, copy them to the block folder manually.
12.Assign the oldS7 program name to the newS7 program.
13.Cut the new S7 program and
paste it over the CPU of the old program.
The new S7 program replaces the old S7 program.
14.Select the chart folder and then
select the menu command Edit > Compile to recompile the program.
Result
The project has been converted to the new BOPs.
Exceptions
If you follow these steps the project will remain unchanged. Exceptions:
● Interconnections to runtime groups will be lost and must be redefined.
● The DB number assignment changes. When necessary, the AS-OS connection data must
be transferred again ("Compile OS").
Blocks as BOPs
The CFC contains the blocks below as BOPs:
Introduction
Projects created with older CFC versions (< V6.0) can be easily migrated to the enhanced
runtime model, which is available with CFC version V6.0 and higher, in the course of a
migration.
Note
Migration is initiated after the user’s first write access and prompt confirmation.
Procedure
1. Runtime editor: Create a runtime group in a cyclic task for each chart in your project.
2. Assign the runtime group the name of the corresponding chart.
3. In the run sequence, move the blocks of each chart to the corresponding runtime group.
4. CFC Editor: Set the local installation pointer for each chart (block installation pointer). Do so
by selecting a block at which you want to append all further blocks and select the shortcut
menu command Predecessor for Insertion Position.
5. Runtime editor: Set the global installation pointer for the program (chart installation pointer).
Do so by selecting a runtime group after which the runtime group of the next chart is to be
inserted.
Background: The "old" installation pointer previously used to refer to the “predecessor for
insertion position" was transferred to the chart installation pointer during migration. It may,
therefore, point to a task or runtime group that is not intended for the insertion of additional
runtime groups (charts).
Any SFC control block (SFC_CTRL) which exists in the project is deleted and replaced by the
external view of the corresponding SFC chart when you migrate ES data from V5.x > V6.x or
V7.x. The parameters and block interconnections of SFC_CTRL are activated in the external
view.
Runtime response is not altered. The control block will be deleted from the run sequence and
the SFC chart takes over its function.
Introduction
Multiuser engineering of projects or multiprojects is basically possible. This setup allows you to
configure, test and commission target systems from different remote locations or from a PC
network (multiuser engineering).
Basic options
● PCs are networked
The project is located on the server or on a released drive of the PC and several users are
able to simultaneously configure specific parts of the project.
Detailed information pertaining to multi-user engineering and to consequences is available
at: "Configuring in the network (Page 43)"
● PCs not connected to a network
The project is split into several segments to be edited separately. and is subsequently
merged to form a master project, for example, via a diskette or a ZIP drive.
● Projects in a multiproject
The projects of a multiproject are stored on a central computer and can be split for
distributed editing. The projects required for editing specific stations are transferred to the
workstation of the respective author. Several projects can therefore be present on one
workstation at the same time.
After the project has been edited and returned to the multiproject, the system must
synchronize all interproject data by means of the menu command File > Multiproject > Align
Projects and perform all interproject functions required, for example, compile OS. Always
execute this function when you prepare the multiproject for commissioning.
● Branching and merging project data
As of CFC V6.0 you can branch the charts of an S7 program to form multiple working
projects. The new concept of the V6.0 runtime model supports the branching and merging
of individual project charts as well as the structuring of the run sequence by chart. You can
find more information in:
– Concept and use of installation pointers (Page 179)
– Textual interconnections in branched and merged project data (Page 153)
NOTICE
Security information on configuration in the network
When performing configuration in the network, make sure that the central server or a shared
drive is accessible only to authorized persons.
This should be ensured not only by measures on the level of the operating system and PC
network.
You can find information about access protection in PCS 7 in the section "Protecting projects/
libraries with access protection" of the Process Control System PCS 7; Engineering System
documentation.
Note
You can find more information about the engineering station on a central server in the section
"Configuration in the network" of the Process Control System PCS 7; Engineering System
documentation.
The notification is enabled by default, but it can also be disabled. To do this, select the project
in SIMATIC Manager and then select the menu command Options > Charts > Notice when
opening charts....
Action Priority
Short read actions 3
Short write actions 2
Prolonged read action 1
Prolonged write action 1
The first action started is executed if users initiate several actions which are assigned the same
priority class.
● Short read actions (without resource usage) are:
– Open chart
– Open run sequence
– Open dialog box
When other short read actions are performed at the same time in addition, no adverse effect
should be expected.
Short or long write actions executed in parallel may lead to access conflicts, that is, the short
read action is canceled.
● Short write actions (without resource usage) are:
– Instancing, parameter assignment, interconnection etc.
– Closing dialog boxes with OK
When a short or long write action is performed at the same time in addition, access conflict
may occur for the action latest started.
Notes on procedures
● It is advisable to update the data at specific cyclic intervals (F5 function) if several authors
are working on the same project. These updates ensure that all users work on an identical
and consistent project database.
● It is not advisable to have several authors running long read or write actions in parallel. The
authors should preferably coordinate their action schedules. It is hardly feasible to tolerate
a situation in which one author is editing an SFC type, while a second author is setting out
to compile the program, for example. The authors are responsible for coordinating
simultaneous actions and for assessing the feasibility of such actions. Only one author is
allowed to carry out prolonged actions at any chart folder. It is therefore advisable only to
start engineering which involves prolonged actions if the database is consistent.
● Only one worker has access the data of an OS at any one time. The WinCC Explorer
prevents access to the OS by more than one worker.
Note
A separate file save function is not available, since the CFC editor saves all file changes
immediately. Note that you cannot undo or cancel changes in the CFC editor by closing the
editor without saving.
You should always back up all data by copying the entire program to a backup project, You can
then revert to old versions at any time. This also allows you to archive your complete
configuration.
Closing CFC
Proceed as follows to close the CFC editor:
In CFC, select the menu command Chart > Exit.
The CFC Editor closes.
or
● Select the menu command View > Catalog.
or
● Use the <Ctrl+K >key shortcut.
Block catalog
Chart catalog
Template catalog
Library catalog
If the project contains unplaced blocks, the catalog of unplaced blocks is also shown. This
catalog is not available as by default.
Object search
Information on the search is available in the paragraph below "Options available in the lower
part of the window".
You can find imported blocks in one of the block families . A block that is not assigned to a
family (indicated in the header) is found in the "Other blocks" folder. These blocks appear as
.
In the "All blocks" folder, you can find all blocks of all block families (including "Other
blocks"), sorted in alphabetical order. All imported blocks are therefore displayed twice, but in
a different sorting order.
Note
Inserting blocks from the block families or from "All blocks" is the fastest way of inserting blocks
in your chart, because no previous check is performed. You should therefore always use the
imported blocks of the corresponding family.
You can also insert an empty text field into your chart using the "New Text" icon located
above the block families, for example, when you want to enter a comment or notes on the
configuration either via drag-and-drop or by selecting and applying with <Return>.
With the "New chart" icon displayed above the block families, you can insert a nested chart
using drag-and-drop or by selecting and entering it with the <Return> key.
To open help on a block and the "New Text" or "New Chart" function, select the object and press
the <F1> key to display the help topic.
Chart catalog
The chart layout in the catalog window can differ, depending on the settings made on the
"Catalog" tab of the "Customize Layout" dialog box. You reach the area for these settings with
the menu command Options > Customize > Layout.
● When the "Select active chart" check box is selected, the chart symbol of the active chart
is displayed as an open folder . The corresponding hierarchy branch is also opened if the
active chart is nested. If the chart is not shown in the visible area of the catalog window after
it is activated, the window is scrolled until the selected chart appears. When you close the
hierarchy branch or move the visible area of the window, the selected chart is longer visible
unless you activate it again, for example, by toggling the chart once.
● When the "Show with plant hierarchy" check box is selected in this dialog box, the charts are
displayed with their plant hierarchy, in other words, with the hierarchy folders, provided the
charts exist in a plant hierarchy.
Note
The catalog shows no entry if the "Show with plant hierarchy" check box is selected,
although there is no plant hierarchy.
● If a plant hierarchy does not exist and the "Show catalog with plant hierarchy" check box is
not selected, the charts are displayed in alphabetical order (as a tree).
● The + character in the box indicates charts that contain nested charts. Click this box to
expand this tree level and displays the hierarchy of the chart.
Note:
The base chart is the chart displayed in the SIMATIC Manager . The nested charts
contained within it are not displayed in the SIMATIC Manager .
You can select and drag-and-drop a CFC chart to your chart. The layout of the inserted chart
is similar to that of a block. When this involves a chart with chart I/Os, the I/Os are also
displayed. The representation of the chart also differs from that of a block by its chart icon:
When you insert the chart, it is copied to the chart folder along with any nested charts.
You can also hold down the shift key and drag-and-drop top charts to the chart. In this case,
they are not copied but moved. The chart is now no longer at the previous location in the
catalog. It is displayed in the hierarchy of the current chart.
You can also open charts directly in the catalog window. Select the required chart and then
select the shortcut menu command Open Chart.
Template catalog
The base data library, lower-level PH folders and control module types are displayed
hierarchically in the catalog.
You can move the control module types with drag-and-drop into the editor for technological
connections.
Library catalog
Available block libraries are displayed in the catalog window by the icon . They represent a
collection of additional block libraries, shown as block folders . The block types they contain
are displayed as .
Click the plus box to open the libraries, select a block and drag-and-drop it into the chart. The
block is automatically copied to the active S7 program and imported into CFC. It then also
appears in the block catalog in a family of CFC blocks and in "All blocks".
The blocks are shown twice in the catalog but with different sorting:
● According to family (for example, FMT_PID in CONTROL)
and
● In alphabetical order in the "All blocks" folder
The blocks are displayed with:
● Block name (for example, CTRL_PID)
● Block number (for example, FB 61)
● Block comment (for example, PID Control)
● Icon comment (if available)
If you require help on a block, you can select it and then display the associated help topic with
the <F1> key.
Note
This catalog is only available if unplaced blocks actually exist.
Here you can select unplaced blocks and reinsert them in your CFC chart.
Unplaced blocks are arranged in the CFC charts in which they were originally placed. You can
select a block and drag-and-drop it to the chart.
The search starts at the object selected in the active catalog window. The search is
performed through all folders until the specified object is found or until the search cycle
reaches the selected object again.
In the catalog of charts, you can perform a search for a chart, for example, for a nested chart.
If the search result is positive, the function expands the tree level and highlights the selected
chart.
You will find detailed information on this topic in the section "Searching for objects in the
catalog (Page 441)".
● Closing a folder
If you want to close all folders, click the following button:
8.2.4 Toolbar
The toolbar is located below the menu bar. It contains a series of icons that start frequently
required menu bar functions, including a drop-down list for the selection of sheets/overview.
You can see what function the button is associated with by positioning the cursor over the icon,
but not clicking. A small box appears on the screen, displaying the designation (tooltip) of the
function. More detailed information on the function is displayed in the status bar.
Clicking the button triggers the function. Disabled buttons are grayed out.
Introduction
You can select any menu command via a corresponding shortcut using the <Alt> key.
Shortcut keys
Press the following keys in the order shown:
● <Alt> key
● The underlined letter in the name of the required menu (for example, <Alt>+<C> for the
"Chart" menu - if the "Chart" menu is included in the menu bar). The menu opens.
● The underlined letter in the name of the required menu command (for example, <N> for the
menu command "New").
Any submenus of this menu command will also be opened. Repeat the actions described
above until you have selected the menu command required.
The menu command is executed after you have entered the last letter of the shortcut key.
Examples
Overview
You can navigate in the CFC chart using the following keys:
● Chart window
● Interconnections
● Catalog window:
Additional information
You can find additional information in the section: International/German keyboard (Page 63)
Additional information
You can find additional information in the section: International/German keyboard (Page 63)
Additional information
You can find additional information in the section: International/German keyboard (Page 63)
Key commands
You select text using the following keys:
Additional information
You can find additional information in the section: International/German keyboard (Page 63)
Introduction
The next section lists the shortcut keys experienced users can deploy instead of the menu
commands in order to accelerate access to specific functions.
Overview
The mouse offers the following functions:
Note
Note that you can also right-click for the corresponding shortcut menu commands, for example,
“Jump from Sheet Bar” or “Go to I/O Module”, for the elements described above. You can find
additional information on this in the following section: Shortcut menu (Page 54)
The chart represents the basic working unit of the CFC editor. Each chart has a name that is
unique within a CPU. Each chart consists of up to 26 chart partitions (Page 66) each with
6 sheets (Page 67).
You can create charts either in the SIMATIC Manager or directly in the CFC editor.
You can insert additional charts into a chart. This can result in a nested chart with a nesting
depth of up to eight charts. You can insert existing charts from the chart catalog or new charts
from the block catalog using drag-and-drop or with the menu command Insert > New Chart.
You can change the size of a CFC chart. You can increase the size of the chart by adding a
maximum of 26 chart partitions (A to Z). You can decide whether to insert the new chart partition
at the start or at the end of the current chart partition. Each chart partition consists of 6 sheets
(Page 67).
At the bottom edge of the window you can select the chart partition you want to edit via the tab
in the scroll bar. The status bar displays the letter of the currently active chart partition, including
the sheet number, for example, "A/Sheet 2".
9.3 Sheets
Each chart (Page 65) (partition) consists of 6 sheets. In the CFC editor they are arranged in
2 columns, each containing 3 sheets. A sheet consists of a central work area and sheet bars
with the sheet and chart references. In the work area, you can position and interconnect
blocks.
Each sheet contains an internal grid pattern. Blocks can be moved in the sheet by distances
determined by the grid pattern. This grid pattern determines the smallest possible distance
between two connection lines.
The toolbar contains a drop-down list from where you can select the sheet you want to
edit. The status bar displays the current sheet number as follows: it includes the identifier
(letters) of the chart partition, separated by a slash, for example, “A/Sheet 2”.
You can find additional information in the section: Display of interconnections in sheet bars
(Page 79)
If so many interconnections between sheets are generated that there is insufficient space in the
sheet bar for all the entries, an overflow page is created automatically. The overflow page
represents an extension of the sheet bars and contains no additional objects.
A CFC chart can be inserted into another CFC chart (chart-in-chart technique). This allows the
creation of hierarchy structures. Each nested chart can be opened and modified individually,
the same as any other chart. The objects are placed on the work areas of the sheets.
A chart can be encapsulated for further use, in other words, it is assigned chart I/Os. You can
individually determine which block I/Os are made available to the chart I/Os.
Nested charts are displayed in the chart as graphic objects, similar to blocks. The chart symbol
is displayed in the chart header. Also included are the chart name and comments (if any
comments exist).
You can also generate nested charts without chart I/Os. In this case, only the header and the
empty body are displayed.
9.6 Blocks
Overview
Blocks are displayed in the chart as graphic objects. The objects are placed on the work areas
of the sheets. Each block occupies a specific area. If blocks are positioned so that they partly
or fully overlap other objects or the sheet bar, they are displayed in their normal size but without
block I/Os and in another color.
The color for the display of overlapping blocks can be set in the "Color settings" dialog with the
"Overlapping blocks" option.
Blocks can also be positioned across the horizontal line dividing two sheets. In this case,
immediately below the dividing line, an additional block header is inserted that represents a
copy of the first header. This allows blocks to be positioned that would not otherwise fit on one
sheet.
The blocks are displayed in the chart with block I/Os that are identified at the block type as
"visible" (S7_visible: = TRUE). In the object properties dialog of the block you can specify
whether to show or hide the block I/Os.
Restriction: Due to space requirements, the chart can display no more than 160 inputs and 160
outputs of a block.
If the limit of 160 is exceeded, all other I/Os are hidden automatically. You can hide individual
I/Os in the object properties of the block or the I/O.
If you hide an interconnected I/O, the CFC responds as follows:
● For interconnections within a sheet, the interconnection of the connection partner is laid to
the sheet bar. The text "INVISIBLE" is entered after the I/O name.
● For interconnections that go across sheets, the sheet bar entry is labeled with the text
"INVISIBLE" following the I/O name.
● For textual interconnections and interconnections with shared addresses, to runtime groups
and to the interface (chart I/Os), no sheet bar entry is generated. These interconnections
can only be recognized in the object properties of the block, "Interconnection" column of the
"I/O" tab.
● A colored triangle appears in the top right corner of the block header. (See item 6 in the
figure below)
%
No. in fig‐ Status Status indicated by: Option of the "Color set‐
ure tings" dialog box
(1) I/Os with values that Font color of the configured "Parameter text (changed)"
have been configured by value/text in the block icon
the user ("blue" here, for
example).
(2) I/Os that have been as‐ Font color of the configured "Parameter text (default)"
signed the default value value/text in the block icon
("light gray" here, for ex‐
ample).
(3) I/Os that have changed Font color of the I/O name "Block insertion position/
since they were last in the block icon parameter (changed)"
downloaded to the CPU
due to interconnection or
configuration (here
"red", for example).
You can find additional information on this in the section "How to set I/O parameters
(Page 134)".
You can set the width of blocks using the menu command Options > Customize > Block/Sheet
Bar Width.... The settings apply to the chart folder that contains the active chart.
The settings are saved to the registry (CurrentUser) as a default, which you can use when you
create a new chart folder. Each user can therefore define an individual logon setting.
"Narrow" representation of a block
The "narrow" representation of a block is similar to that of a block header of a "wide" block, but
it includes the inputs and outputs.
The "narrow" block is displayed without fields or I/O names for the inputs and outputs and
without a free area in the body. The I/Os are only represented by the I/O pin. The block width
cannot be changed.
See also
Interconnections (Page 75)
9.7 Texts
Use the text field to enter a chart comment. You can position a text field in the chart just like
blocks.
Drag-and-drop the text field "New Text" from the block catalog to the chart or insert it using
the menu command Insert > New Text at a free location in the chart. You then open the selected
text field by clicking on it. The text cursor is active and you can begin editing immediately. A line
break is added automatically at the right edge of the box. If you enter more text than can be
displayed in the box, the size of the box is not increased automatically; instead the text moves
out of the visible area. You can make the entire text visible by increasing the size of the box
manually.
To change the size of a box, click the box handles and drag with the mouse until the required
size is reached. If you change the width of the box, the length of the text lines is automatically
adapted.
When you open a text field, the text cursor is positioned where you clicked.
9.8 Interconnections
Overview
An interconnection is the connection between the following elements:
● A block/chart output to one or more inputs of another or the same block/chart or to the input
of a chart I/O.
The data types of the input and output must be compatible.
Interconnected blocks or charts can be located in the same sheet, different sheets of the
same chart or in different charts on the same CPU.
● A block output to a runtime group
● A block I/O to a chart I/O within one chart
● A block output to objects outside the CFC data management, for example, to shared
addresses.
Another interconnection option is the textual interconnection. This represents a path reference
to an interconnection partner that does not exist in the current chart folder.
You can find more information on this in section "Working with textual interconnections
(Page 149)".
Color representation of a block or chart I/O after creating an interconnection
If a block or chart I/O has been changed, for example, due to configuration or interconnection,
this status is indicated by a colored representation of this I/O.
You can find additional information on this in the section "Blocks (Page 70)".
Note
Each interconnectable input or output of a block is displayed with an I/O pin in the chart. Inputs
that cannot be interconnected because they have been assigned the "S7_link := false" attribute
can be identified by the missing I/O pin.
"Not interconnectable" in this context refers to an input you can neither interconnect to the I/O
of a block or nested chart, nor to shared addresses. Textual interconnections are also
impossible.
It is possible, however, to interconnect this I/O to its internal chart I/O, provided the CFC
contains chart I/Os.
Introduction
This section describes the following options when displaying interconnections:
● Block/chart interconnections
● Interconnections to shared addresses, runtime groups, chart I/Os, and textual
interconnections
● Connectors
● Color display of interconnections
● Status display for dead time in signal processing of an interconnection
Block/chart interconnections
Layout of block/chart interconnections:
● When the blocks and/or charts to be interconnected are located in the same sheet, a
connection line will be drawn. Reference entries will be generated automatically in the sheet
bar if the objects are not located in the same sheet. Those references contain the identifier
of the corresponding target I/O.
● Branches will be generated for a block/chart output that is interconnected to more than one
input. A branch is indicated by a dot.
● On some target systems the interconnected binary inputs may have been inverted. This
inversion is indicated by a dot.
Note
● Interconnections to a hidden I/O are laid to the sheet bar.
● A block with a hidden interconnection is indicated by a colored triangle in the top right corner
of the block header.
Interconnections to shared addresses, runtime groups, chart I/Os, and textual interconnections
Sheet bar entries will be generated for interconnections to shared addresses, runtime groups
or chart I/Os and for textual interconnections.
Note
If the interconnection begins at an I/O that has been subsequently hidden, there is no sheet bar
entry. The interconnection can then only be made in the object properties of the block/chart,
"Interconnection" column of the "I/O" tab.
Connectors
If no additional line can be drawn due to lack of sheet space, CFC will insert a connector at the
block/chart I/O and enter a number in the sheet bar. The corresponding connectors will be
assigned the same reference number. Multiple output interconnections that cannot be
displayed will be assigned the same reference number. The differences in the layout of the
connectors indicates the position of the I/O point:
Rectangle with point, white inner area I/O point in the sheet
Rectangle filled with the color of the con‐ I/O point in the overflow page
nection line
Rectangle with point, filled with the color I/O point in the sheet and in the overflow page
of the connection line
If so many interconnections between sheets are generated that there is insufficient space in the
sheet bar for all the entries, an overflow page is created automatically. The overflow page
represents an extension of the sheet bars and contains no additional objects.
If an output contains multiple interconnections, some of the interconnections may only be
displayed as a line. In such an event, a connector is attached to the line.
Using this connector technique, you can always display the full CFC structure, regardless of its
complexity.
Layout
There is a sheet bar at the right and left margin of each sheet. The entries they contain are
displayed in the sheet view.
The large sheet bar field has a variable width. You can set a width from 2 to 50 characters by
selecting the Options > Customize > Block/Sheet Bar Width menu command in the dialog box.
The settings apply to the entire chart folder.
A sheet bar entry is always generated when there is an interconnection to an object that is not
located within the active sheet. The entry consists of two fields, each with two lines. The type
of connection determines the field content.
Large field
The large field contains the reference to the linked object:
● Interconnection between blocks:
Line 1: Chart name*), block name *)
Line 2: I/O name and, if available, comment of the I/O (may be abbreviated)
The chart partition and sheet number are given in parentheses after the chart name for
sheet-wide interconnections.
The technological path or, when the PH is not available, the component path is given for an
interconnection to an I/O located in another CPU.
● Interconnection to shared addresses:
Line 1: Symbol and/or absolute address value based on symbol table **)
Line 2: Comment from symbol table **)
● Interconnection to a runtime group:
Line 1: Name and, if available, comment for the runtime group
Line 2: "ENABLE", task name
● Interconnection to unplaced block
Line 1: Block name and text: (NO POSITION)
2. I/O name and, if available, comment of the I/O
● Interconnection of I/Os (block/chart) to chart I/Os
Line 1: I/O name and, if available, comment
Line 2: I/O type and data type
● Interconnection to hidden I/O
Line 1: Chart name*), block name *)
Line 2: I/O name and text: (INVISIBLE) and, if available, comment of the input/output (may
be abbreviated)
*) If the chart is used in a plant hierarchy (PCS 7), the chart and block names are preceded by the
hierarchy path name. The start of the path name is truncated if there is not enough space.
**) The symbol table is not available in all target systems.
Note
Depending on the set sheet bar width, it may happen that the full text cannot be displayed, i.e.,
it will be truncated according to the default number of characters. However, the tooltip box will
show you the full text when you position the cursor on the field.
Small field
The small field of the sheet bar entry is used as follows:
● The field contains the number of the connector reference when the connection line cannot
be drawn to the sheet bar due to the lack of sheet space.
● A colored triangle indicates the connection type.
ID Interconnected to ...
(empty) Block I/O / chart I/O (external)
White triangle Chart I/O (internal)
Blue triangle Shared addresses
Red triangle Runtime group
Yellow triangle Textual interconnection
Green triangle Connection to another CPU
9.11 Tooltips
You can display a tooltip about certain parts of the CFC chart by positioning the cursor over the
relevant items:
9.12 Views
Views
The CFC editor provides two different views for inserting and editing blocks/nested charts:
● The overview is useful for copying/moving objects and inserting large blocks.
● Because some details (I/O names, for example) cannot be displayed in this view, certain
functions are only available in the sheet view.
You can find additional information about this in the following sections:
– Overview (Page 82)
– Sheet view (Page 83)
Overview
Sheet view
or
● Double-click a free location in the chart
or
● Select the sheet number in the combo box to open the required sheet view or the
asterisk (*) to change to the overview.
9.12.2 Overview
or
● Double-click a free point in the chart in the sheet view
or
● Select the asterisk (*) in the combo box .
Sheet view
Depending on the resolution of your screen and the display size you have set, the sheet view
displays the full sheet or only parts of it. Use the scroll bars to scroll the display.
or
● Select the required sheet number in the combo box of the toolbar
or
● Double-click a free area of the chart in the overview
or
● Select the sheet number in the combo box .
Requirement
In the SIMATIC Manager , you have created a project with an S7 program including a chart
folder.
Creating a chart
You usually create a chart with the SIMATIC Manager . Proceed as follows:
1. Open a chart folder in the project.
2. Select the menu command Insert > S7 Software > CFC.
The chart is inserted and assigned a default name by the system that you can change to suit
your purposes.
You can find additional information on this in the following section: Automatic naming
(Page 27)
You can also create a chart directly in the CFC editor. Proceed as follows:
1. In the CFC editor, select the menu command Chart > New….
2. In the dialog box, select the project and the chart folder.
3. Under "Object name:" enter the name of the new chart.
The maximum length of the chart name is 22 characters (illegal characters: \ / . " %).
4. Click "OK".
The dialog box closes.
Result
The chart has been created.
This interdependence ensures that the name of the runtime group is identical to the chart name
and that it is automatically renamed when the chart is renamed. Furthermore, the runtime group
is also deleted when the chart is deleted if it is empty as a result.
When this interdependence disappears due to modifications to the runtime group, the
automatically generated runtime group responds in the same way as any other manually
inserted runtime group.
Nested chart
You generate a nested chart when you insert a new chart into an existing chart. You can find
additional information in the section: Creating nested charts (Page 95)
Deleting a chart
You can delete a chart similar to other objects in the SIMATIC Manager :
● Select the chart and press <Del>.
Procedure
You usually open a chart in the SIMATIC Manager:
1. First, select a project. Secondly, select the S7 program folder and open the chart folder.
2. Double-click the required chart.
The chart opens and the CFC editor started.
2. In the dialog box, select the project and the S7 program folder.
3. Open the chart folder.
4. Double-click on the required chart
or
select the required chart and click on the "OK" button.
The chart opens.
You can select a chart in the chart catalog and open it with the shortcut menu command Open
or by pressing <Return>. The chart opens.
In addition to opening nested charts in the chart catalog, you can also open them as follows:
● Select the nested chart, then select the Open menu command, in either the "Edit" menu or
the shortcut menu.
● A double-click on a free area in the body (not on the header or an I/O!) also opens the chart.
By repeating this, you can work down to the lowest chart level in the tree.
From a nested chart you can open the parent chart of the current nested chart:
● Select the menu command Open Parent Chart from the "Chart" menu or shortcut menu. The
parent chart opens at the position of the nested chart. The nested chart is highlighted.
Introduction
Several functions help you browse the chart. The following options are available:
● Menu command Edit > Go To > ....
● Double-clicking
● buttons and combo boxes on the toolbar
Toolbar Icons
You can change to the respective view using the icons.
● Overview
● Sheet view
Double-click
Double-clicking on a free area changes the view. You change from the overview to the sheet
view and vice versa.
When you change to the sheet view, the position of the cursor determines the center of
alignment for the view.
Go To
The menu command Edit > Go To > opens a submenu which provides the following navigation
options:
● Insert Position
This function starts the runtime editor and displays the block selected in the chart in the run
sequence.
This menu command will be disabled if more than one block or no block is selected in the
chart.
● Next Insert Position
Use this function to find further insertion positions for the selected block in the run sequence.
This menu command is only enabled after you have started the runtime editor and when a
block/SFC chart has been selected in the run sequence.
● Chart
Use this function to open the chart that contains the selected block. This block will be
highlighted in the open chart.
This menu command is only enabled after you have started the runtime editor and when a
block/SFC chart has been selected in the run sequence.
● Track Signal
You can use this function to track the signal of a selected chart I/O of a nested chart to the
I/O which is internally interconnected to the I/O of this chart. Signal tracking means that the
nested chart will be opened and the displayed interconnection and sheet bar entry will flash.
This menu command is only enabled if you have selected a chart I/O that is internally
interconnected with a block/chart I/O.
● I/O Module
After you have selected the field of a shared address from the sheet bar, use this function
to call "HW Config". An error message will be output to you if the entry does not refer to a
module or if the address could not be found.
● Block Type
Use this command to jump from the selected block instance to the corresponding block type.
If the source file of the block is included in the project, the relevant programming tool (LAD/
STL/FBD or SCL) is opened. You can use this programming tool to edit the block type.
Otherwise, LAD/STL/FBD is opened, enabling you to read the block (for example, the
system attributes of the I/Os).
● Jump Back
With this function, you return to the sheet you exited by clicking the sheet bar.
This menu command is only enabled if the window displaying the original chart is still open.
● Next Overflow Page
This function lets you jump from the current overflow page or from the original sheet to the
next overflow page.
This menu command is only enabled if an overflow page exists.
Signal tracking
Proceed as follows to track signals:
Signal tracking from within a nested chart
1. Within the nested chart, position the cursor on the sheet bar entry.
2. Select the shortcut menu command Jump from Sheet Bar.
The higher-level chart is opened and the interconnection flashes.
Signal tracking into a nested chart
You can find information on this in the above section “Go To” under “Track Signal”.
Signal tracking at the overview level
Click an interconnection.
All the interconnection lines associated with a chart partition flash on the following pages:
● Overview page
● All six sheets
● All overflow pages
Introduction
Copying entire charts allows you to duplicate or move tested structures or substructures, even
to other CPUs.
Copying/moving
Including resources in the copy
When you copy/move charts, the resources will also be copied, provided they do not already
exist in the destination. The following elements are resources:
● Block types, FBs and FCs, including symbols
● System attributes
● Called blocks of multiple instance blocks
Textual interconnections
When you copy/move a chart to another chart folder, interconnections that exceed the chart
boundaries are implemented as textual interconnections. These open textual interconnections
can be closed again. They then form real block interconnections, provided you copy/move the
chart and the interconnection partner to this chart folder, or once you have copied/moved the
corresponding chart back to its original folder.
This includes textual interconnections of the chart you want to copy/move.
Peculiarities of nested charts: When you move or copy nested charts, the internal
interconnections to the chart I/Os are not converted to textual interconnections, that is, they will
be lost.
You can find additional information in the section: Working with textual interconnections
(Page 149)
Shared addresses
When copying charts, remember that interconnections to shared addresses are also copied,
depending on the default setting. You can change this setting in the "Settings for Copying/
Moving" dialog box. You can open this dialog box with the menu command Options >
Customize > Copy/Move....
Runtime groups
When copying/moving charts, interconnections to runtime groups are not copied. No textual
interconnections are generated.
System attributes
When charts are copied or moved, the system attributes of the copied/moved blocks are
compared to existing blocks in the destination. You may abort the copying/moving operation
based on the results of the comparison. The causes of this are described in the following
section: What you should know about copying blocks (Page 128) (under "Checking the system
attributes").
● Project path
● Technological path
● Storage location of project
You cannot change the path displayed in this dialog box. You can only do this from the
SIMATIC Manager. The technological path is only available if a plant hierarchy has been
configured in the project and a hierarchy folder has been assigned to the CFC chart.
● Author
The author of the chart.
● Date created
Date of creation
● Last modified
Date of most recent modification If a chart has been modified, the date of most recent
modification applies to all other charts in the same chart folder because there may be
interconnections from one chart to another. Only one global "last modified" date is,
therefore, applied to the chart folders.
● Comment
Here, you can enter a comment that is included on your printed CFC chart.
● "Write-protected" option
Use this option to enable or disable write protection for a chart. You cannot edit the write-
protected CFC chart in the CFC editor. Because of the write protection, you can no longer
alter any SFC instances in the chart using the SFC editor.
Version:
Major and minor versions can be set separately with the arrow keys. Version change is
deactivated for write-protected charts.
You can set the 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.
If versioning is activated in the properties of the project, the dialog box automatically opens with
the "Version" tab when the chart is closed after a change.
Data version:
Displays the software version used to create or last modify the program. The data version
depends on the product version. The data version is determined by the database and displays
the current status of the data structure.
Introduction
You can always expand the CFC chart by additional chart partitions, if its size is insufficient. The
tab level with the bottom scroll bar can be used to select the chart partition required.
Insert
When you insert a chart partition, you can decide whether the new chart partition is inserted
before the current chart partition or whether it should be appended as the last chart partition.
You have two options:
Before the current chart partition:
● Select the menu command Insert > Chart Partition > Before Active Partition
or
open the shortcut menu of the chart partition tab and select the Insert Before Active Partition
menu command.
B/Sheet 3 B/Overview
Delete
You can only delete the current chart partition.
● Select the menu command Edit > Delete Chart Partition or, in the shortcut menu for the chart
partition tab, select the menu command Delete Chart Partition.
The current chart partition is deleted if it is empty. If the chart partition contains any objects,
you are prompted to confirm deletion.
Introduction
You can insert a CFC chart into another CFC chart. This allows you to develop a program
whose modular segments can be standardized for reuse, with a structure according to your
system requirements.
You can open and modify the (nested) charts inserted in the parent chart in edit mode and you
can operate and monitor them in test mode on the CPU.
The chart containing the nested charts is the top chart. Only the top chart can be seen in the
SIMATIC Manager . The maximum nesting depth of nested charts is 8 (top chart + 7 levels of
nested charts).
Chart-in-chart
You can drag-and-drop a new nested chart from the CFC catalog of blocks (symbol: New
chart) to the current chart for further editing. Execute the menu command Insert > New Chart in
order to find a free location in the chart (in the sheet view only in the current sheet) and insert
the new chart at this position. The search for this free area is performed horizontally, line by line,
from left to right, and from top to bottom (in the overview of all sheets).
In order to handle charts in the same way as CFC blocks, the chart catalog displays the charts
in a tree view. From this location you can drag-and-drop a chart to the currently open chart.
When you insert the chart, it is copied to the chart, along with all nested charts, if it contains any.
Note
Remember that the chart you have inserted into the current CFC chart via drag-and-drop from
the chart catalog is a copy. This nested chart no longer has any relationship to the original chart.
Modifications that you make in one of the charts only affect that chart.
Moving a chart
You can also hold down the shift key and drag-and-drop top charts to the chart. In this case,
they are not copied but moved. In the catalog, the chart no longer appears at its previous
location. It is shown in the hierarchy of the active chart instead.
Interconnecting
You can interconnect nested charts with other nested charts in the chart, if they have chart I/Os,
with blocks or shared addresses, or establish textual interconnections.
Navigating in a chart
Opening nested charts:
1. Select the nested chart.
2. Open the shortcut menu and select the command Open
or
select the menu command Edit > Open
or
double click on an open space in the body (not on the header or an I/O!).
The chart opens.
By repeating this, you can work down to the lowest chart level in the tree.
Moving up through the hierarchy as far as the top chart:
1. Activate the nested chart.
2. Open the shortcut menu and select the command Open Parent Chart
or
select the menu command Chart > Open Parent Chart
or
double click on an entry in the sheet bar (not on shared addresses).
The parent chart opens.
Opening a chart in the chart catalog:
1. Select a chart in the catalog.
2. Select the shortcut menu command Open
or
press the <Return> button.
The active chart is identified in the catalog by its black border.
Introduction
You can replace a nested chart with another. In this case, the interconnections of the “old” chart
are maintained, if possible.
Application
The “Replace” function can be very useful in situations where you have configured the nested
charts as encapsulated functions for different applications. Such an application might be:
You have encapsulated a (partial) function in a nested chart and interconnected it in this chart.
For example, this partial function can be a control for a ventilation unit of which several variants
are available for different fields of application. These variants can be replaced within the global
structure, without you having to modify the interconnections.
Procedure
The chart that is to replace a specific nested chart is located either in a library, the current chart
folder (as a top chart) or in another chart of the chart folder.
1. Open the chart that contains the nested chart you want to replace.
2. Open the chart or library catalog; expand the hierarchy tree, if required.
3. Drag-and-drop the required chart from the catalog onto the nested chart you want to
replace.
4. Release the mouse button when the cursor is positioned exactly over the chart you want to
replace.
You are prompted to confirm the action.
5. Click "OK".
The nested chart will be replaced, provided the cursor was positioned within the chart you
want to replace.
Click "Cancel" to abort this operation.
Introduction
You can add I/Os to a chart in order, for example, to:
● Insert the chart in a different chart and interconnect it with other charts or blocks
● Compile the chart as a block type
Procedure
Two methods are available:
● Creating chart I/Os without assignment
● Creating chart I/Os with interconnection
Creating chart I/Os without assignment
In the first step, you create chart I/Os without reference to any parameters (for example,
because the chart does not yet contain blocks and/or additional nested charts).
You then assign names, attributes and default values to the chart I/Os.
In the second step, you insert and interconnect the blocks/charts in the chart and assign the
corresponding object I/Os from the chart to the chart I/Os.
Creating chart I/Os (1st step):
1. Click the button on the toolbar
or
select the View > Chart I/Os menu command.
The dialog box for editing chart I/Os opens and is "docked" to the upper section of the chart
window.
2. In the hierarchy window on the left, select the required I/O type (IN, OUT or INOUT).
3. In the detailed window on the right, edit the empty declaration line for the particular I/O type
(name, data type, initial value, comment). Select the data type via a combo box.
or
select the View > Chart I/Os menu command.
The dialog box for editing chart I/Os opens and is "docked" to the upper section of the chart
window.
2. In the hierarchy window on the left, click the required I/O type (IN, OUT or INOUT). The
details window on the right displays the lines with I/Os. If new chart I/Os are yet to be
created, these lines will be empty.
3. In the working window of the chart, select the required I/O on the block/chart, press and hold
down the <Ctrl> key and drag the I/O to the “Name” box in the right window of the chart I/Os.
The I/O is then adopted with its properties.
Exception: interconnected I/Os are not reassigned.
4. Follow the same procedure for all other I/Os of the blocks/charts in the chart you want to
interconnect with the chart inputs/outputs.
While holding down the <Ctrl> key, drag-and-drop an I/O that already exists in the chart I/Os to
another empty line in the Chart I/Os window. A number is automatically appended to the name.
The I/O name is then unique.
When you hold down the <Ctrl> key and drag-and-drop an internally interconnected I/O to a
new line, a copy will be generated. The I/O will not be interconnected to the internal I/O.
Note
If an I/O interconnected to the chart interface has been hidden, there is no sheet bar entry.
These interconnections can only be recognized in the object properties of the block
("Interconnection" column of the "I/Os" tab).
System attributes
You can also assign system attributes to specific chart I/Os, as with block I/Os. The following
rules apply:
When you interconnect an I/O of a block/chart already placed in the chart to a chart I/O:
● The chart I/O inherits the block/chart attribute, if an attribute has not yet been assigned.
● The chart I/O retains an attribute that has already been entered.
Restrictions: For example, if text attributes are retained, with S7_link and S7_param an
attempt is made to assign those values.
Exception: The function will always adopt the value of S7_visible.
A chart with chart I/Os is not assigned system attributes, except the I/Os. These attributes can
be assigned when you compile the chart as block type.
Introduction
If "F-blocks" are used in a CFC, the following special features are available:
● Chart-based runtime group management for blocks of CFCs
When F-blocks are also used in a CFC that is integrated in chart-based runtime group
management, not only is a runtime group for blocks automatically created in the "standard
program", but a runtime group for the included F-blocks as well, the "F-program".
You can find additional information on this in the section "Chart-based runtime group
management for blocks of CFCs (Page 192)".
● Password prompt of the safety program for CFCs with F-blocks
This topic is described in the following section.
General
You can either purchase the block types you use in CFC in the form of block libraries or create
them yourself. You can also expand the existing pool of blocks.
In CFC, block types can only be created by compiling CFC charts. If you want to create your
own blocks with STL/SCL, you will find information in the "PCS 7 Blocks" programming guide.
A CFC chart can be compiled for further use (with chart I/Os) as block type.
You create a CFC chart, interconnect the blocks and create the chart I/Os for selected block I/
Os.
Once the chart has been compiled, the block type is stored inside the block folder. By inserting
it in the chart (from the S7 folder of the CFC block catalog) or by importing it using the menu
command Options > Block types..., you can include the block type in the chart folder. In the
block catalog, the block type is displayed under the family name specified for compilation.
The block type is managed via the object name FB xxx.
Make sure that the FB number is in the range supported by the CPUs on which you want the
block to run. You can find information on these ranges in reference manual Automation System
S7-400, Module Data. Example: Number of FBs = 512. The highest possible block number is
thus FB 511.
You can assign a symbolic name to the block. This name will be entered automatically in the
symbol table. The header name and symbolic name of PCS 7 blocks are identical.
● There cannot be any cross-connections with elements in the chart that is being compiled.
Cross-connections of this kind are interconnections from another chart that bypass chart I/
Os.
● The chart I/Os should not have an EN input since this is generated automatically.
● Signal inputs of the blocks have to be applied to the chart I/Os. Before signal inputs are
assigned, the relevant chart I/Os have to be unhidden. The chart I/O inherits the block I/O
attributes. Once the signal inputs have been assigned, the chart I/O can be hidden again.
● The interconnection of an ENO I/O defined at the chart I/Os is converted accordingly. If no
ENO is defined, the ENO I/O of the block type provides the result of logical AND operations
at the I/Os of all blocks called in the block type.
● The "S7_tasklist" system attribute represents the complete set of all task list attributes of the
internal blocks.
● If a chart I/O is not connected to the I/O of a block contained in the chart, a warning is
displayed during compilation.
If one block I/O with the attribute S7_m_c is connected to a chart I/O, WinCC operations
affect the same variable, regardless of whether the block I/O or the chart I/O was operated.
In cases where several block I/Os are interconnected with a chart I/O, they will be provided
with values during runtime. WinCC operations will be immediately overwritten, thereby
rendering them ineffective. During compilation, this is recognized and a warning is
displayed.
Introduction
The following options are available to synchronize blocks / block types that are used in CFCs:
● Background import when inserting from the catalog to the chart.
● Import via the "local type update" in the CFC Editor:
The changed blocks in the block folder of the project are made available to the CFC data
management to allow you to use them in CFCs.
You can find additional information about this in the description below.
● Central type update:
You can use the process referred to as "central type update" to compare all blocks/block
types and SFC types in the master data library and update them with those used in a project
or the individual projects of a multiproject. If the project contains associated instances of the
types concerned, they are also updated when the type update is performed centrally.
You can find additional information about this in the sections "How to update block/SFC
types in the multiproject (Page 110)" and "How to update block/SFC types in single projects
(Page 112)".
Type update for CPU 410-5H PA:
CPU 410-5H PA supports type update in RUN mode. This makes it possible to update the
instances and download them to the CPU in RUN mode after changing an interface at the block
types.
You can find additional information on this in the section "Type update with a CPU 410-5H PA
(Page 113)".
Note
Synchronization when using new channel blocks
When a channel block is imported from a newer library, sometimes additional blocks must be
imported from the Basic Library and their interface needs to be changed.
This is why it is necessary to synchronize the blocks from the Basic Library before compiling
your program in order to achieve a delta download in RUN.
In order to synchronize all the required blocks in this case, we recommend that you use the
menu command "Options > Charts > Update block types" in the SIMATIC Manager and set the
"Download in RUN" option.
Introduction
If you want to use the modified types in CFC for previously used block types following a block
type change, you need to import the modified block types into the chart folder. The block
instances used in CFC are then adapted to the modified block types.
There are two options for the import:
● Import in the background, achieved by inserting a modified block type from the S7 program
or the block library into the chart
● Import with the "local" type update using the menu command Options > Block Types in the
"Block types" dialog box. Select the block to be imported from the list of source files ("Offline
block folder", “Project”) and drag-and-drop it to the "Chart folder" list or click "→".
Changes requiring neither a download of the entire program nor a new OS compilation
because the changes are relevant only within the ES. Example: A block I/O was assigned the
“hidden” attribute. In this case, you only need to download changes when the CPU is in RUN.
Changes relevant to the OS and therefore requiring OS compilation.
Example: After you have edited a message text.
Identical version
When you import block types of the same version as those in the chart folder, a dialog box
displays the following:
● The message "The new versions of the block types from the offline block folder match the
block types of the same name in the CFC. Importing is not necessary."
● A list of identical block types
You can find additional information about block changes in the section "Effects of type changes
on block instances (Page 123)".
Blocks in the S7 program are still unknown in CFC, even if a block of this type has already
been imported. This means that when you want to insert a block from the S7 program into
the chart, a check is always made to determine whether the block has already been
imported.
You can find blocks that are already imported in the "All blocks" directory and in one of
the block families . A block that is not assigned to a family (indicated in the header) can
be found in the "Other blocks" directory. These blocks are indicated by the following icon:
Tip: Inserting blocks from the block families is the fastest way to position blocks in the chart,
since these are already known in the CFC and no longer need to be verified.
You should always select this method if a block type has already been imported.
Introduction
In the multiproject, you can use the so-called central type update to compare all block and SFC
types used in the individual projects with those of the master data library and update them
accordingly. At the same time, you can also update the templates in the chart folder of the
master data library.
Assuming that the latest versions are always kept in the master data library, you can use the
update function to make sure that all or only certain types have the same current version in all
or selected projects of the multiproject. If the project contains associated instances of the types
concerned, they are also updated when the type update is performed centrally.
Note
"Type update in RUN" with CPU 410-5H PA
CPU 410-5H PA supports type update in RUN mode. This makes it possible to update the
instances and download them to the CPU in RUN mode after changing an interface at the block
types.
This is why the procedure for a CPU 410-5H PA has changed.
You can find more information on type update in RUN in the section "Type update with a CPU
410-5H PA (Page 113)".
Procedure
Proceed as follows to update block/SFC types in the multiproject:
1. Select the block folder or chart folder of the master data library in the SIMATIC Manager or
the blocks or SFCs you want to update in them.
2. Select the menu command Options > Charts > Update block types....
The dialog page 1(3) "Select the S7 programs to be checked" opens. All existing S7
programs in the multiproject are listed there and already selected.
The "Download in RUN" column displays a check box when the following condition is met:
– The program is in a CPU 410-5H PA.
– Changes can be downloaded for this program, which means there is no need to
download the complete program.
By selecting the check box, a type update in RUN can be performed for this program
(possible only in a CPU 410-5H PA). In addition, the "Calculate..." button is displayed in the
"Resources" column.
3. Check the selection and, if required, exclude the S7 programs in which you do not want to
update any blocks/SFC types.
4. Click "Next".
A check mark in the "Status" column shows the programs already checked.
When the check is completed, dialog page 2(3) opens. On the "Select the block types or
SFC types to be updated." page, you can see the types selected in the library that have a
different version in the individual S7 programs.
To help you decide whether to select blocks, the "Consequence" column shows you the
effects of the new import. The following consequences are displayed:
– All associated instances will be modified (no additional consequences).
– The OS must be compiled again.
All associated instances are adapted. You can then launch the wizard to compile the OS
with the menu command Options > Wizard: "Compile Multiple OSs" > Start... or by
selecting an OS and using the shortcut menu command Compile.
– Loading entire program in operating mode STOP
After compiling, you can no longer download changes in RUN mode. All associated
instances are adapted.
Read the information provided in the introduction when using a CPU 410-5H PA.
Note: When updating SFC types, the button "Show differences" is shown on this page 2(3).
When the "Version Cross Manager (VXM)" add-on package is installed, you can use this
button to open VXM and display the detailed information about the differences.
5. Check the selection and, if required, exclude those objects you do not want to update due
to the consequences.
6. Click "Finish".
A check mark in the "Status" column shows which objects have already been updated.
7. When the update is completed, you move on to the next dialog box page 3(3), "Log". Here,
you can see all the information on what took place during the update and the results.
Examples:
– Start of type update
– The log path
– The library
– The selected objects
– The selected S7 programs
– The updated objects
– Deleted interconnections
– End of type update
Note
Check the entries in the log. The central type import can have an effect in the instances
which requires an action, for example, interconnections may have been deleted that must
be checked in the instances and adapted, if necessary.
8. If you want to print the log, click "Print", otherwise click "Close". The dialog box closes.
If you stop the update with "Cancel", all the updates made up to this point are retained. These
are also included in the log.
You can find additional information on this in the section "How to update block/SFC types in
single projects (Page 112)".
See also
Special considerations during download to a CPU 410-5H PA (Page 382)
Introduction
You can update block/SFC types of a library that is not the master data library of a multiproject
in individual projects of your choice. If the project contains associated instances of the types
concerned, they are also updated when the type import is performed centrally.
Procedure
Proceed as follows to update types in a single project:
1. Open the required library in the SIMATIC Manager, for example, PCS 7 Library.
2. Select the block/SFC types you want to update in a project in the block/chart folder of the
library.
3. Select the menu command Options > Charts > Update block types....
The "Open project" dialog box opens.
4. Select the project in which you want to update the types and click "OK".
Page 1(3) of the dialog box "Update block types" opens.
5. Follow the steps described in the section: How to update block/SFC types in the multiproject
(Page 110) (starting at point 3).
Overview
CPU 410-5H Process Automation (CPU 410-5H PA) supports type update in RUN mode.
This makes it possible to update the instances and download them to the CPU in RUN mode
after changing an interface at the block types. This is only possible in STOP mode in other
automation systems.
The update with the "Local" and "Central" type update is described in the paragraphs below.
The abbreviation "TCiR" is also used for this function. This stands for "Type Change in RUN".
Definition of an interface change
There is an interface change when at least one of the following conditions is met:
● A data type of an I/O has been changed.
● An I/O has been added, moved and/or deleted.
● The default value of an I/O has been changed.
● An I/O with message response has been renamed (can only be loaded in STOP mode)
Advantages
● With a CPU 410-5H PA , types can be updated after an interface change and downloaded
to the CPU in RUN.
● The previous limit of 56 simultaneously linkable blocks in the CPU does not apply with CPU
410-5H PA .
Note on name change in the interface
● I/O without message response
– If an I/O name is changed at a block type and another interface change is also carried
out, for example, an I/O is added, the name change will not be recognized as such.
– The I/O with another name is then interpreted as a new I/O and thus assigned the default
value from the block type. The process value is lost.
● I/O with message response
– Can only be downloaded in STOP mode
Note
Changing associated values
If, for example, you call an "ALARM_8P" or "NOTIFY_8P" block in a block and wish to use
additional associated values in it, a type update in RUN is possible, but this extension only takes
effect after a restart of the CPU for system-related reasons.
If the associated values SD_1 to SD_5 are assigned, all associated values up to SD_10 are
assigned.
You can select between the "local" or the "central" type update:
● Local type update in the "Import new versions - Download changes in RUN" dialog box
In this dialog box, the option buttons "The previous default values will be retained" and
"Activate new default values" are offered for selection.
The option buttons are only available when the "Download of changes to the CPU in RUN
mode" check box is selected.
Depending on the selected option, the changed default values are applied to all instances
of the blocks or the previous default values are retained.
The setting applies to all blocks / block types with changed default values. If a different
reaction is desired for different blocks/block types, the procedure for the local type update
for each modified block/block type must be performed separately.
The procedure is described in the paragraph below.
● Central type update in the "Update block types" dialog box
You can use the process referred to as type update to compare all block types and SFC
types used in the individual projects with those of the library and update them accordingly.
The "Update block types" dialog box displays all changed blocks/block types and you can
determine for each block/block type per S7 program whether the changed default values are
to be applied. The selection is made via the associated check box in the "New default
values" column.
The procedure is described in the paragraph below.
The following restrictions exist for applying modified default values:
● Only all the modified default values of a block type can be applied to the instances. It is not
possible to select only some modified default values.
● A modified default value can only be applied to all instances of the block type. It is not
possible to apply the modified default value only to certain instances.
Note
Effect of applying default values during download to the CPU
When applying default values, all default values are always applied during the local and
central type update.
This means that values that were changed by the process are overwritten as well during
download to the CPU.
Requirements
● The target system contains a CPU 410-5H PA and is accessible online.
● The CPU 410-5H PA firmware has version V8.1 or higher.
If this firmware version is not in place, the corresponding option is not available in the dialog
box for loading to the target system. In this case, only a complete download is possible.
● For migrated projects, the "Type update in RUN" function is only possible if a complete
download or download of changes has been performed at least once with CFC version 8.1
(or higher) before block types are changed and before download to the CPU. Only then can
the "Download of changes to CPU in RUN mode" check box be operated for migrated
projects.
4. If the "Download of changes to CPU in RUN mode" option is enabled, a status indicator ("!"
symbol and supplementary text) appears in the status bar of the CFC editor after closing the
dialog box to inform you that a download to the CPU is still required.
This display is practical for the user, because it may not be possible to perform a download
immediately after the type update. Instead, the configuration may need to be tested and
completed, for example, because textual interconnections may be incomplete due to the
type update or new interface parameters are not yet interconnected.
Additional configurations, for example, even another type update, can be performed directly
after the type update and before the next download. However, the capability to download in
RUN can be lost due to these subsequent configuration actions. The download should
therefore be performed as soon as possible after a type update with the "Download of
changes to CPU in RUN mode" option enabled.
Note
Multiple type updates prior to download
If several type updates are carried out prior to downloading and download in RUN mode
should remain possible, the "Download of changes to CPU in RUN mode" option must be
enabled for each type update. This means if one of the previous type updates was
performed with this option disabled, a subsequent download is no longer possible in RUN.
5. Check the selection and, if required, exclude those objects you do not want to update due
to the consequences.
6. Click "Finish".
A check mark in the "Status" column shows which objects have already been updated.
When the update is completed, you move on to the next dialog box page 3(3), "Log".
7. Proceed with step 7 in the section "How to update block/SFC types in the multiproject
(Page 110)".
See also
Special considerations during download to a CPU 410-5H PA (Page 382)
Clean Up
Click "Clean up" in the "Block types" dialog box to open two dialog boxes in succession in order
to delete blocks from the chart/block folders.
1. "Clean up blocks in CFC" dialog box
This lists all block types contained in the chart folder but not used in the charts. In other
words, there are no instance blocks.
2. "Clean up blocks in block folder" dialog box
This lists all block types contained in the offline chart folder but not used in the charts (the
block types are not in the chart folder).
These could also be block types that are called from other blocks und are normally only
found in the block folder.
Example:
The CTRL_PID (FB 61) block, which calls the OP_A_LIM (FB 46) block, was deleted in the chart
folder, but the OP_A_LIM block is still in the block folder.
Select the corresponding blocks in each dialog box and delete them from the respective target
(chart/block folders) with "OK".
Overview
The following sections contain information about editing blocks:
● Inserting blocks (Page 120)
● Specifying object properties (Page 125)
● How to copy blocks (Page 130)
● How to move blocks (Page 131)
● Deleting blocks (Page 132)
● How to align blocks (Page 133)
● How to set I/O parameters (Page 134)
● What you should know about global block type changes (Page 122)
To insert a block means that you select a block type and insert it in the chart. You can insert the
block easily in different ways:
● Drag-and-drop it from the block or library catalog;
● If the block is selected, use the <Return> key.
When a block is inserted, it is assigned a name that is unique within the chart.
The inserted block is an instance of the block type. You can create any number of block
instances from each block type.
Note
The block type comment is not transferred for the block instance.
Each inserted block is assigned default runtime properties, which the user can modify.
You can find more information about inserting blocks in:
Catalog of blocks, charts, templates and libraries (Page 48)
Additional information
You can find additional information on this in the following section: Runtime properties
(Page 174)
Introduction
You can also insert large blocks, in other words, blocks containing a high number of visible
block I/Os. To do this, position the block across the horizontal dividing line of two or three
successive sheets. In this case, a copy of the first block header is inserted immediately below
the dividing line.
Notes
● If a positioning conflict occurs, the block is shown at this position as an overlapping block,
light gray and without I/Os. A positioning conflict occurs when a block is inserted at the sheet
boundary, with the result that only the header can be displayed in the first sheet and not all
I/Os (to avoid a double header). You can change this layout by moving the block slightly in
the vertical direction.
The same applies to "small blocks", in other words, blocks that do not have a body with
designated I/Os such as "AND" and "NOR".
● If the block is too large for those three sheets, the I/Os that cannot be displayed will be
hidden automatically. The maximum number of visible I/Os amounts to 160 inputs and 160
outputs. You can access all I/Os using the menu command Edit > Object Properties....
Tip: In order to improve your overview, it is useful to show only the I/Os you are going to use for
interconnections or monitoring in test mode.
Note
This catalog is only available if unplaced blocks actually exist.
The block name and the complete path (chart name) are specified. This allows you to see the
block source. Use the shortcut menu command Open Original Chart to open the chart from
which the block originated.
You can also insert unplaced blocks from a different chart in the active chart. Previous
interconnections to blocks or to the sheet bar are not regenerated when the block is positioned
in the chart again.
10.6.3.1 What you should know about global block type changes
The ability to modify the global block type relates to FBs and FCs. BOP types cannot be
changed since they are an integral component of CFC.
Before the changes are applied, a warning is displayed, pointing out the effects and showing
data of the old and new block type, such as the name and date of last interface modification. At
this point, you can cancel the update by clicking “No” or accept the changes by clicking “Yes”.
Global modifications of the type may produce unwanted effects on the block instances. For
example, interconnections and parameter settings may be lost. In this case, you must modify
the block instances manually.
Modifications that result from a global type change are logged and automatically displayed
following the update. You can also display this log using the menu command Options > Logs:
Block Types.... If a modification of block instances is required, this log helps you save time while
also reducing the risk of errors.
Additional information
You can find additional information about this in the following sections:
Effects of type changes on block instances (Page 123)
Tolerant type import after data type extension (Page 125)
Introduction
In CFC, when you modify the interface description (block I/Os) or the system attributes of a
block type, all instance blocks are automatically adapted. You should take into account any
relevant effects of an interface modification.
Block comments are changed globally in the block instances (overwritten) following a block
type change, regardless of any previous instance-specific modification.
If this change affects block I/Os intended for operator control and monitoring (attribute
S7_m_c=true), the following rules apply:
● An I/O added will be made known and used in WinCC following the OS compilation.
● After an I/O is deleted, the WinCC tag no longer exists. Any existing interconnections must
also be deleted in WinCC.
● When the name of an I/O is changed, the name of the WinCC tag also changes.
Interconnections of picture elements, block icons and faceplates must be adapted.
As a general rule: All changes affecting WinCC are followed by a new OS compilation.
Note
Changes to block I/Os have an effect on compilations and downloads. Following an interface
modification, only compilation of the entire program is possible. If there is already an older
version of the modified block type loaded, the entire program must also be downloaded.
Data types
If the data type for a block type is extended, for example, from INT to DINT, all I/O data will be
retained during a global type change if the old data type can be mapped on the new one without
conversion. This applies to the following data types:
BYTE → WORD
BYTE → DWORD
WORD → DWORD
INT → DINT
STRING1n → STRINGn+m
(e.g. STRING16 → STRING32)
Note
Remember that interconnections to these I/Os will still be lost due to the global type change.
Introduction
A name is assigned to the block when you insert it. You can modify this name. The block name
must be unique within the chart. The CFC verifies this uniqueness. The name has a maximum
length of 16 characters and is displayed in the block header. Prohibited characters: / \ . " %.
Note
CFC in PCS 7:
Remember when assigning names that the variable name must not be longer than 128
characters for transfer to the OS. This name consists of the following components:
● The name of the folder in the hierarchy path
● The chart name
● The block name
● The separator (period)
● The I/O name (variable name)
Introduction
The comment, a user-specific text, appears in the block header. The block header can display
up to 14 characters of comment. Small blocks do not display the comment.
Procedure
To enter block comments, proceed as follows:
1. Select one or several blocks
and then select the Edit > Object Properties... menu command.
2. Select the "General" tab.
3. Enter the required text in the "Comment" input field.
4. Confirm your entries with "OK".
The dialog box is closed and, if multiple blocks were selected, the dialog box of the next block
appears.
Block icons
Blocks intended for operator control and monitoring can be displayed under WinCC by a block
icon (for example, used for calling a faceplate).
Different block icons available for a block type can be assigned to specific instances (for
example, to indicate different type versions: MOTOR block as motor, fan or pump).
In the “Special object properties” group, specify the block icon displayed under WinCC in the
“Block icon” input field, using a maximum of 16 characters.
This input field is only enabled if you have selected the "OCM possible" check box.
Introduction
You can add or delete inputs at blocks that have a variable number of inputs of the same data
type (for example, NAND or OR).
Procedure
To change the number of inputs:
1. Select the corresponding block and then select
the Edit > Number of I/Os... menu command.
The dialog box of the same name opens.
2. Enter the number of inputs (2 to 120) in the input field and click "OK".
Note
If the available space is insufficient for the new block length, the block will be displayed as
an overlapping block that you can move within the chart.
You can only reduce the number of I/Os down to the lowest interconnected I/O.
Introduction
You can copy blocks and nested charts both within charts or to other charts. It is also possible
to copy several or all the objects of a chart at the same time. This allows you to duplicate tested
substructures quickly and without errors.
Block type
● Check the system attributes of the block type.
● Check the availability of all I/O types.
● Check the identity of the following names/types:
– I/O type name (for example, MODE)
– I/O type (for example, IN_OUT)
– Data type (for example, DWORD)
– If data type STRING: Check string length.
– If data type STRUCT: Check data type.
● Check the system attributes of the I/Os.
● Check if the block types (SFC type, other type) are the same in the source and the
destination.
System attributes of the block type
● Check if the system attributes s7_alarm and s7_m_c, which are always available, match.
System attributes of the block I/Os
● Check if the system attributes s7_a_type, s7_m_c, s7_link, and s7_param, which are always
available, match.
● Check if the optional system attributes s7_server, s7_ts and s7_qc are available and if they
match.
– If they are in the source, they must be available in the destination.
– If they are not in the source, they cannot be available in the destination.
– If they are in the source and the destination, they must have the same values.
● Check if the optional system attributes s7_shortcut, s7_unit, s7_string0, and s7_string1 are
available.
– If they are in the source, they must be available in the destination.
● The optional system attribute s7_enum is always included when copying within a project. If
the block is inserted in a different project that does not contain the enumeration in the shared
declarations, the system attribute is inserted as a numeric value.
Additional information
You can find additional information on this in the following sections:
How to copy blocks (Page 130)
How to move blocks (Page 131)
Requirements
● There must be enough space in the target chart to paste the copied blocks.
● The relevant charts must be open.
● The charts must be located on the same CPU.
● If you want to copy blocks to other sheets, select the overview or open another chart window
that displays the destination sheet.
– You can find additional on the overview in the section: Views in CFC (Page 82)
The blocks are inserted in the other chart at the same position, offset by one grid section to
the right and down. If this position is already occupied by other objects, the blocks are
displayed as overlapping blocks. Otherwise, they are displayed as usual.
4. In this case, you can move the blocks to an appropriate position. The AS can also execute
overlapping blocks.
Introduction
You can move blocks to other chart positions and charts. It is also possible to move block
groups or all blocks at once.
Moving blocks has no effect whatsoever on the functionality. This means that the
interconnections and runtime properties remain the same. Block names are retained if
possible. A corresponding error number will be appended to the names if there is a conflict.
Note
"Cut" and "Paste" operations are not possible within the same chart partition. If you move a
block to another chart partition, the object is inserted in the same sheet and at the same position
it had in its original chart partition.
If objects are already placed at the insertion position and the blocks overlap after insertion, they
are displayed in a different color. The color can be configured in the "Color settings" dialog
using the "Overlapping blocks" option.
If blocks do not overlap, they are displayed as usual. In this case, you can move the blocks to
an appropriate position. The AS can also execute overlapping blocks.
The blocks are inserted in the other chart at the same position, offset by one grid section to
the right and down. "At the same position" in this context means that the block is also
inserted in the sheet with the same sheet number.
If this position is already occupied by other objects, the blocks are displayed as overlapping
blocks; otherwise they are displayed as usual. In this case, you can move the blocks to an
appropriate position. The AS can also execute overlapping blocks.
Note
You cancel the cut function when you initiate a function other than Paste after you have
selected the menu command Edit > Cut. The blocks you cut will remain at their original
position.
Effects of moving
Moving blocks has no effect whatsoever on the functionality. This means that the
interconnections and runtime properties remain the same. Block names are retained if
possible. A corresponding error number will be appended to the names if there is a conflict.
Deleting blocks
You can delete one or multiple blocks via the <Del> key or the menu command Edit > Delete.
Deleting blocks from the chart has the following effects:
Effects on interconnections
When you delete blocks, all interconnections between blocks to be deleted and objects you
have not deleted will be lost.
If a block output is interconnected to a block that is not to be deleted, a warning is displayed.
You can then decide whether to continue and delete the block. Instead of the truncated
interconnections, the block inputs of the block that is not deleted are assigned default
parameter values.
Additional information
You can find additional information about this in the following sections:
How to delete block types (Page 119)
Runtime properties (Page 174)
Introduction
The system can align blocks you have inserted in a chart and blocks already assigned
interconnections.
Procedure
1. Select the blocks you want to align.
2. Select one of the menu commands Edit > Align > Left/Right/Top/Bottom.
All blocks selected are aligned to the left/right/top/bottom.
Result
The blocks are aligned at the visible edge of the block graphic, not at the frame of the selected
blocks. The block to the extreme left or right or nearest to the top or bottom determines the
alignment position for the blocks.
If alignment causes a conflict, for example, overlapping blocks, an error message is generated
and the old layout will be restored. The blocks will not be aligned in this case, not even those
that do not cause a conflict.
Note
This align command is disabled when blocks selected for alignment include an overlapping
block (represented in another color).
Definition
In this context, setting parameters refers to the assignment of parameter values and, if
required, attributes to a block or chart I/O. These might, for example, be texts for unit and
identifier. Depending on the data type of the I/O, the system verifies the syntax of each
parameter value and that the numerical range is not exceeded.
Input of units
In the corresponding properties dialogs, you can either enter the unit input directly or select it
via a drop-down list. The drop-down list contains all units that were installed as the basic set
with CFC. The user can add to or modify these units according to the PCS 7 application.
You can find additional information on this in the section "Configuring Shared Declarations
(Page 163)".
Advantages
Using the drop-down list for selection has the following advantages:
● The units benefit from consistent notation in the various applications (for example, process
tag list, CFC Editor and SFC Editor).
● There is no need for the painstaking keyboard input of special characters such as "°C".
Interconnected binary inputs (of block and chart I/Os) can be inverted, In this way "0" becomes
"1" and "1" becomes "0".
or
select the Edit > Invert Input.... menu command.
or alternatively
1. Double-click the input.
The "Properties - Input/Output" dialog box opens.
2. Select the “Inverted” check box.
The input will be inverted and identified by a dot.
Points to note
Please observe the following information:
● If you copy a signal from an inverted input to another input, the new input will not be inverted
automatically. The inversion must be done explicitly.
● If you move an interconnection from an inverted input to non-inverted input, the new input
is not automatically inverted. The inversion is canceled at the input that is no longer
interconnected.
● Inputs assigned to a chart I/O cannot be inverted.
Remedy: Insert a NOT block.
Analogous to block types, SFC types can be inserted into CFC charts from the block catalog.
This creates SFC instances, which you can configure and interconnect. They are displayed as
blocks, the same as CFC instances.
SFC types are listed in the catalog by family and in the "All blocks" folder. If the "Family" attribute
is not assigned to the SFC type, it will be displayed under "Other blocks".
The SFC external view as of V6.0 replaces the control block SFC_CTRL.
In order to enable control of the SFC chart by means of CFC interconnections, it is assigned an
interface derived from the interface of the SFC runtime system. It is displayed in the CFC as a
block by a chart symbol, analogous to a nested chart. The block name is identical to that of the
SFC chart and cannot be modified here.
The external view is displayed in a separate window of the CFC. In this window you cannot
insert any additional objects, for example, blocks. Interconnections can be executed as usual
in CFC, for example, textual interconnections, interconnections to shared addresses and block/
chart I/Os.
When printing the external view locally, it is printed like a CFC chart without the interface.
Note
You can print interface I/Os in the form of a table in the SFC editor (print: external view).
Note
Please observe the following information:
● If the output of an FB is interconnected to an INOUT I/O of an FC, the FC writes to the
instance data block of the FB.
When the FB reads this output in its algorithm (and not only writes), this may lead to
problems or malfunctions of the output due to the FC.
● Note that the block outputs have specific default values and may affect other blocks when
the CPU starts up if they have already been executed.
The correct startup response of the blocks is the responsibility of the project engineer.
Interconnections of an SFC instance
The "block contacts" characteristic of an SFC type affects the creation of an interconnection at
the instance of the SFC type. Under certain conditions, all other block contact interconnections
between the SFC instance and the block are automatically completed when an interconnection
is created.
You can find more information on this in the section "Block icons" in the SFC online help or in the
SFC for SIMATIC S7 documentation.
Procedure
Create block interconnections as follows:
Single or multiple interconnections
1. Select the output you want to interconnect.
2. Click the input you want to interconnect to the selected output.
You can repeat this procedure to create multiple interconnections for this output.
You can select the I/Os in any order. You can also click the input first and then the output.
Multiple interconnections also function in this way.
Sequential interconnections
1. Select the output you want to interconnect.
2. Press and hold down the <Shift> key and then click the target inputs you want to
interconnect to the selected output, working in successive order.
With sequential interconnections, you must keep to the order output → input.
Interconnecting via drag-and-drop
1. Click the output you want to interconnect and hold down the left mouse button.
2. Drag the cursor to the target input.
You can select the I/Os in any order here. You can also drag an input to an output to
interconnect them.
The interconnection is usually displayed as a line, in exceptional cases as a connector. This
happens when a line cannot be drawn due to lack of space or if no additional entries can be
made in the sheet bar.
Tips
● You can easily create interconnections across sheet or chart boundaries by opening the
sheet view of several windows simultaneously.
● You can also create interconnections across sheet boundaries in the overview.
Additional information
You can find information about the display of interconnections in the section "Layout of
interconnections (Page 76)".
You can find information about interconnections with S7 in the following sections:
How to interconnect to shared addresses (Page 143)
Working with textual interconnections (Page 149)
How to create and delete interconnections with runtime groups (Page 154)
Creating interconnections to chart I/Os (Page 154)
Interconnection rules for chart I/Os (Page 155)
Interconnection rules for data types A, DT, S, and ST (Page 160)
Interconnecting with SFC Charts (Page 148)
Introduction
With the CFC, you can set up interconnections to partners located on other automation
systems. Interconnection partners are always block I/Os. Requirements for AS-wide
interconnections:
● The PLCs involved are located in a common project or multiproject.
● The network configuration has been performed with NetPro.
Note
It may no longer be possible in the current version to compile a program with AS-wide
interconnections that could be run with the previous version. This is the case if the default of
30% maximum CPU load for AS-wide interconnections in this program has been exceeded. If
you increase this default to the correct value, then you will be able to compile the program once
again.
You can view and change the default in the dialog box "Settings for Compilation/Download".
Note
Moving projects from the current (multi) project can lead to single-sided AS-wide
interconnections if the AS-wide interconnection is deleted from a project but remains intact in
the other when disconnected. If the last AS-wide interconnection is deleted from a project when
disconnected, the inherent partner connection is deleted as well. As soon as the moved project
is reconnected, a single-sided interconnection is created (identified by question marks in the
sheet bar of the CFC). This single-sided interconnection then generates a warning in the code
generator and is not loaded into the AS.
You can find information on eliminating one-sided AS-wide interconnections in: Synchronize
AS-wide Interconnections (Page 428)
The user does not need to undertake any special measures to perform the data transfer via the
AS-wide interconnection. The blocks required for the data transfer are made available and
loaded by the ES when loading is performed. These blocks are not instanced in the chart and
cannot be seen in the catalog. The data transfer is called directly from the corresponding OBs
of the AS (OB1, OB3x). The handling instructions are located in special DBs created by the
code generator and transferred from the loader to the CPU.
The "IK STATE" block is located in the "ELEM_400" folder in the CFC library. This can be
integrated into the program in order to respond to communication errors in the process. You can
find a description of the "IK STATE" block in the Help for CFC elementary building blocks > AS-
wide blocks > IK STATE
If the last AS-wide interconnection is deleted, the S7 connection in NetPro is also deleted.
Following this, compiling and loading is required.
Introduction
Shared addresses are interconnection partners outside the CFC charts, for example, shared
data blocks, I/O signals, bit memories, timers, and counters. You can specify the addresses in
symbolic or absolute form. You must, however, keep to certain conventions.
Interconnections to shared addresses are inserted and identified in the sheet bar by a small
blue triangle.
Note
If the interconnection begins at an I/O that has been subsequently switched to hidden, the sheet
bar entry is also deleted. You can then only recognize the interconnection in the object
properties of the block/chart in the "Interconnection" column of the "I/Os" tab.
Procedure
1. Select the input/output and
select the Interconnection to Address...
command from the shortcut menu,
or click the button in the toolbar
Result
A sheet bar entry will be generated that refers to the target of the interconnection.
● The entry of an absolute address is not case-sensitive and may or may not include empty
strings, for example, e1.1, E1.1, e 1.1. The permitted range of values depends on the type
of CPU. Syntactical write errors in absolute addresses may cause the CFC to misinterpret
the entry as a symbol!
Note
Always comply with CPU-specific limits. Otherwise you cannot download the compiled
program to the CPU and a download error message appears.
● Symbolic addresses are enclosed by upper quotation marks in the sheet bar of the chart.
You can thus check how the CFC has interpreted your entry, in other words, as a symbolic
or an absolute address.
● The following addresses cannot be accessed via the CFC:
OB, SDB, SFB, SFC, UDT and VAT
● Absolute access to DB elements is possible. The following samples show the permitted
syntax:
Address Access to
DB10.DW20 Data block 10, word 20
DB20.DX2.1 Data block 20, bit 2.1
The notation DB20.DBX2.1 is also tolerated as input, but "B" is not accepted and
not shown in the sheet bar.
Chart update
Select the menu command View > Update or press <F5> to update the names/addresses of
operands and block types in the CFC charts of the active chart folder.
Symbolic addresses
The following examples illustrate the options when specifying symbolic addresses:
Address Remark
Limit switch 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 (setpoint).
"I5.1" Access to the symbol with the name E5.1.
To avoid the absolute address with the same name being addressed instead of
the symbol, the symbol is enclosed in
quotation marks.
Absolute addresses
The following examples illustrate absolute addressing:
Address Remark
I5.1 Access to input 5.1
i5.1 Access to input 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 (syntax also: DB20.DBX2.1)
SFC access
A special form of interconnection is direct SFC access from actions or transitions to I/Os of the
block or nested chart in the CFC chart. This type of SFC access can be "rewired" in the CFC
chart, in other words, it can be moved from one I/O to a different I/O of a compatible data type.
If the I/O is interconnected, you can decide whether only the SFC access or also the
interconnection will be moved.
● Move only the SFC access
Drag the selected I/O to the new I/O while holding down <Alt>. The SFC access symbol is
moved to the new I/O. Existing interconnections will not be included.
● Move interconnection and SFC access
Drag the selected I/O to the required new I/O. You will be prompted to include the SFC
accesses. If you click “Yes”, the interconnection and the SFC access are moved. If you click
“No”, only the interconnection is moved.
● Delete the SFC access
You cannot delete an SFC access in the CFC.
Access markers
In the CFC chart, a marker at the I/O identifies SFC accesses. Write and read access are
indicated differently.
Markers have the following meanings:
● A marker above the I/O = "read access"
● A marker below the I/O = "write access"
The color of the marker is identical to the interconnection color indicating a specific data type.
SFC references
You can display SFC references as follows: Double-click the block I/O to open the “Properties
- Input/Output” dialog box. When I/Os with SFC access are used, this dialog box contains the
“SFC Access…” button. Click this button to open an additional dialog box that contains a list of
SFC references.
The reference contains the names of the SFC chart, SFC object (step name/transition name)
and the object type (step/transition) and type of access (write/read).
Double-click the chart name of a listed object to open the relevant SFC chart where the
referenced object is highlighted.
Note
Please observe the following information:
● If the I/O with the textual interconnection has been hidden, there is no sheet bar entry. These
interconnections can only be recognized in the object properties of the block
("Interconnection" column of the "I/Os" tab).
● The block with a hidden interconnection is indicated by a colored triangle in the top right
corner of the block header.
By closing the textual interconnection, you convert it to a real interconnection; that is, to a
normal block interconnection. The small box no longer displays the identifier (yellow triangle).
This is converted into a real interconnection by closing the textual interconnection. The yellow
triangle in the small field is replaced by a green triangle.
With AS-wide interconnections, care must be given to the syntax of the path in the large field.
It is important to distinguish whether or not the chart is integrated in the plant hierarchy.
● The syntax without plant hierarchy
– Project\\Station\CPU\Program\\Chart\Block.IO
● The syntax with plant hierarchy:
– Project\\Hierarchy Path\\Chart\Block.IO
General information
Please observe the following information:
● A textual interconnection consists of a maximum string length of 512 visible characters.
● A textual interconnection cannot co-exist with a closed interconnection or another textual
interconnection.
● When you close a textual interconnection, all actions and error messages are listed and
displayed in the log file. You can open the log file with the menu command "Options > Logs >
"Make Textual Interconnections" tab.
● Open textual interconnections are tolerated when you compile the program. A warning is
generated and the following actions are performed:
– Input: The code is generated and the default value of the block type is applied to the open
interconnection.
– Output: The interconnection is ignored in the generated code.
● If an I/O with a textual interconnection is switched to invisible, the sheet bar entry is deleted.
You can then only recognize the interconnection in the object properties of the block/chart
in the "Interconnection" column of the "I/Os" tab.
● If an I/O is negated with a textual interconnection, this negation is not displayed in the
technological editor.
Additional information
You can find more information on textual interconnections in the section:
Textual interconnections in branched and merged project data (Page 153)
Introduction
When branching projects into separate configurable segments and merging them again at a
later point, note the following peculiarities and aspects that apply to the textual
interconnections.
Note
Please observe the following information:
● You must not rename any of the interconnection partners in a "broken" interconnection,
since it will be impossible in this case to close the textual interconnection.
● Modifications of charts in the master project are canceled if charts with identical names are
returned from the branch projects to the master project.
● An interconnection might be generated unintentionally in the master project, for example,
when you modify interconnections that exceed chart limits in the branch project and
subsequently return only a single chart to the master project.
Example: Chart CFC_A contains an interconnection to a block in the CFC_B chart. Both
charts are copied to a branch project and edited further. In this case, the interconnection
between both charts will be deleted. Only CFC_A is returned to the master project. A textual
interconnection that you can actually close will be generated in the CFC_B chart of the
master project. Result: The interconnection that was deleted in the branch project exists
again in the master project.
● Textual interconnections generated prior to a copy/move action are applied to the target
project. This can be a defined path reference (that can be closed) or any character string
(interconnection request that is actually configured in the target project).
General
You can enable and disable runtime groups dynamically. This means that the output value of
a block decides whether or not a particular runtime group will be executed. In order to achieve
this, connect the binary block output to the enable attribute of the runtime group. In this case,
the setting of the “Active” option in the object properties of the runtime group is not taken into
account.
A small red triangle in the sheet bar indicates interconnections to runtime groups.
Note
Please observe the following information:
● If the interconnection begins at an I/O that has been subsequently hidden, there is no sheet
bar entry. You can then only recognize the interconnection in the object properties of the
block/chart in the "Interconnection" column of the "I/Os" tab.
● The block with a hidden interconnection is indicated by a colored triangle in the top right
corner of the block header.
Creating an interconnection
1. Select the binary output you want to interconnect, followed by the menu command Insert >
Interconnection to Runtime Group....
The dialog box "Insert Interconnection to Runtime Group" appears. This contains a list of all
CPU tasks and runtime groups.
2. Select the task containing the required runtime group from the list.
The list of runtime groups is sorted accordingly.
3. Select the runtime group and click "OK".
The dialog box closes. The interconnection is entered in the sheet bar.
Delete interconnection
Click the small or large box in the sheet bar and press <Del>.
The interconnection to the runtime group is deleted. The interconnection is deleted
automatically when you delete the runtime group.
Interconnection rules
The following rules apply when interconnecting chart I/Os:
● Block I/Os interconnected internally cannot be interconnected with a chart I/O.
● A block input of the type IN can be interconnected with chart I/Os of the type IN or IN_OUT.
● You can interconnect a block I/O of the data type ANY with chart I/Os of any elementary data
type (exception: not with the data type ANY and POINTER).
● The compatibility of data types of the I/Os you are interconnecting may differ on the various
target systems. If there is a data type incompatibility, an error message is displayed when
you make the interconnection.
● You cannot configure chart output parameters.
Remedy: Set parameters for the output in the block. This value is then entered in the
corresponding chart output.
● Structured data types of FC outputs cannot be interconnected with chart I/Os.
Tracing interconnections
Even if numerous interconnections are displayed in a sheet, you can nevertheless track the
path of a specific interconnection as follows:
● Click the displayed line or the large field in the sheet bar.
All lines and sheet bar entries, including those in overflow pages, connected to the selected
line will flash on-screen. Signal tracking is also possible along branched lines and beyond
break connectors.
● From the chart I/O of a nested chart, you can track the signal to the I/O that is interconnected
internally with this chart I/O.
In the shortcut menu, select the command Track Signal. This opens the nested chart; the
interconnection and the sheet bar entry flash.
You can track an interconnection that leads into a nested chart over the sheet bar to the
interface by opening the shortcut menu for the I/O or the sheet bar entry and selecting the
menu command Jump from Sheet Bar. The higher-level chart is then opened and the
relevant I/O of the nested chart is selected if it is not interconnected. If the chart I/O is
interconnected, the interconnection flashes.
● To disable the flashing, simply click a different position in the chart.
Signal tracking is also possible with Jump from Sheet Bar.
You can find additional information on this in the following section: Jump from Sheet Bar
(Page 156)
With “Jump from Sheet Bar”, you can move quickly to the interconnected block on the other
sheet of the current chart or another chart from a sheet bar entry of a sheet or an overflow page:
● If you jump from the sheet bar entry or from an I/O with a single interconnection, the jump
is made directly.
The sheet or chart in which the interconnected block or nested chart is located opens. With
block interconnections and interconnected chart I/Os, signal tracking is activated (line
flashes). If the I/O of a nested chart is not interconnected, the relevant chart I/O is selected.
If the destination of the jump is an overlapping block, the block alone is fetched to the center
of the screen and selected. Since I/Os and connecting lines cannot be displayed, signal
tracking is not possible in this situation.
● If you jump from the sheet bar from an output with a multiple interconnection, a dialog box
opens with a list of the interconnections of this output. The jump is executed when you
double-click the output required or select it and confirm with “OK”.
● You can use the Edit > Go To > Jump Back menu command to return to the point at which
you started the jump even if you have closed the selected chart or have deleted the block.
You can find additional information in the section: Signal tracking (Page 156)
Procedure
In order to copy an interconnection, proceed as follows:
1. Select the interconnected input.
2. Press and hold down the <Ctrl> key and the left mouse button and drag the cursor to the
target input (of the same type). When you reach this input, release the mouse button first
and then the <Ctrl> key. An additional interconnection is thus created.
Copying is a highly convenient function, particularly in situations when the interconnection
originates in a block from a different chart, since you do not need to initially locate the source.
Note
An SFC access cannot be copied in CFC.
Procedure
You can modify existing interconnections in the sheet view. To do this, move the
interconnection from one I/O to another I/O with a compatible data type. Proceed as follows:
Input
1. Position the cursor on the input whose interconnection you want to move to another input
and hold down the mouse button.
2. Drag the cursor to the target input (of the same type) and release the button. The
interconnection line is redrawn.
Output
The procedure is basically the same as for the inputs. However, the following rules apply:
● If there is more than one interconnection, all interconnections will be moved to this output.
● If the interconnection from an output to an address is dragged to an output that is already
interconnected to the same address, a warning is displayed. You can then decide whether
or not to delete the interconnection of the original block.
Note
Please observe the following information:
● If you want to modify an interconnection that is accessed by an SFC chart (see the block
I/O identifier), a message prompts you to move the SFC access also. If you click “Yes”,
the interconnection and SFC access are moved, if you click “No”, only the
interconnection is moved.
● If you only want to move the SFC access to a different I/O of a compatible data type, drag
the I/O with the SFC access to the required I/O, holding down the ALT key.
Procedure
Proceed as follows to delete an interconnection:
Multiple interconnection
Deleting all interconnections of an output:
1. Select the output or the connection line and select the menu command Edit > Delete or
press <Del>.
2. If you click "Yes" in response to the prompt for confirmation, the interconnections are
deleted.
If you click "No" in response to the prompt for confirmation, no interconnection is deleted.
Deleting one of several interconnections of an output:
1. Select the input and press <Del>
or
position the cursor on the sheet bar entry of the output and press the right mouse button.
The small field before the sheet bar entry is selected.
2. In the shortcut menu, select the command Delete Interconnection(s).
The interconnection to the input will be deleted.
You can also click the small field in the sheet bar directly and delete the relevant
interconnection via <Del> or the menu command Edit > Delete.
Single interconnection
You can delete the interconnection for the output, input, sheet bar entry, or connecting line as
follows:
Select the corresponding object and
select the menu command Edit > Delete
or
press <Del>.
Textual interconnection
Single textual interconnection:
You delete a single textual interconnection from the chart in the same way as a single
interconnection (see above).
All textual interconnections:
1. Select the menu command Options > Delete Textual Interconnections.
A dialog box opens which contains a table listing all textual interconnections of all charts in
your current chart folder.
2. In the "Chart" column, select all the textual interconnections you want to delete.
3. Click "Delete".
Note
An SFC access cannot be copied in CFC.
Interconnection rules
The following interconnection rules apply to block I/Os of the structured data types ANY,
STRING, DATE_AND_TIME, and STRUCT:
Data type
Interconnection type STRING,
ANY DATE_AND_TIME,
STRUCT
Mandatory interconnection for: FC - OUT, FC - OUT,
with all other I/Os, NIL is transferred, which must not be FC - IN_OUT,
evaluated by the calling block (only relevant for STL blocks FB - IN_OUT (with STRUCT)
written by the user; with PCS 7 blocks, this is guaranteed).
Target/source of the intercon‐ Any: DB elements,
nection CFC block I/O, CFC block I/O
(address): Address ranges, (except for FC - OUT)
DB elements,
Entire DBs
Target/source of the intercon‐ Any: except for same data type (ANY) only to same
nection data type
(data type):
Note
Blocks of STEP 7 or PCS 7 libraries do not contain FCs with structured outputs.
10.8.18.3 Structures
Layout
Structures are used to group data in a tree view and apply those data to a block I/O. Structures
in the block view are assigned, similar to elementary data types, an I/O name and the type "ST".
A structure consists of several elements and a nesting depth of up to 8 levels. The following
elements are permitted:
● Elementary data type (BO, WORD, etc.)
● Structure
A structure element contains the following information:
● Type (of the elementary data type, otherwise "ST")
● Name
● Value (only with the elementary data type)
Interconnecting
You can only interconnect a block I/O with a structure to other structures, not to elementary data
types. The structures you interconnect must be compatible, in other words, the order, data type,
and the element name of the elementary data types it contains must be identical. The names
of the structures can be different.
You can only interconnect the complete block I/O structure, not separate elements of the
structure.
Note on interconnection of a structure (STRUCT)
● To simplify the combination of APL blocks and standard blocks, the following structures
represent an exception because they only consist of two elements:
– Name.VALUE [BOOL]
Name.ST [INT]
– Name.VALUE [REAL]
Name.ST [INT]
"Name.VALUE" can be interconnected in these structures with the elementary data types
BOOL or REAL.
"Name.ST" (interconnection: STRUCT> elementary data type) is not evaluated or amended
to "Name.ST:= 16#80" (interconnection: elementary data type->STRUCT).
● Global data block, AS-wide interconnections, F-parameters and CFC I/Os are not
supported.
Note
If a STRUCT I/O of an instance block is interconnected with a shared data block and the
structure name of the shared data block is subsequently changed, this change will not be
detected during compilation. This also applies if the name of the elementary data type is
changed. The change is updated in the ES data management only after closing and reopening
the CFC.
Note
You cannot interconnect FC outputs with a structure to chart I/Os.
Introduction
In the project, you can store shared declarations that can be used by different applications.
These shared declarations are, for example, enumerations, units and equipment properties.
This ensures that attributes with the same names are used throughout a project.
Configuring
When a new project is created, the shared declarations and the “Enumerations”, “Units” and
“Equipment properties” folders they contain are created automatically. Shared declarations are
also created in the master data library when a new multiproject is created.
In the component view or plant view of the SIMATIC Manager, you create the "Shared
declarations" folder directly below the project node. With the shortcut menu command Insert
New Object > Shared Declarations, you insert the folder with the underlying folders
"Enumerations", "Units" and “Equipment properties” into the project.
You can delete, copy, move, and create the folders contained in the “Shared declarations”
folder individually. This folder must not contain more than one folder of the same type.
When you select the “Shared declarations” folder, the following menu commands are available
via the shortcut menu command “Insert New Object”:
● Enumerations
● Enumeration
● Units
● Unit
● Equipment properties
● Equipment property
You can also insert the "Enumeration", "Unit" or "Equipment property" objects if no
“Enumerations”, “Units” or “Equipment properties” folder exists. It is then created automatically
at the same time.
If you insert one of these folders, an existing folder of this type is overwritten if you confirm the
displayed prompt. It is also overwritten if you renamed the existing folder earlier.
After insertion, the “Enumerations” folder already contains the enumeration, with the name
“Operating State” but without values. The enumeration is used in PCS 7 for hiding messages.
The "Units" folder already contains a list of units installed with CFC. You can extend or modify
these as required.
No equipment properties exist yet in the "Equipment properties" folder. In the multiproject/
master data library, this is the folder where you insert a type. In the plant hierarchy, it is where
you insert an instance of the equipment property.
Additional information
You can find additional information about this in the following sections:
Configuring enumerations (Page 164)
Configuring units (Page 166)
Configuring equipment properties (Page 166)
Updating shared declarations in the multiproject (Page 167)
Introduction
You use enumerations for block I/Os or chart I/Os that have the system attribute "S7_enum".
Regardless of the current value of the system attribute (value matches the object name of an
enumeration), you can use any object name from the enumerations that exist within the project.
These enumerations are available in a drop-down list in the object properties of the I/O.
Enumerations are permitted for I/Os for the following data types with Boolean and integer
values: BOOL, BYTE, INT, DINT, WORD, DWORD.
Note
If a system attribute "S7_string_0" to "S7_string_25" and the system attribute "S7_enum" is
assigned to the I/O, only the enumeration will be used as the value identifier (system attribute
"S7_enum").
Creating an enumeration
When a new project is created, the shared declarations and the “Enumerations” folder they
contain are created automatically with an enumeration. Shared declarations are also created
in the master data library when a new multiproject is created.
The enumeration with the name “Operating State” is intended to automatically hide messages
but does not contain any values.
An enumeration can be generated in the following ways:
● By creating it in COMOS Integrated Engineering and subsequently importing it into PCS 7.
When imported into PCS 7, enumerations are stored in the folder "Shared Declarations >
Enumerations" of the master data library. The enumerations in the project are not
automatically synchronized in this case. Instead they are included in the comparison in the
data transfer dialog and can also be adapted by this.
Alternatively, the enumerations can be synchronized in master data library and project by
the user. You can find more information on synchronization in the section "Updating shared
declarations in the multiproject (Page 167)".
● Creation in the master data library or project.
This setting is described below.
Principle of creation
You can create a new enumeration in the master data library or project by selecting the “Shared
declarations” folder and selecting the shortcut menu command Insert New Object >
Enumeration. Alternatively, you can use the menu command Insert > Shared Declarations >
Enumeration.
You can change the object name and the display name in the object properties of the
enumeration.
You can specify the object name of the enumeration so that it matches the value of the system
attribute "S7_enum" of the block I/O for which this enumeration will be used.
Note
In the object properties of a block I/O or in the process object view, the "Enumeration" box is
active when the system attribute "S7_enum" is assigned to the I/O. It does not matter whether
the value of the system attribute matches the existing name of the enumerations in the project.
You can assign the required enumeration to the I/O at any time using a drop-down list.
The display name of the enumeration can be translated into different languages and is
transferred to WinCC when you compile the OS.
When you create the enumeration, "0.1" is entered automatically as the version. You can
change the version in the object properties of the enumeration.
You can assign any number of values to the enumeration. For enumerations that will be used
for I/Os with the data type BOOL, only two values are practical.
Inserting values
You create a new value using the shortcut menu command Insert New Object > Value or the
menu command Insert > Shared Declarations > Value.
The first value to be entered contains the numeric value 0. This number is incremented with
each additional value added.
The display name of the value is displayed in the object properties of the block I/Os under
"Value". You can select each existing value of an enumeration there from a drop-down list.
If you want to identify the enumeration in SIMATIC BATCH for a control strategy, select the
“Control strategy” option in the "Properties Enumeration” dialog box, “General” tab. When you
select the option, the symbol of the enumeration and the value changes its appearance.
Checking plausibility
You can check any enumerations in the multiproject/project to ensure that the enumeration
values are unique, in other words, that they have not been assigned more than once.
You can find additional information on this in the section "Checking the plausibility of shared
declarations (Page 168)".
Inserting a unit
Create a new unit by selecting the "Units" folder and the shortcut menu command Insert New
Object > Unit. Alternatively, you can use the menu command Insert > Shared Declarations >
Unit.
If you want to undo a change to the units or remove added units, insert the "Units" folder again.
The content of the existing folder is then overwritten with the basic set from CFC.
The object name is the text that is displayed as the unit. In the object properties, you can change
the following:
● Name
● Version
● Author
● Comment
Procedure
1. Select the multiproject, followed by the shortcut menu command Shared Declarations >
Update in Multiproject.... Alternatively, you can select the menu command Options > Shared
Declarations > Update in Multiproject... .
A dialog box opens where you can select the type of update.
2. Select either a) "Merge the shared declarations of all projects in the multiproject" or b)
"Export shared declarations of a project to another project".
a) Merge the shared declarations of all projects in the multiproject
– Click "OK" to start the update.
b) Export shared declarations of a project to another project
– Select the project (or library) in the list that you want to use as a template for exporting
the shared declarations to another project.
– Click "OK".
Another dialog box opens. It lists all the projects that are available for selection as the
destination project.
– If you do not want the shared declarations of the template project to be transferred to a
specific project, you must remember to deselect the project concerned.
– Click "OK" to start the export.
Note
Please observe the following information:
● A master data library may only be used as the source of an update.
● Changing names for units, enumerations or equipment properties in the template
causes these to be created new in the target project when the comparison is made.
The previously used shared declarations are retained at the points of use.
● Units, enumerations or equipment properties deleted in the template are ignored
during the comparison in the target project and are therefore retained there.
Result
Once the update is complete, the result is displayed in the form of a message. In the event of
an error, a full log will be generated.
You can view the full log by selecting the shortcut menu command Shared Declarations >
Display Full Log....
Plausibility check
You can check any enumerations in the projects and libraries of a multiproject to ensure that the
enumeration values are unique, in other words, that they have not been assigned more than
once.
You perform this plausibility check for each individual project or a library. When an update in the
multiproject is performed, consistency is checked across the entire multiproject as a matter of
course.
If you select a multiproject, all the projects and libraries within this multiproject will be checked
one after the other.
To initiate the check, proceed as follows:
1. Select a multiproject, a project or the shared declarations.
2. Select the Shared Declarations > Validate command from the shortcut menu.
Introduction
Messages are generated on the CPU during process runtime and need to be passed on to the
WinCC operator control and monitoring system.
Via the message configuration in CFC you can define event-relevant messages, edit their texts
and assign attributes directly in the block.
In your AS configuration you have already specified data required on the OS for OS-AS
communication, in other words, for operator control and monitoring. You transfer this data to the
OS during OS compilation.
Message blocks
After you have inserted a message block into the CFC, a message will be generated
automatically. This block has a predefined message structure with default attributes and
message texts. In this way, the CPU sends the appropriate message from the AS when an
event occurs without additional configuration on the part of the user. The signals that form
messages can also be assigned associated values, which allow the input of dynamic values in
message texts.
You can edit those attributes, such as message class, message type, and message texts for
each block instance via the message configuration functions (Special properties: "Messages").
If the "Messages" button is disabled, the block does not have message capability.
The variants of a block icon can be distinguished by the "/" character at the end of the icon
name, for example, <icon name>/2 ".
Variant Remark
1 Standard style PCS 7
2 Style similar to APL style.
Also read the note below!
<Variant name> User-defined variants;
user-defined variant name as the name of a block icon; max. 16 characters
The input field is active if the "Create block icon" check box is selected. The input field is
disabled if you clear the "Create block icon" check box. However, the entry is retained.
Note
Templates of block icons and their versions
The templates of the basic block icons and their variants are located in the
"@PCS7TypicalsBasisLibraryV8.pdl" picture. As described in the table, variant "2" in this
picture means that the style of variant "2" is similar to the style of the APL!
The icons in this picture should not be confused with the icons for the APL, since the block icons
and variants of the APL are found in the "@PCS7TypicalsAPLV8.pdl" picture.
AS <-> OS communication
After you have configured the messages, the OS data required for AS <-> OS communication
will be downloaded to one or several target operator stations where they are used by graphic
objects or faceplates.
The "AS-OS Engineering" software package must be installed to enable this transfer. Start the
compilation in the SIMATIC Manager using the menu command Options > "Compile Multiple
OSs" wizard > Start... or, for a single OS, using the menu command Edit > Compile.
Note
Note than when you assign names to charts/blocks, the string length of the variable name must
not exceed 128 characters for OS compilation. This name is made up of the following
components:
● The name of the folder in the hierarchy path
● The chart name
● The block name
● The separator (period)
● The I/O name
Introduction
In CFC, you can select the block I/Os intended for operator control and monitoring (system
attribute S7_m_c := 'true') for archiving in WinCC.
The I/Os identified as being relevant for archiving are created as archive tags during
compilation of the OS in the OS project. If it does not already exist, a process value archive is
also created automatically.
Requirement: In the "Compile (Multiple) OSs" wizard, the option "Archive tags" is selected and
in the object properties of the OS, the setting "Create/update archive tags" is selected.
If an I/O relevant for archiving is deleted later or is changed to "No Archiving", the corresponding
archive tag is deleted the next time you compile the OS.
If there are no more archive-relevant I/Os available, the process value archive is deleted, if it
also contains no more archive tags.
Configuration
You identify tags for archiving in the object properties of the I/O (for a single I/O) or on the "I/Os"
tab in the object properties of the block (for multiple I/Os).
In the drop-down list of the input field, you choose whether and how the I/O will be archived:
● "No Archiving" (S7_archive := 'false')
The I/O will not be archived (any longer).
● "Archiving" (S7_archive := 'shortterm')
The I/O will be archived on the OS or on an archive server.
● "Long-term archiving" (S7_archive := 'longterm')
The values archived on the OS or on the archive server will be stored for long-term archiving
on CD, DVD, MOD, tape, etc.
The system attribute S7_archive is permitted for all OCM-capable I/Os of the data types BOOL,
BYTE, WORD, DWORD, INT, DINT, and REAL.
Note
If a new block type is used in a project, the existing block instances remain unchanged in terms
of the system attribute "S7_archive". New instances of the block type will inherit this attribute.
Introduction
The enterprise levels MIS and MES require specific information from the automation level. To
ensure that only information relevant for MIS/MES is transferred, the projects can be created
with a suitable filter.
The system attribute "S7_mes := "true"" is used as the filter. It is set for blocks and block I/Os
intended for operator control and monitoring (S7_m_c := "true"). The system attribute is
specified by the block type and can be modified in the block instances.
Configuration
You have the following configuration options:
● In the "Blocks" dialog box, "General" tab, you can activate or deactivate the entire block for
the MIS/MES system by selecting or deselecting the "MES-relevant" check box. The option
can only be changed when "OCM possible" is set.
● You modify the system attribute for I/Os that can be operator controlled and monitored as
follows:
– For several I/Os: In the "Properties - Block" dialog box, in the "I/Os" tab
– For a single I/O: In the "Properties - Input/Output" dialog box
Note
When you create a new chart, a runtime group is created automatically in which all the blocks
of this chart are integrated.
Note
When you create a new chart, a runtime group is created automatically in which all the blocks
of this chart are integrated.
Runtime groups
Runtime groups are used for structuring tasks. The blocks are installed sequentially in the
runtime groups and can be assigned "reduction ratio" and "phase offset" attributes in the
"Object Properties" dialog box.
You can find additional information on attributes in the section "Runtime attributes (Page 197)".
Runtime groups can be enabled and disabled individually (for example, by a block output of the
"BOOL" data type). The blocks of a disabled runtime group will not be executed.
You can find additional information on this in the section "How to create, edit and delete runtime
groups (Page 186)".
Chart-based runtime group management
With the "chart-based runtime group management", the blocks of a CFC are automatically
managed in separate runtime groups based on the chart, i.e. the blocks of the CFC are
organized in runtime units that are permanently assigned to this CFC.
You can find additional information on this in the section "Chart-based runtime group
management for blocks of CFCs (Page 192)".
Additional information
You can find more information about runtime properties in:
● Displaying runtime properties (Page 175)
● Modifying the run sequence and the installation pointer (Page 182)
● Concept and use of installation pointers (Page 179)
See also
Display of feedback in the signal processing (dead time) (Page 177)
Introduction
There are various ways in which you can display information on runtime properties:
● Of a single block
● Of the entire CPU
Entire CPU
You can obtain a complete view of the run sequence as follows:
1. Double-click the runtime properties box in the block header.
The runtime editor is started and the task in which the block is installed (first insert position)
opens in the run sequence window. The relevant block is highlighted.
2. Select the menu command Edit > Run Sequence...
or
Click the icon:
The runtime editor opens with the window of the run sequence. If a block was selected, the
task in which the block is installed (first insertion position) is opened in the run sequence.
The relevant block is highlighted.
In this window, you can also edit the run sequence.
3. Select the menu command Options > Chart Reference Data...
or
Click the icon:
An application is started with its own window and menu commands/toolbar buttons.
The "Run Sequence" view shows the complete run sequence of the current CPU with
comments and runtime attributes.
You have the following options for enabling the "Run Sequence" view:
– With the menu command View > Run Sequence
– By clicking the icon:
The tasks containing the objects are open. You can print out a list of the run sequence.
In this window, you cannot edit the run sequence.
Definition of terms:
Feedback in an interconnection occurs when the function/block with the interconnection target
is arranged before the function/block of the interconnection source in the program sequence
(run sequence).
Undesired feedback leads to downtimes in the signal flow or incorrect calculation results.
Overview
The sequence of the blocks is checked during manual insertion of an interconnection between
blocks. When the "Avoid implicit dead time" function is enabled, the run sequence, when
possible, is automatically corrected in order to resolve detected feedback in the interconnection
and therefore avoid dead times in the signal processing.
● Principle of correction:
Basically, a distinction is made between the following optimization functions:
– Optimization of groups (Optimize groups/tasks...) including all blocks in the runtime
editor.
This optimization is started in the runtime editor in the context menu of a runtime group
using the menu command "Optimize groups/tasks".
– Parallel procedure during an interconnection process for avoiding feedback / dead times.
For this parallel procedure for avoiding feedback / dead times, the "Avoid implicit dead
times" must be activated in the CFC Editor.
This function is described below.
● Check:
With a manual interconnection process, a check is first carried out whether a feedback path /
dead time occurs.
A detected feedback path / dead time is graphically displayed with a symbol on the input side
of the interconnected block at the respective interconnection.
Note
Even if the "Avoid implicit dead times" function is deactivated, the check is performed on the
feedback path and a detected feedback path is displayed at the interconnection.
● Automatic correction:
If a feedback path is detected and the "Avoid implicit dead times" function is activated, the
blocks involved are then exchanged accordingly in their run sequence if they are in a shared
runtime group.
If the blocks involved are not all in a runtime group, a correction is then performed.
Feedback detected is then implicitly resolved during the interconnection process.
● No automatic correction:
Even if the "Avoid implicit dead times" function is activated, no correction of the run
sequence is performed during the interconnection process, if no feedback or an irresolvable
feedback is detected.
If the feedback cannot be resolved, this is indicated by the symbol described below.
● Objects involved:
The procedure for avoiding feedback paths / dead times takes the following objects into
consideration:
– The two blocks involved in the new interconnection.
– All dependent, i.e. interconnected blocks which constitute an isolated group without
external dependencies.
– Blocks which were already moved in the run sequence can still be taken into
consideration when feedback paths / dead times are eliminated, if they continue to
constitute an isolated group of interconnected blocks without external relationships.
● Objects that are not involved:
– F programs generally are not involved in the correction procedure.
– Already existing interconnections, with or without feedback, generally remain
unchanged in terms of their state, i.e. the relative run sequence of already
interconnected blocks remains unchanged.
Note
Notes on the "Avoid implicit dead times" function when working in CFC
Before working in the CFC editor, check the setting of the "Avoid implicit dead times" function
in the menu command or on the icon in the toolbar. If necessary, deactivate the function to avoid
undesired automatic corrections.
The current status is displayed on the left of the menu item or on the symbol of the toolbar.
Displaying feedback
Feedback is graphically displayed to the user:
● The following symbol is shown on the input side of the interconnected block at the respective
interconnection in the CFC.
This gives the user visual feedback during the interconnection process.
You can find additional information on this in the section "Layout of interconnections
(Page 76)".
User response
To delete the status display for the feedback, you need to check and adjust the run sequence
of the blocks in the runtime editor.
Note
The graphic display of feedback is a configuring tool for the user.
Feedback that occurs in the CFC may be desired/required. It may also not be resolvable due
to the system, or only by removing the interconnection.
Provided the user does not specify otherwise in the installation pointers, charts are inserted as
follows:
● New charts are inserted after existing charts.
● Blocks are inserted in the chart directly one after the other.
Other advantages:
● The insertion position cannot be adjusted unintentionally by project engineers during chart-
oriented multiuser engineering.
● There is no need to modify the complete OB when a chart is modified. Rather, only the
corresponding runtime group of the modified chart is compiled and loaded.
● The load performance of the CPU can be influenced according to the specific chart.
● Individual charts can be enabled/disabled during CPU runtime (also in test mode), without
the need to initialize this action by means of an external control (for example, SFC).
The block installation pointer is "undefined" in an empty chart. Instead, the chart installation
pointer will be displayed in the status bar. After insertion of the first block, this information is
fetched from the current chart installation pointer.
The block installation pointer is customized only in the CFC Editor (not in the runtime editor).
The default start position (after a new chart was created) is the beginning of the automatically
generated chart runtime group.
You customize the block installation pointer as follows:
1. Select a block from the chart.
2. Select the menu command Edit > Predecessor for Insertion Position.
If you insert an additional block in the chart, the installation pointer is moved to this block. It
becomes the new "Predecessor for Insertion Position".
Note
Behavior of the block installation pointer during copying and pasting
With standard functions, e.g. AND, OR, etc., the block installation pointer behaves as it does
during copying to the CFC when it is inserted, for example from the template catalog.
When blocks are copied to the CFC, they are always copied to the end of the runtime group.
The block installation pointer is not included in this process and remains unchanged.
Additional information
You can find information about migration in the section: Migration of old projects to the
enhanced runtime model (Page 38)
This window is split into a hierarchy window (left) and a detail window (right). The structure of
this window is similar to that of Windows Explorer and is handled in the same way.
Moving objects
To move an object (chart, runtime group or block), select it in the window (right or left pane) and
then drag it to the object after which you want to install it.
When you drag an object to a runtime group:
● The object is installed at the first position within the runtime group if the tree is expanded [-].
● The object is installed after the runtime group if the tree is closed [+].
● If the runtime group is empty, you will be asked whether or not to install the block within the
runtime group. If you click "Yes", it is installed inside, if you click "No", it is installed after the
runtime group.
Any object you drag to a block/chart within the runtime group is inserted after this block/chart.
When you drag an object to a task, it is inserted before the existing installed objects.
Note
When you move blocks, verify that – according to runtime model V6.0 and higher – all chart
blocks exist only in their corresponding runtime group. If you move them to another group, the
chart-oriented structure would no longer exist, making segmented editing of charts harder or
impossible for multiuser engineering.
Removing a block
You can only delete blocks from a task if they are installed more than once in the run sequence.
At least one insertion point must be retained. Removal is denied if only one block was inserted.
Otherwise, the block is deleted and the run sequence of the next blocks is adapted accordingly.
Inserting blocks
You can install several instances of the blocks and runtime groups in different tasks using the
copy / paste function. Use either the corresponding menu commands, or the toolbar buttons, or
drag-and-drop while holding down the <Ctrl> key (for additional information, refer to the
"Moving objects" section).
You can also install blocks (if you have the windows displayed simultaneously) by dragging
these directly from a CFC to the required position in the run sequence.
Note
Please observe the following information:
● Installation of a block in different tasks implies that you should not install several instances
of the block in a cyclic task. However, the system does not prevent this installation.
● The objects with system identifier "@" which were inserted automatically in the run
sequence during generation of the module drivers may only be edited using the Options >
Charts > Generate Module Drivers... function in the SIMATIC Manager; these objects may
neither be moved nor deleted manually.
Purpose of optimization
This function is used to optimize the program run sequence according to the data flow in order
to reduce dead times to a minimum during program runtime in the CPU. Tasks and runtime
groups are optimized separately.
Start
To start the optimization process, in the runtime editor, select the menu command
● Options > Optimize Run Sequence to optimize the entire run sequence.
Alternatively, if you only want to optimize the selected task or runtime group, open the shortcut
menu with the menu command
● Optimize Groups/Tasks.
Note
When the block is connected via the INOUT parameter, the data flow may be reversed from the
input to the output. This cannot be taken into account during optimization of the run sequence.
Remedy: In this case, you have to optimize the run sequence manually and remove the
corresponding runtime group from the optimization.
Procedure
In the runtime editor you can search for the insertion positions of an object as follows:
1. Select the menu command Edit > Find....
A dialog box opens.
2. Use the option buttons to select the search object (task, group, SFC, or block).
You can enter the full name or only its initial letter(s).
Result
The search result is displayed in a window. If no object matching the search key was found, a
message is displayed.
● You can arrange tasks containing a large number of installed blocks in smaller units. In the
improved runtime model V6.0 and higher this is achieved by automatic and chart-granular
insertion of chart blocks in the runtime groups (one chart per runtime group).
Advantage: Instead of creating one "large" FC when you compile each task, "smaller" FCs
are created, depending on the number of runtime groups.
If the program is modified later, only the runtime groups/FCs that actually contain modified
blocks are given the "modified" ID. That is, the time required for compiling changes and
downloading changes online will be reduced considerably.
● All blocks with startup relevance are installed in runtime groups in OB 100.
When the blocks are installed, there is a search for existing runtime groups. If none are
found or if the maximum number of blocks for this runtime group has been reached, a new
one is created. The names of the runtime groups are created generically, for example
"@@OB100@@(2)".
You can assign runtime attributes to objects you have inserted in the runtime groups. You can
find additional information on this in the section "Runtime attributes (Page 197)".
Runtime groups in chart-based runtime group management
With the "chart-based runtime group management", the blocks of a CFC are automatically
managed in separate runtime groups based on the chart, i.e. the blocks of the CFC are
organized in runtime units that are permanently assigned to this CFC.
No block of another CFC can be included in the runtime groups of this CFC. This reduces the
dependencies for selective downloading.
When instantiating blocks with startup characteristics during creation of a chart, a
corresponding runtime group is automatically created in the startup task OB 100 in addition to
the runtime group in the standard task (for example, OB 1) .
Recognition of a CFC in which chart-based runtime group management is activated:
● You can recognize the assignment of the runtime group to the CFC with chart-based
runtime group management by the fact that the name of the associated CFC in the runtime
group is in parentheses in the runtime editor.
● For CFCs with chart-based runtime group management, the "Chart-based insertion" option
is selected in the properties of the chart folder or the CFC.
Integration and migration of CFCs:
● When the "Chart-based insertion" option is selected in the properties of the chart folder,
chart-based runtime group management is automatically activated when a new CFC chart
is created.
● For PCS 7 projects created as of version PCS 7 V8.1, this "Chart-based insertion" option is
automatically enabled. For an existing PCS 7 project that was created with a version prior
to V8.1, this option only works on newly created charts after the option has been enabled.
● Chart-based runtime group management is not automatically activated for existing CFCs.
To activate chart-based runtime group management in existing CFCs, the menu command
"Charts > Chart-based runtime group management" is available in the SIMATIC Manager
from the shortcut menu of the chart folder or individual charts. The associated runtime
groups are also adapted automatically.
You can find additional information on chart-based runtime group management and migration
of existing CFCs in the section "Chart-based runtime group management for blocks of CFCs
(Page 192) ".
The runtime editor opens and displays the run sequence window.
2. In the left window, select the task in which you want to install the runtime group or an object
as the default insertion position for the runtime group.
3. Select the menu command Insert > Runtime Group....
The "Insert Runtime Group" dialog box opens.
Note
If the name already exists during copying:
If you copy a runtime group and paste it, the chart name suffixed with "(x)" (where x is 1, 2, 3,
4, and so on) is assigned as the name of the copied runtime group.
For example:
If there exists a runtime group named "ChartName" and if you create a copy of this runtime
group, the copied runtime group is named as "ChartName(1)" because the name "ChartName"
already exists. Further, if you paste it again (create another copy), the next copied runtime
group is named as "ChartName(2)". But if you create a copy from the "ChartName(2)" runtime
group then the copied runtime group will be named as "ChartName(2)(1)".
Note
If the maximum length of the name is exceeded during copying:
If you copy a runtime group which is named with 22 characters (maximum length) and paste it,
the name of the copied runtime group is shortened from the end of the string until "~(x)" can be
appended (where x is 1, 2, 3, 4, and so on).
For example:
If there exists a runtime group named "ChartNameMotorControlA" (22 characters) and if you
create a copy of this runtime group then the copied runtime group is named as
"ChartNameMotorCont~(1)".
By the general rules of naming in the case where the name already exists, the new name should
have been "ChartNameMotorControlA(1)" (25 characters) but this exceeds the maximum
permitted length of 22 characters. Therefore, the name is shortened to 22 characters with the
methodology explained above.
Note
Renaming a runtime group
● If you rename a runtime group, the chart name will not change.
● If you rename a chart, the new chart name is assigned as the name of the standard runtime
group.
Note: In the case of non-chart-based (unmanaged) runtime groups, this is applicable only
until the standard runtime group is renamed. Once the standard runtime group of an
unmanaged chart is renamed, renaming of chart will not have any effect on the runtime
group name.
Overview
During configuration, the blocks of a CFC are automatically installed in a cyclic task for the
"standard program". In addition, the blocks are installed in the corresponding runtime groups in
accordance with the task list of the block type.
The CFCs and runtime groups are defined independently of one another, because the runtime
groups in which the block calls are programmed have no clear reference to a CFC. This is true
even if, when you create a CFC, a corresponding runtime group is implicitly created and an
"installation pointer" to the runtime group or a block in this group is set.
It is also not guaranteed that exclusively the blocks of one CFC are included in an runtime
group.
Chart-based runtime group management
With the "chart-based runtime group management", the blocks of a CFC are automatically
managed in separate runtime groups based on the chart. This means the blocks of the CFC are
organized in runtime units that are permanently and exclusively assigned to this CFC.
● This requires that "Chart-based insertion" is enabled in the properties of the chart folder or
the CFC. You can find additional information on this in the paragraph below, "Integration of
new CFCs ...".
● Assignment of the CFC to the runtime group:
For a CFC with chart-based runtime group management, the runtime group for the
"standard program" has the same name as this CFC.
You can recognize the assignment of the runtime group to the CFC by the fact that the name
of the associated CFC in the runtime group is in parentheses in the runtime editor.
No block of another CFC can be included in the runtime groups of this CFC.
The corresponding runtime groups are created depending on the blocks used in the CFC.
Using F-blocks:
When F-blocks are also used in a CFC with chart-based runtime group management, not only
is a runtime group for blocks automatically created in the "standard program", but also a runtime
group for the included F-blocks, the "F-program".
● It is no longer necessary to manually move the F-blocks to a separate runtime group in this
case.
● The name of the runtime group for the F-blocks contains the name of the CFC and the suffix
"_F".
Chart-based runtime group management is not activated for the corresponding CFC.
Chart-based runtime group management is not activated for the corresponding CFC with F-
blocks.
Chart-based runtime group management is activated for the corresponding CFC with F-
blocks.
Integrating, migrating and managing CFCs in the chart-based runtime group management
● Integration of new CFCs
When the "Chart-based insertion" option is selected in the properties of the chart folder,
chart-based runtime group management is automatically activated when a new CFC is
created.
For PCS 7 projects created as of version PCS 7 V8.1, this "Chart-based insertion" option is
automatically enabled. For an existing PCS 7 project that was created with a version prior
to V8.1, this option only works on newly created charts after the option has been enabled.
When enabled in the properties of the chart folder, this option has an effect on all charts in
the chart folder.
● Migration of existing CFCs
Chart-based runtime group management is not automatically activated for existing CFCs.
The menu command "Charts > Chart-based runtime group management" is available for
this purpose in the SIMATIC Manager from the shortcut menu of the chart folder or individual
charts. The associated runtime groups are also adapted automatically.
The entire chart folder or several selected charts can be migrated.
As of PCS V6.x, runtime groups have been created automatically in the OB 100 in addition
to the cyclic runtime groups. A maximum of 10 blocks were placed in these runtime groups.
To reduce the dependencies in a selective download, the runtime groups in OB 100 should
be created or re-sorted based on the chart. The effort required for switching to the chart-
based runtime group management is less than in previous versions. Nevertheless,
beforehand you should determine if reducing dependencies for selective downloading
justifies the effort required for resorting the existing runtime groups in OB 100.
Note
Runtime groups after the migration
During migration of CFCs to the chart-based runtime group management, the associated
runtime groups are also adapted automatically. This step can also result in runtime groups
that are empty and are not included in the chart-based runtime group management. These
runtime groups are not automatically deleted in OB 1 and OB 100. You can delete empty
runtime groups in the CFC runtime editor via the menu item "Edit > Delete Empty Runtime
Groups".
Empty runtime groups are not created in the cyclic interrupts during migration, because they
are converted during migration.
● Deleting a CFC
If a CFC with activated chart-based runtime group management is deleted, all blocks and all
the associated runtime groups are deleted as well.
● Renaming a CFC
If a CFC with activated chart-based runtime group management is renamed, all associated
runtime groups are automatically renamed as well. All the names of the associated runtime
groups are formed by the CFC name and an appended number for this.
Note
Before the conversion, note that the chart-based runtime group management is required to use
the "Selective download" function for CFCs/SFCs.
Copying CFCs
When copying CFCs in the SIMATIC Manager, all runtime properties of the blocks contained
in the charts basically remain unchanged.
● When a CFC with chart-based runtime group management is copied, the chart-based
runtime group management remains activated for the copy of the CFC as well, even if the
"Chart-based insertion" option is not selected in the associated chart folder.
● When a CFC with deactivated chart-based runtime group management is copied, this
setting also remains deactivated in the copy.
Moving CFCs
In SIMATIC Manager, the behavior when moving CFCs with activated chart-based runtime
group management is similar to that described above for copying CFCs.
When moving CFCs in the plant hierarchy, only the assignment to the PH node is changed. The
moved CFCs themselves remain unchanged.
● Moving of the runtime group of a CFC without chart-based runtime group management to
the shutdown group of a CFC with chart-based runtime group management:
This change is not possible.
● Moving of the runtime group of a CFC with chart-based runtime group management to the
shutdown group of a CFC without chart-based runtime group management:
This change is not possible because there is no clear relationship between the destination
runtime group and a CFC.
Copying block calls:
● Copying block calls of the runtime group of a CFC with chart-based runtime group
management is only possible if the block calls are copied to a runtime group of an acyclic
task of the same CFC.
This is only useful if the blocks are to run in another acyclic task that is not included in the
task list of the associated block types.
● It is possible to copy block calls between the runtime groups of CFCs without chart-based
runtime group management.
● Copying block calls from the runtime group of a CFC without chart-based runtime group
management to the shutdown group of a CFC with chart-based runtime group management
and vice versa:
This change is not possible.
See also
Selective download of individual charts (Page 374)
Attributes
A runtime group is assigned the following attributes:
● Enable Attribute (Page 439)
● Reduction ratio (Page 446)
● Phase offset (Page 441)
The runtime group passes these attributes on to all the objects it contains.
The attributes are assigned when the runtime group is created. The reduction ratio and phase
offset can also be modified later in the object properties. The enable attribute can be controlled
via an interconnection.
NOTICE
Using reduction ratios and phase offsets
Whenever possible, only use the reduction ratio and phase offset in tasks that run in defined
cycles, in other words in cyclic interrupts. Handle all other tasks very carefully, particularly the
hardware interrupt OBs and any special OBs. Here, you should not change the default
reduction ratio=1 and phase offset=0.
Introduction
In CFC, blocks that are not executed are identified visually. This is done in the runtime
properties field in the block header.
Edit mode
In edit mode (offline), the blocks are identified as follows:
● Block is executed (no identification)
Test mode
In test mode (online), the CFC obtains the enable values of the blocks and runtime groups and
uses them to control the display. Here, there are two states:
● Block is executed
(no identification) if the EN of the block and the EN of the group are set to "1".
● Block is not executed
(red field with an exclamation point) if the EN of the block or the EN of the group is set to "0".
Note
In the CFC editor, you can use the "Copy/Move" menu command under the menu entry
"Options" > "Customize" to open the "Settings for Copying/Moving“ dialog box. This dialog box
enables you to control the behavior when copying/moving blocks and charts.
Introduction
You can configure control module types and control modules in the same way as process tag
types and process tags. Control modules and their types offer the following advantages:
● Synchronization is available when there are differences between the type and instance.
Instance-specific extensions are managed as such and are not lost when the type and
instance are synchronized. Changes can therefore be bumplessly loaded in the automation
system.
You can find more information on synchronization in the section "Relevant attributes for
synchronization of control module types and their instances (Page 221)".
● A control module type can include optional blocks. If different instances of a control module
type are created, the optional blocks can be inserted into different instances in different
versions.
● The use of control module types and control modules enables extended data exchange with
Advanced ES and COMOS Integrated Engineering.
Components of a control module type
A control module type consists of:
● the technological interface.
This can optionally contain the following objects:
– Sub control modules; possibly more than one
– Control variables; including possibly more than one of the following objects:
Parameters
Signals
– Messages; several are possible
– Commands; several are possible
– Statuses; possibly more than one
● The assigned CFC with its possible components, for example, blocks, subcharts.
You can find additional information on this in the section "Overview of data objects of the
equipment module and control module (Page 266)".
$XWRPDWLRQLQWHUIDFH
'DWDH[FKDQJHZLWK
&2026
&RQWUROPRGXOH
LQVWDQFHV
7\SHRIDFRQWURO
&UHDWLQJQHZ PRGXOH
LQ3&6SURMHFW
6,0$7,&0DQDJHU
0DVWHUGDWDOLEUDU\
Note
If the name already exists during copying:
If you copy a chart and paste it, the chart name suffixed with "(x)" (where x is 1, 2, 3, 4, and so
on) is assigned as the name of the copied chart.
For example:
If there exists a chart named "ChartName" and if you create a copy of this chart, the copied
chart is named as "ChartName(1)" because the name "ChartName" already exists. Further, if
you paste it again (create another copy), the next copied chart is named as "ChartName(2)".
But if you create a copy from the "ChartName(2)" chart then the copied chart will be named as
"ChartName(2)(1)".
Note
If the maximum length of the name is exceeded during copying:
If you copy a chart which is named with 22 characters (maximum length) and paste it, the name
of the copied chart is shortened from the end of the string until "~(x)" can be appended (where
x is 1, 2, 3, 4, and so on).
For example:
If there exists a chart named "ChartNameMotorControlA" (22 characters) and if you create a
copy of this chart then the copied chart is named as "ChartNameMotorCont~(1)".
By the general rules of naming in the case where the name already exists, the new chart name
should have been "ChartNameMotorControlA(1)" (25 characters) but this exceeds the
maximum permitted length of 22 characters. Therefore, the name is shortened to 22 characters
with the methodology explained above.
You can find information on creating a new control module type in the section "How to create
a control module type (Page 207)".
Information on creating control module types using migration can be found in the "Process tag
type migrator help".
Requirement
You have created a multiproject with a master data library using the SIMATIC Manager.
Procedure
To create a control module type in the SIMATIC Manager, follow these steps:
1. Open the library in the project.
2. Use the menu command View > Plant view to change to the plant view
3. Right-click a folder to select the menu command Insert new object > Control module type.
The control module type is inserted and assigned a default name by the system that you can
change to suit your purposes.
Result
The control module type has been created. You can specify the structure of the control module
type in a new window and assign the corresponding objects or attributes in the CFC.
You can find additional information on this in the section "Editing of control module types
(Page 208)".
Requirement
You have created at least one control module type. You can find information on creating a
control module type in the section "How to create a control module type (Page 207)".
new object. You can also insert a block from the CFC Editor to the hierarchy of the control
module with drag-and-drop.
Note
For configuring messages, refer to the note "Configuration note for messages of a control
module or sub-control module" in the section "Overview of data objects of the equipment
module and control module (Page 266)".
The attributes and assignments are located in the right section of the technological editor. The
attributes that are displayed depend on which object is selected in the left window. Depending
on the attribute, you can fill the text fields either with a free text per drag-and-drop from the CFC
Editor or from a drop-down menu. Boxes that are grayed out cannot be edited.
You can find more information on attributes in the section "Attributes and attribute values of a
control module (Page 212)".
Introduction
Commands and states can only be defined at the type of control module, not at an instance.
Commands and states are identified by a name and there can be more than one. They can be
selected and copied individually or collectively in the technological editor.
You can find more information about commands and states in the section "Overview of data
objects of the equipment module and control module (Page 266)".
Requirement
A control module type is created in the master data library.
Procedure
1. In the master data library, open the control module type in the CFC editor.
2. Select the icon for the control module type in the technological editor.
3. Select the "Insert new object" command from the shortcut menu.
All available objects are shown in the shortcut menu.
– Status
A lower-level "Parameter" object named "OUT" is created automatically for a new status.
This parameter has the BOOL data type and serves as the formal output parameter.
5. Select the icon for the "Command" or "Status" in the technological editor.
The associated attributes are displayed.
Configure the attributes, for example, the name, comment and author.
6. Select the icon for the "Command" or "Status" in the technological editor.
In the shortcut menu, select the menu command "Properties".
The "Properties" dialog box opens.
For "Command", the dialog has a similar structure to the dialog for step configuration; for
"Status", the dialog has a similar structure to the dialog for the configuration of transition
conditions.
7. Configure the desired conditions for the command or status.
You can also use the "Browse" button to open a selection dialog. All the parameters that can
be used, i.e. only the block I/Os that have an identifier "S7_contact = true", are displayed in
this dialog box.
Read the section titled "Special considerations for the implementation of specific
commands/statuses (Page 211)" for more information.
8. Select the desired parameter. Click the "Apply" button to apply the selected parameter in the
line previously selected of the "Properties" dialog box.
In the "Properties" dialog box, the next row of conditions is selected automatically and the
selection dialog box remains open. If needed, repeat this step to configure additional
conditions.
Click "Close" to close the selection dialog.
9. Click "Close" to close the "Properties" dialog box.
If required, a prompt for applying the configuration is displayed. Confirm this prompt.
Result
Commands and/or states are defined at the control module type.
Lower-level parameters may also have been inserted for these objects optionally.
A parameter named "OUT" is created automatically at the status.
Overview
Introduction
See also
Configuring a command or status at the type of the control module (Page 210)
Overview of data objects of the equipment module and control module (Page 266)
For signals:
Unit is relevant only for analog signals of "REAL" data type.
In addition to the text of the unit, a unique identification number
according to the standard "Profile for Process Control Devices" is
displayed in square brackets.
Forwarded automatically to the unit parameter of the related chan‐
nel block in CFC program.
For parameters:
Typically related to independent unit parameter of "INT" data type.
Parameter value has to be set preferably to a unique identification
number according to the standard "Profile for Process Control De‐
vices". Note that the “Unit” attribute is empty in this case.
Alternatively, the unit can be configured by text using the attribute
“Unit”. In this case, the “Value” attribute has to be set to 0. Note that
conventional parameters can only be configured by text using the
attribute “Unit”.
Operation identifier Can be edited No
Forwarded to the "Identifier" property of the assigned I/O.
The s7_shortcut attribute must be configured for this.
IO type Selection via drop-down menu No
Must match IO type of the assigned I/O.
Data type Selection via drop-down menu Yes
Must match data type of the assigned I/O.
Variable type "Signal" or "Parameter" (selection via drop-down menu). Yes
Forwarded to the assigned I/O.
Control module type Cannot be edited No
Note
It may not be possible to edit some attributes, because of dependencies to other attributes.
"Assignment" column
In this column, you can assign block I/Os from the CFC editor to the control variables
(“Parameter” and “Signal” objects) in the technological editor.
See also
Attributes of the objects of an equipment module (Page 288)
11.1.7 Comparing and synchronizing the type and instances of a control module
Introduction
The type and instance of a control module are identical when the instance is created.
Synchronization of the type and the instances may be required when changes are made to the
type or its associated instances.
Comparison and synchronization
During synchronization, all instances of a type in the project are compared to the corresponding
type in the master data library. This shows the differences between the types of the control
module and their instances (process engineering level) and between the associated objects,
such as CFCs (program level).
Attributes and relations that are relevant for synchronization become part of the comparison
result. Attributes and relations that are usually modified at the instance, on the other hand, are
excluded from the comparison and are not displayed in the comparison result.
The display of the comparison result is based on the instances of the control modules below the
plant hierarchy nodes. In addition to the objects mentioned above, you therefore also see the
higher-level objects of the control modules in the comparison dialog box. These serve merely
as a navigation or orientation aid.
Note
As of CFC V9.0, a VXM license as of V9.0 is required for type instance synchronization of
technological objects, e.g. control modules (CMT).
You can find additional information and notes on synchronization in the section "Notes on type
instance synchronization of technological objects (Page 343)".
Included objects
The following lower-level objects are included in the synchronization of the type and instances
of control modules on the plant level:
● Sub-control modules
● Control variables:
– Parameters
– Signal
● Messages
● Commands and status
Note
Behavior of symbolic texts of binary values during synchronization of control module types
The symbolic texts of binary values (BOOL data type) are only synchronized at the instance if
a text is entered for the "Text 0" or "Text 1" attribute at the type at the block parameter of a CFC
block, e.g. interlock block. If there is a space or an empty string at the block parameter at the
type for these attributes, "Text 0" or "Text 1" of this block parameter is not synchronized.
Procedure
1. Select the project in the plant view.
2. Open the shortcut menu and select the menu command "Plant types > Synchronize...".
The "Synchronize plant types" dialog box opens.
3. Select the desired types of control modules or equipment modules as well that you want to
compare and synchronize in the left column of the table.
4. Click the "Synchronize..." button to start the comparison.
Only relevant attributes and relations are included in the comparison. You can find
additional information on this in the section "Relevant attributes for synchronization of
control module types and their instances (Page 221)".
Result
A comparison of the types of control modules and their instances has been performed and
selected instances have been synchronized.
You can find more information on type/instance synchronization in the section "Effect of
changes to the type/instance synchronization with control modules (Page 223)".
11.1.8 Relevant attributes for synchronization of control module types and their instances
Introduction
An identity check of the type and its instances is performed to synchronize control modules and
their types. This check is limited to attributes and relations that may not be modified at the
instance according to the type instance concept.
Precisely these attributes and relations are compared for the synchronization between type
and instances to ensure compatibility and conformity.
Comparison and display of result
Attributes and relations that are relevant for synchronization become part of the comparison
result. Attributes and relations that are usually modified at the instance, on the other hand, are
excluded from the comparison and are not displayed in the comparison result.
The data transfer dialog is available in PCS 7 to display the comparison result and for
synchronization. The actual synchronization process is started in this dialog.
The display of the comparison result is based on the instances of the control modules below the
plant hierarchy nodes. In addition to the objects mentioned above, you therefore also see the
higher-level objects of the control modules in the comparison dialog box. These serve merely
as a navigation or orientation aid.
See also
Basic information on control modules and their types (Page 203)
Overview
Blocks, interconnections, I/Os and messages, for example, can be added, edited or removed
from existing and instantiated control modules. These changes can be passed on to the
existing, corresponding instances of the control modules by executing a synchronization.
The response during synchronization depends on:
● The type of change (parameter value, interconnection)
● The location of the change (type or instance)
● The attributes of the modified parameters:
– Parameters in the technological I/Os
– "S7_m_c" attribute for OS-relevant parameters
– Other attributes, e.g. Comment, etc.
Note
System behavior when synchronizing type and instances of control modules
You can find detailed information on system behavior during synchronization between type and
instance of control modules at http://support.automation.siemens.com under the entry ID
99861834.
NOTICE
Objects and properties not mentioned
For objects and properties that are not mentioned in this description, it must be verified
whether these objects and properties comply with the requirements of the project before a
type instance synchronization is performed in a project.
Note
Restrictions regarding the insertion positions
If an object is newly inserted in the type and placed at the first position in a separate runtime
group, the new object in the instance is installed incorrectly after the type/instance
synchronization.
If an object is newly inserted in the type, configured as "optional" and placed at any given
position in a separate runtime group, the object is incorrectly installed when the variant is
activated in the instance.
The insertion positions need to be checked after the synchronization in the instances and
adjusted if necessary!
Introduction
This section provides an overview of the signal processing and interconnection of hardware
signals (IO tags) to signals/parameters (CV) in control modules (CM).
Requirements
The following requirements apply for the signal processing in PCS 7:
● Only addresses of the process image are allowed (I, Q) as I/O addresses.
● A "HW signal" (IO tag) must be defined in the CFC editor for each input and output value to
be processed:
– The HW signal (IO tag) is represented in the CFC of a process tag by both the icon in the
sheet bar, e.g. "Feedback open", and the signal processing block, e.g. "Pcs7Diln".
– The name of the HW signal (IO tag) is determined by the sheet bar entry, e.g. "Feedback
open".
– For input values, the raw value of a HW signal (IO tag) must always be converted to a
normalized value with one signal processing block, the "Channel driver". The normalized
value is then made available at the corresponding output, e.g. "PV_Out", of the signal
processing device for further processing.
Vice versa for output values.
– Typically, only one signal processing block is used for each HW signal (IO tag).
The following figure shows an example of a hardware signal ("IO tag") for an input value.
6LJQDOSURFHVVLQJEORFN
3FV'L,Q
)HHGEDFN 6LJQDOIORZWREORFNVWR
RSHQ 39B,Q 39B2XW EHIXUWKHUSURFHVVHG
1 2
1 5DZYDOXH
2 1RUPDOL]HGYDOXHSURFHVV
+:VLJQDO,2WDJ YDOXH
IRUDQLQSXWYDOXH
Overview
Interconnection of a signal (CV) of a control module to a HW signal (IO tag)
An interconnection of a signal (CV) of a control module to a hardware signal (IO tag) can only
be made if the associated signal processing block (channel driver) can be determined.
The starting point of the interconnection is always a signal (CV) of a control module. The
interconnection target is an input or output of the associated signal processing block.
Interconnections of signals can be negated using the "Negation" attribute in the Technological
Editor.
The following block inputs or outputs can be connected to a HW signal (IO tag):
● Variant 1:
Hardware signal assignment to the input of a signal processing block (channel block):
In this case, the selected hardware signal is assigned directly to the input of a channel block.
This interconnection is achieved via signal (CV) in the Technological Editor.
Configuration:
– The input of a channel block is assigned to the signal (CV) by dragging-and-dropping the
channel block input from the CFC Editor to the “Assignment” field of the “Assigned I/O”
attribute in the Technological Editor.
– The symbolic name of a hardware signal is assigned to the signal (CV) by right-clicking
the “Attribute value” field of the “Signal” attribute and selecting a hardware signal in the
Technological Editor.
The signal attribute value of the signal (CV) determines the hardware signal. The I/O
assignment of the signal (CV) assigns the hardware signal to the input of the channel block.
This establishes an interconnection between the hardware signal and the input of a channel
block.
Example:
In the Technological Editor, the control module signal (CV) “FeedbackOpened” has the
following assignments:
– Input of the channel block (FbkOpen.PV_In) is assigned to the “Assigned I/O” attribute.
– Hardware signal (symbolic name: Feedback open) is assigned to the “Signal” attribute.
7HFKQRORJLFDOHGLWRU
$WWULEXWH $WWULEXWHVYDOXH $VVLJQPHQW
9DOYH/HDQ
$VVLJQHG,2 9DOYH/HDQ?)EN2SHQ39B,Q
)HHGEDFN2SHQHG
1DPH )HHGEDFN2SHQHG
6LJQDO )HHGEDFNRSHQ
&)&RIWKHFRQWUROPRGXOH
)EN2SHQ 9DOYH
3FV'L,Q 9OY/
)HHGEDFN
39B,Q 39B2XW )EN2SHQ &WUO
RSHQ
6LJQDOSURFHVVLQJEORFN 7HFKQRORJLFDOEORFN
● Variant 2:
Hardware signal assignment to the input of a technological block (drives, control, or
monitoring block):
In this case, the selected hardware signal is assigned to the input of a technological block
by determining the interconnected channel block. This interconnection is achieved via
7HFKQRORJLFDOHGLWRU
$WWULEXWH $WWULEXWHVYDOXH $VVLJQPHQW
9DOYH/HDQ
$VVLJQHG,2 9DOYH/HDQ?9DOYH)EN2SHQ
)HHGEDFN2SHQHG
1DPH )HHGEDFN2SHQHG
6LJQDO )HHGEDFNRSHQ
&)&RIWKHFRQWUROPRGXOH
)EN2SHQ 9DOYH
3FV'L,Q 9OY/
)HHGEDFN
39B,Q 39B2XW )EN2SHQ &WUO
RSHQ
6LJQDOSURFHVVLQJEORFN 7HFKQRORJLFDOEORFN
● Variant 3:
Hardware signal assignment to the input of a logical block:
In this case, the selected hardware signal is assigned to the input of a logical block by
determining the interconnected channel block. This variant is also used to enable an
interconnection to a hardware signal of another control module. The methodology of this
variant is same as described in Variant 2 if the logical block and the channel block are in the
same chart. If the logical block and channel block are in different charts, two control modules
are needed to make the interconnection.
Configuration:
– In the first chart (with a channel block and a technological block), the configuration is
same as described in Variant 2.
– In the second chart (with a logical block), the input of the logical block is assigned to the
parameter (CV) by dragging-and-dropping the logical block input from the CFC Editor to
the “Assignment” field of the “Assigned I/O” attribute in the Technological Editor.
– The symbolic name of the hardware signal is assigned to the parameter (CV) by right-
clicking the “Attribute value” field of the “Signal” attribute and selecting a hardware signal
in the Technological Editor.
An automatic interconnection is made between the output of the channel block from the first
chart and the input of the logical block from the second chart. This is because, the channel
block is already determined in the first chart and the same hardware signal is used in both
the charts. Therefore, the second chart (with the logical block) uses the output of the
determined channel block from the first chart for interconnection. In the second chart (with
the logical block), the I/O assignment of the parameter (CV) assigns the hardware signal to
the input of the logical block. This establishes an interconnection between the hardware
signal and the input of a logical block via the determined channel block.
Example:
In the first chart “ValveLean”, the configuration is same as described in Variant 2.
In the second chart “ValveLean1”, the control module parameter (CV) “Permit” has the
following assignments in the Technological Editor:
– Input of the logical block (Permit.In01) is assigned to the “Assigned I/O” attribute.
– Hardware signal (symbolic name: Feedback open) is assigned to the “Signal” attribute.
7HFKQRORJLFDOHGLWRU9DOYH/HDQ
$WWULEXWH $WWULEXWHVYDOXH $VVLJQPHQW
9DOYH/HDQ
$VVLJQHG,2 9DOYH/HDQ?9DOYH)EN2SHQ
)HHGEDFN2SHQHG
1DPH )HHGEDFN2SHQHG
6LJQDO )HHGEDFNRSHQ
7HFKQRORJLFDOHGLWRU9DOYH/HDQ
$WWULEXWH $WWULEXWHVYDOXH $VVLJQPHQW
9DOYH/HDQ
$VVLJQHG,2 9DOYH/HDQ?3HUPLW,Q
)HHGEDFN&ORVHG
3HUPLW 1DPH 3HUPLW
6LJQDO )HHGEDFNRSHQ
&)&RIWKHFRQWUROPRGXOH9DOYH/HDQ &)&RIWKHFRQWUROPRGXOH9DOYH/HDQ
)EN2SHQ 3HUPLW
3FV'L,Q ,QWON
6LJQDOSURFHVVLQJEORFN /RJLFEORFN
● Variant 4:
Hardware signal assignment to the input of a technological block in the case where channel
block is not connected to technological block directly:
In this case, the selected hardware signal is assigned to the input of a technological block
by inserting the input of a channel block as signal assignment to the input of the
technological block. This interconnection is achieved via signal (CV) in the Technological
Editor and interconnection between the technological block, an intermediate block, and the
channel block in the CFC Editor.
Configuration:
– An interconnection is made in the CFC Editor between the output of a channel block and
the input of an intermediate block, and then from the output of this block to the input of
a technological block.
– The input of the technological block is assigned to the signal (CV) by dragging-and-
dropping the technological block input from the CFC Editor to the “Assignment” field of
the “Assigned I/O” attribute in the Technological Editor.
– The symbolic name of the hardware signal is assigned to the signal (CV) by right-clicking
the “Attribute value” field of the “Signal” attribute and selecting a hardware signal in the
Technological Editor.
– The input of the channel block is inserted as signal assignment of the signal (CV) by
dragging-and-dropping the input of the channel block from the CFC Editor to the
“Assignment” field of the “Signal” attribute in the Technological Editor.
The signal assignment of the signal (CV) determines the channel block. The signal attribute
value of the signal (CV) determines the hardware signal which will be assigned to the input
of the technological block. The I/O assignment of the signal (CV) assigns the hardware
signal to the input of the technological block. This establishes an interconnection between
a hardware signal and the input of a technological block directly via the signal assignment
of the signal (CV).
Example:
In the CFC Editor, the output of the channel block (FbkOpen.PV_Out) is interconnected to
the input of the negation block (Negation.In) and the output of the negation block
(Negation.Out) is connected to the input of the monitoring block (Monitoring_DI.In).
In the Technological Editor, the control module signal (CV) “FeedbackOpened” has the
following assignments:
– Input of the technological block (Monitoring_DI.In) is assigned to the “Assigned I/O”
attribute.
– Hardware signal (symbolic name: Feedback open) is assigned to the “Signal” attribute.
– Input of the channel block (FbkOpen.PV_In) is inserted as the signal assignment in the
“Assignment” field of the “Signal” attribute.
7HFKQRORJLFDOHGLWRU
$WWULEXWH $WWULEXWHVYDOXH $VVLJQPHQW
9DOYH/HDQ
$VVLJQHG,2 9DOYH/HDQ?0RQLWRULQJB',,Q
)HHGEDFN2SHQHG
1DPH )HHGEDFN2SHQHG
&)&RIWKHFRQWUROPRGXOH
)HHGEDFN
39B,Q 39B2XW ,Q 2XW ,Q 2XW
RSHQ
Interconnection rules
There are certain rules are certain rules when interconnecting a signal/parameter (CV) of a
single controller to a HW signal (IO tag).
The following interconnections between signals/parameters (CV) of control modules are
supported:
● Parameter as input - parameter as output
● Parameter as input - signal as output
The following signals/parameters (CV) can be symbolically assigned to HW signals (IO tags)
via the "Signal name" attribute in the Technological Editor:
● Signal as input
● Parameter as input
● Signal as output
Interconnections of the "BOOL" data type or the assignments of digital hardware signals (IO
tags) can be negated.
11.1.11 Implementation of signal processing of hardware signals (IO tags) for control
modules in XML format
Introduction
Information about the signal processing blocks and the technological blocks is required for
signals in control modules to be able to support the interconnections of the signals of a control
module.
This information can be provided in XML format.
The following information is defined in XML format:
● Entries for all signal-processing blocks (so-called channel drivers)
In addition to the block definition, at least one "raw value" - "standardized value" assignment
is contained here.
● Entries for technological blocks
All I/Os of this block that are to have access to the value of an I/O block and therefore require
a driver connection are defined here in addition to the block definition.
Provision
● For channel drivers and blocks of the PCS 7 Advanced Process Library (APL), this
information is provided in XML format in the "SignalBlocksAPL_8x.xml" file under the
"<Installation directory>\\Siemens\STEP7\S7data\SignalProcessing" directory.
● For user-defined driver blocks or those driver blocks that are not included in the PCS 7
Advanced Process Library (APL), this information must be provided by the user as an XML
file in the "<Installation directory>\Siemens\STEP7\S7data\SignalProcessing" directory.
The principle of the implementation in XML format is shown below in an example for these user-
defined driver blocks.
Example configuration
The example configuration only requires a few blocks:
● Pcs7DiIn: Signal processing block of a digital input
● Pcs7DiOu: Signal processing block of a digital output
● VlvL: Technological block for a valve control with I/Os that require a driver connection
(channel request)
The following figure shows the blocks in the CFC of the control module and the signal flow.
2
)HHGEDFN
39B,Q 39B2XW )EN2SHQ &WUO 39B,Q 39B2XW &WUOB9OY
RSHQ
)EN&ORVH 2 1
1
3FV'L,Q
)HHGEDFN
FORVH 39B,Q 39B2XW
2
1 5DZYDOXH
1
2 1RUPDOL]HGYDOXH
SURFHVVYDOXH
Introduction
So-called technical references are used to be able to exchange an incomplete plant description
with established relationships to other process tags with the process control system on the
technological level (e.g. in COMOS).
These references can be used in a parameter which is configured as a control variable ("CV")
of a control module ("CM") or equipment module ("EM").
No references are possible for signals.
The difference between textual interconnection and reference at a parameter
● A textual interconnection can only exist at one block or chart input and always refers to a
block or chart output in the CFC.
The textual interconnection can only be specified as absolute, not relative.
● The reference at a parameter can reference input and output parameters of other process
tags. It is used on the technological level and cannot be mapped to a textual interconnection
of the CFC.
A reference at a parameter can be specified as absolute and relative.
Types of references at a parameter
There are several types of references at a parameter of a control variable, each of which is
configured in a corresponding attribute of the parameter:
● Reference to a parameter of a control module / equipment module: "Reference CM
parameter" attribute
● Reference to a block variable: "Reference block variable" attribute
● Reference to a global variable: "Reference global variable" attribute
Note
"Parameter of a control variable" expression
The following description uses the expression "parameter of a control variable" as shorthand
for a parameter that is configured as a control variable of a control module / equipment module.
The expression "parameter of a control variable" does refers not an interface parameter of the
control module or CFC.
Overview
The following points are described below:
● Configuring a reference at a parameter
● Syntax for references at a parameter
● References for data exchange
– The existing reference can be changed by positioning the cursor at the desired attribute
of the parameter in the technological editor of the CFC. This opens a dialog in which the
reference can be edited.
– To delete a references, a command is provided in the shortcut menu of the
corresponding attribute of the parameter.
● The addressing of the parameter to be interconnected to a control module / equipment
module can also be defined relative to its own hierarchy node.
Relative addressing is initiated with the character string "..\", the hierarchy of which is based
on the parameters of the control module / equipment module with the parameters to which
the reference is to be configured. The "..\" string takes the addressing one node higher
beginning with this starting point in the plant hierarchy. The "..\" string is repeated until a
common hierarchy node is achieved of between the source and destination parameters.
Then the addressing starts to go down to the desired target parameter in the hierarchy.
● A reference to a parameter to both the input and on the output end is allowed in contrast to
an interconnection.
– At the input end, a reference can only be configured to either a value or an
interconnection.
– At the output end, multiple references can be configured.
In this case, references of the various types; "Reference CM parameters", "Reference
block variable" and "Reference global variable" can be used in parallel.
On the technological level in COMOS and in the technological editor of the CFC, references
to the CFC block variables can be entered directly according to PCS 7 syntax including the
path of the plant hierarchy.
The input is typically made already on the engineering level, e.g. COMOS.
The following options are available to configure the "Reference block variable" in the
technological editor of the CFC:
– Manual entry:
Using the plant hierarchy, a reference to the actual parameters at a control module /
equipment module is entered as an absolute project path.
A reference entered manually is checked neither for syntax nor semantics and is saved
unverified!
There is an automatic attempt to close the new reference to a block variable and thereby
make it into a fixed interconnection at the CFC block.
Note
If a new reference can be closed and points to a block variable that is already assigned
a textual interconnection, the existing textual interconnection at the block variable is
replaced by the new reference!
When transferring from COMOS Integrated Engineering or using an XML file, references to
block variables are stored at the control variables of the control module / equipment module
in PCS 7. This makes them visible as attributes at the parameters of the control variable in
the technological editor.
● When exporting from COMOS to PCS 7, an attempt is made to resolve these references and
mapped them to a CFC interconnection.
● Each references that could not be closed after a data exchange from COMOS to PCS 7 or
after manual entry in the technological editor of the CFC can be closed manually.
The menu command "Options > Plant types > Close references to block variables" is
provided for this for a selected project in the plant view of the SIMATIC Manager. This menu
command is also displayed in the shortcut menu of the project.
●
If the reference cannot be closed, corresponding messages are entered in a log. One
possible cause, for example, is an existing interconnection to another CFC block at the
associated block input.
● Log:
The log lists successfully completed references and reference that remained opened at this
point in time. The log can be accessed with the menu command "Options > Plant types >
Logs". This menu command is also displayed in the shortcut menu of the project.
● References to block variables are retained even after the closing process, regardless of
whether or not a module interconnection could be created.
● At the COMOS end, references to block variables generally remain "open" because on the
engineering level, the PCS 7-specific block variables are not known by definition. In other
words, only the text of the reference is stored at the attribute of the relevant parameters of
the control variables.
When transferring from COMOS Integrated Engineering or via an XML file, a reference to a
global variable in PCS 7 is mapped to an address interconnection at the associated block
I/O in the CFC.
If the reference cannot be closed, corresponding messages are entered in a log. The log can
be accessed with the menu command "Options > Plant types > Logs".
● If the parameter is not assigned to a CFC block I/O, this is also reported in the log, and the
reference to the global data pool is still stored at the control variables (CV) of the control
module.
● An assignment at the parameter or an existing interconnection is deleted when the
reference is transferred because the reference can only be saved as an alternative.
● However, an S7 address interconnection can remain "open" in respect to its address, when
the global DB has not yet been fully created and or the symbolic name of the global DB has
not yet been entered in the symbol table.
In these situations, the user must subsequently compare the S7 address interconnections
with the symbol table and the global DB. The references to global data are defined CPU-
wide because of their PCS 7 restriction.
Synchronization is performed automatically at the latest during the build by the S7 compiler.
When a reference to a global variable in the global DB cannot be resolved, this is reported
in the log of the S7 compiler.
Manual synchronization with the symbol table can be started with the key combination "Ctrl
+ F5" in the CFC at any time.
● References to global variables remain open at the COMOS end. In other words, only the text
of the reference is stored at the attribute of the parameter of the control variables.
Introduction
A control module can contain "optional" blocks.
These optional blocks can only be defined as "optional" at the control module type in the master
data library.
If different instances of this type are created in the project, you can use the "variant selection"
to determine for each instance which optional blocks are contained in this instance.
Below you will find a description of configuration examples for interconnections between
optional and non-optional blocks. The examples also show the effect of the selection of optional
blocks on the interconnections.
Application variants
The figure below shows the application variants that should be available for selection in the type
instances by using optional blocks in a control module type.
● Application variant "A"
In this application variant, the CFC contains the target block "Valve" and only one "Intlck01"
block.
● Application variant "B"
This application variant contains the block "Valve" and two blocks "Intlck01" and "Intlck02".
To interconnect the output signals of the "Intlck" blocks to the "Intlck" input of the "Valve" block,
the logic block "AND" is added as well.
&)&RIWKHFRQWUROPRGXOHLQVWDQFH
$SSOLFDWLRQYDULDQW$
,QWOFN 9DOYH
,QWON 9OY/
2XW ,QWORFN
$SSOLFDWLRQYDULDQW%
,QWOFN
,QWON
2XW
Requirement:
The inputs and outputs of the optional blocks required in the application variants must be
configured and interconnected as "Parameters" in the technological editor of the control
module type.
Configuration example 1
In this configuration example, the optional blocks are configured as follows in the control
module type:
● In configuration variant 1, the block "Intlck01" is defined as optional.
● In configuration variant 2, the blocks "Intlck02" and "AND" are defined as optional.
● The "Valve" block is not optional.
Variant selection at the instance:
● For the application variant "A" with one "Intlck" block, only configuration variant 1 is activated
in the instance.
● For application variant "B" with multiple "Intlck" blocks, both configuration variants 1 and 2
are activated in the instance.
&)&RIWKHFRQWUROPRGXOHW\SH&07
&RQILJXUDWLRQYDULDQW
,QWOFN 9DOYH
,QWON 9OY/
2XW ,QWORFN
2SWLRQDOEORFN
&RQILJXUDWLRQYDULDQW
$1' 9DOYH
$QG 9OY/
2SWLRQDOEORFN
,QWOFN
,QWON
2XW
2SWLRQDOEORFN
7HFKQRORJLFDOHGLWRU
$WWULEXWH $WWULEXWHYDOXH $VVLJQPHQW
&07
$VVLJQHG,2 &07?9DOYH,QWORFN
9DOYH
,QWORFN ,QWHUFRQQHFWLRQWR &07?,QWOFN2XW
&07?$1'2XW
1DPH ,QWORFN
The following table shows the associated structure in the technological editor. A sub-control
module "Option_x" is created for each of the configuration variants 1 and 2. The inputs and
outputs of the optional blocks that are to be interconnected are subordinated as parameters.
Configuration example 2
In this configuration example, the optional blocks are configured as follows in the control
module type:
● In configuration variant 1, the block "Intlck01" is defined as optional.
● In configuration variant 2, the block "Intlck02" is defined as optional.
● The blocks "Valve" and "AND" are not optional.
&)&RIWKHFRQWUROPRGXOHW\SH&07
&RQILJXUDWLRQYDULDQW
2SWLRQDOEORFN
&RQILJXUDWLRQYDULDQW
$1' 9DOYH
$QG 9OY/
,QWOFN
,QWON
2XW
2SWLRQDOEORFN
The following table shows the associated structure in the technological editor. A sub-control
module "Option_x" is created for each of the configuration variants 1 and 2. The inputs and
outputs of the optional blocks that are to be interconnected are subordinated as parameters.
11.1.14 Configuration options of the control module in the equipment module / equipment
phase
Overview
A control module can be assigned to an equipment module/phase.
Configuration options
The following configuration options are available for assigning the control module:
● The control module to be assigned is integrated as a component of the equipment module/
phase type and is therefore available as a lower-level object.
If this control module is available as a type in the master data library, a "Control module
assignment" is configured for this lower-level object "Control module". The so-called "role"
is also defined in the "Control module assignment".
If this control module is not available as a type in the master data library, it can be integrated
as a lower-level object in the equipment module/phase even without an associated "Control
module assignment". This type of control module makes sense, for example, for interlocks
or calculations.
Note
A control module that is assigned a "role" via the "Control module assignment" cannot be
designated as "optional".
You can find additional information on this in the section "Integrating and assigning a control
module in the type (Page 257)".
● The control module is not a component of the equipment module/phase.
The "Control module (basic requirement)" and "Control module assignment" objects are
then configured for this control module.
– The minimum requirements for the control module to be assigned, for example, the
required commands or feedback about the status, are described in abstract in the
"Control module (basic requirement)".
If the control module is configured at the type as a "Control module (basic requirement)",
a specific control module from the project must be assigned at the instance. You can find
additional information on this in the section "Assigning the control module instance to an
equipment module/phase (Page 259)".
– The so-called "role" is also defined in the "Control module assignment".
You can find additional information on this in the section "Configuring and assigning a
control module as a basic requirement (Page 255)".
Optional control modules
A control module can be designated as optional at the type of an equipment module/phase.
This means that this control module may also be omitted at an instance of the equipment
module/phase in accordance with the real plant.
Note
When an optional control module that is defined as a process tag (e.g. calculations, interlocks,
etc.) is omitted, the user must ensure that certain control strategies are prohibited at the
instance.
A control module that is a component of the equipment module/phase type can be defined as
a "basic requirement". The "Basic requirement" attribute is set at the control strategy for this.
Thereafter, the control module is no longer a component of the equipment module/phase type.
With this procedure, the properties of the control module can be implemented in a basic
requirement. In addition to the basic requirement, a "Control module assignment" is configured
as described in the section above on configuration options.
See also
Basics of the equipment phase (Page 295)
Basics of equipment modules (Page 261)
Overview for configuring and managing the equipment phase (Page 307)
Overview for configuring and managing the equipment module (Page 277)
Introduction
The assignment of a control module to an equipment module or equipment phase is configured
in the technological editor of the equipment module/phase.
The configuration depends on whether the control module to be assigned is integrated in the
equipment module/phase type as a component.
You can find additional information on this in the section "Integrating and assigning a
control module in the type (Page 257)".
● "Configuration 2":
The control module to be assigned is not a component of the equipment module/phase type.
The following objects are configured for this:
– A corresponding "control module (basic requirement)" object, represented by the
following icon:
The minimum requirements for the control module to be assigned are abstractly
described in the basic requirements.
– A "control module assignment" object, represented by the following icon:
The corresponding control module or a basic requirement and "role" are assigned and
configured in the "control module assignment".
The following section describes the procedures for "Configuration 2", in which the control
module to be assigned is not a component of the type.
You can find additional information about this in the section "Configuration options of the control
module in the equipment module / equipment phase (Page 253)".
Requirement
An equipment module / equipment phase type is created in the master data library.
Procedure
1. Open the desired equipment module/phase type in the CFC editor.
2. Select the icon for an equipment module type, for example, in the technological editor.
3. Select "Insert new object > Control module (basic requirement)" from the shortcut menu.
The control module requirement is inserted and displayed as an icon.
4. Select the icon for the control module requirement in the configuration editor.
The associated attributes are displayed.
5. Configure the attributes, for example, the name and function identifier.
6. Select the icon for the equipment module type in the technological editor.
7. Select "Insert new object > Control module assignment" from the shortcut menu.
The control module assignment is inserted and displayed as an icon with the following
additional information.
8. Select the icon for the newly created control module assignment in the configuration editor.
The associated attributes such as "Control module assignment" and "Role" are displayed.
A basic requirement is configured for the "Control module assignment" attribute and no
specific control module because this associated control module is not integrated as a
component of the type.
For configuring the "Assigned control module" attribute, drag the basic requirement created
above to the "Control module assignment" object in the technological editor.
The newly created assignment is displayed in the "Control module assignment" attribute.
9. Configure the "role" for the attribute with the same name.
The "role" indicates how the associated control module or basic requirement is to be used
in the context of this type.
Enter a comment, if needed.
10.If you want to configure lower-level elements under the "Control module (basic
requirement)", for example, the "Status", select the icon for the "Control module (basic
requirement)" in the technological editor.
11.Select the "Insert new object" command from the shortcut menu.
All available elements are shown in the shortcut menu.
Select the appropriate menu command to insert the desired object, for example
"Command".
Repeat this step as often as necessary to add more lower-level elements.
12.Configure the attributes of the lower-level elements.
Result
The "Basic requirement" and the "Control module assignment" are configured at the equipment
module/phase type.
In this case, the control module is not a component of the equipment module/phase type; it is
abstractly described in the basic requirement.
Introduction
The assignment of a control module to an equipment module or equipment phase is configured
in the technological editor of the equipment module/phase.
The configuration depends on whether the control module to be assigned is integrated in the
equipment module/phase type as a component.
The following configurations are possible:
● "Configuration 1":
The control module to be assigned is integrated as a component of the equipment module/
phase type.
The following objects are configured for this:
– A control module as an integrated object in the equipment module/phase, represented
by the following icon:
The corresponding control module and "role" are assigned and configured in the Control
Module Assignment.
● "Configuration 2":
The control module to be assigned is not a component of the equipment module/phase type.
The following objects are configured for this:
– A "Control Module Assignment" object, represented by the following icon:
You can find additional information on this in the section "Configuring and assigning a
control module as a basic requirement (Page 255)".
The following section describes the procedures for "Configuration 1", in which the control
module to be assigned is a component of the type.
You can find additional information about this in the section "Configuration options of the control
module in the equipment module / equipment phase (Page 253)".
Requirements
The following are available in the master data library:
● An equipment module/phase type
● A control module type
Procedure
1. In the master data library, navigate to the desired equipment module/phase type and open
it in the CFC editor.
2. To configure the associated control module, navigate to the desired control module type in
the template catalog of the master data library.
3. Drag the desired control module type and drop it onto the equipment module/phase type in
the technological editor.
4. The control module is inserted and displayed as an icon.
5. Select the icon for the equipment module type, for example, in the technological editor.
6. Select "Insert New Object > Control Module Assignment" from the shortcut menu.
The Control Module Assignment is inserted and displayed as an icon with the following
additional information.
7. Select the icon for the newly created "Control Module Assignment".
The associated attributes such as "Control Module Assignment" and "Role" are displayed.
8. For configuring the "Control Module Assignment" attribute, drag the control module created
above to the "Control Module Assignment" object in the technological editor.
The newly created assignment is displayed in the "Control Module Assignment" attribute.
9. Configure the "role" for the attribute with the same name.
The "role" indicates how the associated control module or basic requirement is to be used
in the context of this type.
Enter a comment, if needed.
Result
A control module is integrated into the equipment module/phase type and the "Control module
assignment" is configured.
This control module is now a component of the equipment module/phase type.
Introduction
A control module can be configured at the equipment module/equipment phase type as a
component of the type or as a "Control module (basic requirement)".
1. If a control module is integrated as a component of the type, it is included in the copying
when the instance is created.
2. If the control module is configured at the type as a "Control module (basic requirement)", a
specific control module from the project must be assigned at the instance.
The following section describes the procedures for this option "2".
Requirements
● The master data library contains the desired type of the equipment module/phase.
● A control module as a "Control module (basic requirement)" and the corresponding "Control
module assignment" are configured at this type.
● An instance is created from this type.
Procedure
1. In the CFC editor, open the desired instance that meets the requirements listed above.
2. Open the control module to be assigned in the CFC editor.
3. To get a better overview, arrange the two open windows so that both are visible.
4. Select the icon of control module in the window of the control module in the technological
editor.
5. Drag this icon from the window of the instance and drop it onto the icon of the desired control
module assignment in the technological editor.
6. The newly configured assignment appears in the attribute list of the "Control module
assignment" attribute.
At the same time, the interconnections between the instance and the associated control
module are automatically created.
Use the shortcut menu of this attribute to delete the assignment or to jump to the control
module.
Note
If you delete the entry in the "Control module assignment" attribute, all the associated
interconnections are deleted as well.
Result
A specific control module is assigned at the instance of an equipment module/phase.
The interconnections between the instance and the associated control module are created.
See also
Overview for configuring and managing the equipment phase (Page 307)
Overview for configuring and managing the equipment module (Page 277)
Configuration options of the control module in the equipment module / equipment phase
(Page 253)
Introduction
Terms
The English terms "Equipment Module (EM)" and "Equipment Phase (EPH)" are used in the
international language environment according to the ISA-88 standard. In German-speaking
countries, the terms "Technische Einrichtung" ("Equipment module") and "Technische
Funktion" ("Equipment phase") are used. You can find more information about classification in
the "ISA-88" standard in the section "Classification of the equipment module in the ISA-88
standard (Page 275)".
Concept of the equipment module
The "Sequential control" is also a component of an equipment module. Control strategies,
setpoints, other parameters and the actual procedural control with the sequencers is defined in
the "Sequential control". The actions and transition conditions of the sequencer can be
described using commands and status.
A control module is used to assign the equipment module to the sensors and actuators on the
control-loop level. Commands and states can be defined specifically at the control modules or
globally in the master data library for the step and transition programming.
%DWFK
V\VWHP
*URXSFRQWUROOHYHO
(TXLSPHQWPRGXOH HJGRVLQJKHDWLQJFRROLQJ
6HTXHQWLDOFRQWURO
&RPPDQGV 6WDWXV
The configured mapping on the technological level in the system description between the
equipment module and the control modules is automatically implemented in PCS 7 for the
automation level in the corresponding CFC interconnections between the given blocks.
Although control modules can also be used for continuous processes, they are preferably used
together with the equipment modules for batch processes.
$XWRPDWLRQ,QWHUIDFH
'DWDH[FKDQJHZLWK
&2026
(TXLSPHQWPRGXOHV
,QVWDQFHV
(TXLSPHQWPRGXOH
&UHDWLQJQHZ W\SH
LQWKH3&6
SURMHFW 6,0$7,&0DQDJHU
0DVWHUGDWDOLEUDU\
Note
If the name already exists during copying:
If you copy a chart and paste it, the chart name suffixed with "(x)" (where x is 1, 2, 3, 4, and so
on) is assigned as the name of the copied chart.
For example:
If there exists a chart named "ChartName" and if you create a copy of this chart, the copied
chart is named as "ChartName(1)" because the name "ChartName" already exists. Further, if
you paste it again (create another copy), the next copied chart is named as "ChartName(2)".
But if you create a copy from the "ChartName(2)" chart then the copied chart will be named as
"ChartName(2)(1)".
Note
If the maximum length of the name is exceeded during copying:
If you copy a chart which is named with 22 characters (maximum length) and paste it, the name
of the copied chart is shortened from the end of the string until "~(x)" can be appended (where
x is 1, 2, 3, 4, and so on).
For example:
If there exists a chart named "ChartNameMotorControlA" (22 characters) and if you create a
copy of this chart then the copied chart is named as "ChartNameMotorCont~(1)".
By the general rules of naming in the case where the name already exists, the new chart name
should have been "ChartNameMotorControlA(1)" (25 characters) but this exceeds the
maximum permitted length of 22 characters. Therefore, the name is shortened to 22 characters
with the methodology explained above.
11.2.2 Overview of data objects of the equipment module and control module
Introduction
The following tables describe:
1. Data objects of the "Equipment module"
Icon in the technological editor:
Note
No "Command" and "Status" objects can be defined in an equipment module. They can be
defined either specifically for a control module type or basic requirement, or as "global" objects.
You can find more information on this in the tables below.
Object/icon Description
Sequential control The sequential control defines the sequencers and their parameter descriptions (for exam‐
ple, setpoints, control strategies, parameters, messages).
The sequential control may only be in the equipment module once.
Each equipment module must be assigned one and only one sequential control.
The elements are described in the table below, "Data objects of the sequential control".
Control module A control module can be configured as component of an equipment module type.
Several control modules can be present.
Optional control modules:
● Control modules can only be defined as "optional" at the type in the master data library.
● Control modules can only be defined as "optional" on the first sub-level under an
equipment module type.
● The nesting depth for control modules under the equipment module is limited to a
maximum of 3 levels.
This means that an equipment module can only have a maximum of two sub-levels of
sub-control modules, for example, the levels "Equipment module > Control modules >
Sub-control modules".
Note:
A control module that is a component of the equipment module type can be defined as a
"basic requirement". The "Basic requirement" attribute is set at the control strategy for this.
The control module is then no longer a component of the equipment module type and the
blocks of the control module are deleted from the model.
Control module assignment If a control module is to be controlled in the sequencers, the equipment module must be
assigned to the control module.
The assignment configures the following:
1. The "role".
The so-called "role" of the control module is set in the equipment module type, but no
specific control module.
The "role" indicates how the assigned control module is used in the context of this type,
e.g. that an assigned "valve" control module has the "role" of an "outlet".
The "role" is used to address the target control module in the actions and transition
conditions of the sequencers.
2. The link to a control module or basic requirement.
– When the control module is integrated in the type of the equipment module, this
control module is assigned.
– If the control module is not integrated in the type, a corresponding basic requirement
is assigned.
The specific requirements for the control module to be assigned are specified
themselves under "Control module (basic requirement)" described below.
The assignment can be provided with a comment.
There can be more than one assignment.
If a "Control Module Assignment" is configured, you must also create a corresponding basic
requirement or a control module that is integrated in the type.
Object/icon Description
Equipment module assignment The assignment configures the following:
1. The "role".
The type of the equipment module defines the "role" of an equipment module, but no
specific equipment module.
The "role" indicates how the assigned equipment module is used in the context of this
type, for example, that an assigned "valve" equipment module has the "role" of an
"outlet".
The "role" is used to address the target equipment module in the actions and transition
conditions of the sequencers.
2. The link to an equipment module or basic requirement.
– If the linked equipment module is configured in the type of equipment module, this
equipment module is assigned.
– If the linked equipment module is not configured in the type, a corresponding basic
requirement is assigned.
The specific requirements for the equipment module to be assigned are specified
themselves under "Equipment module (basic requirement)" described below.
The assignment can be provided with a comment.
There can be more than one assignment.
If an "Equipment module assignment" is configured, you must also create a corresponding
basic requirement or a lower-level equipment module that is integrated in the type.
Control module (basic require‐ The minimum requirements for the control module to be assigned are abstractly described
ment) in the "Control module (basic requirement)".
The requirements include, in particular, the necessary commands, but also feedback about
the status.
● There can be more than one basic requirement.
● The basic requirements are needed at the equipment module type to enable the use of
commands and states, for example, in the sequential logic.
● The "Command" and "Status" objects can be defined at the basic requirement.
You can find additional information on this in the section "Special considerations for the
implementation of specific commands/statuses (Page 211)".
● A basic requirement cannot be defined as optional.
Equipment module (basic re‐ The minimum requirements for the equipment module to be assigned are abstractly descri‐
quirement) bed in the "Equipment module (basic requirement)".
The requirements include, in particular, the necessary commands, but also feedback about
the status.
● There can be more than one basic requirement.
● The basic requirements are needed at the equipment module type to enable the use of
commands and states, for example, in the sequential logic.
● The "Command" and "Status" objects can be defined at the basic requirement.
You can find additional information on this in the section "Special considerations for the
implementation of specific commands/statuses (Page 211)".
● A basic requirement cannot be defined as optional.
Object/icon Description
Parameters ● There can be several parameters.
● The "Parameter" object can be used:
– As a sub-object of an equipment module or control module.
– As a formal parameter of commands and statuses.
In the "Sequential control", these formal parameters define placeholders for specific
parameters or constants at the points of use in the actions and transitions of the
sequencer.
● The "Value" and "Signal" attributes and the "Interconnection" relation can only be
entered as alternatives.
● The "Signal" attribute is only allowed for input parameters and is disabled for output
parameters.
● The "Negation" attribute is only allowed for input parameters of the "BOOL" data type
and is disabled for output parameters.
For input parameters, the "Negation" attribute relates to the parameter interconnection
or the signal.
Signals ● There can be several signals.
● The attributes of signals are represented in the same way as parameters in the
technological editor. The input fields of the "Value", "Enumeration", "Operation
identifier", "Unit" and "Interconnection" values or relations are disabled, however.
● The "Negation" attribute is only allowed for input parameters of the "BOOL" data type
and is disabled for output parameters. It applies to the "Signal" attribute for signals.
Messages An equipment module can generate messages by default.
● There can be several messages.
● Messages can be configured directly under the equipment module. They then apply only
to the block instance of the SFC type in the associated CFC. To assign the
corresponding message, the message inputs of this block instance of the SFC type must
be set as visible.
The "Sequential control" consists of the following elements, of which there can be one or
several.
Object/icon Description
Parameters ● The parameter descriptions of the "Sequential control" correspond to the
"characteristics", which are set at the SFC type.
● In the context of integration on the engineering level (COMOS Integrated Engineering),
Used for the parameter descrip‐ there is a limitation to the parameters and attributes required for the process
tion
engineering in the data exchange models.
● Parameters can be used as sub-objects of a "Sequence control" to define as individual
variables the "Sequence control" interface externally and internally to the sequencers.
You can find more information on this at the end of this table.
● Control strategies Various process engineering procedures can be defined using control strategies.
The control of sequencers is basically a function of the control strategies. Control strategies
are important for higher-level recipe control level (batch systems).
Attributes:
● Name
● Number
● Comment
● Assigned setpoint
The assignment of a setpoint to a control strategy is performed in the COMOS data
exchange model using a relation (assigned control strategy).
● Setpoints Setpoints can be specified in process engineering by manual operation or by a higher
"Setpoints") control level (batch system).
Setpoints are assigned to individual control strategies. The actual (process) value is always
offered as a control variable in addition to the setpoint.
Attributes:
● Name
● Data type
● Comment
● Low limit
● High limit
● Unit
High, low limit and unit (of measure) are typically determined or adapted at the instance of
the equipment module.
● Process values / actual The integration of process values in the equipment module is used to control sequencers,
values e.g., using an actual value for step-enabling the sequencers.
Attributes:
● Name
● Data type
● Comment
● Unit
The unit is typically set at the instance of the equipment module.
Object/icon Description
● Control values Control values are required to connect external control modules, which are not directly
accessible through the control module contacts.
Attributes:
● Name
● Data type
● Comment
● Unit
The unit is typically set at the instance of the equipment module.
● Parameters A parameter is used to influence the behavior of a "Sequential control" in an instance, for
example, with options. These parameters can also be used to set limits for specific instan‐
ces.
Attributes:
● Name
● Data type
● Comment
● Unit
● Bit memory Bit memory is needed to temporarily store values. It is only used locally in the sequential
control system.
Attributes:
● Name
● Data type
● Comment
● Timers Timers are used, for example, for time monitoring or calculation of run time.
Attributes:
● Name
● Comment
● Note texts Note texts are used, for example, for the user interface.
Attributes:
● Name
● Text
Object/icon Description
● Position texts Position texts are used to display the current procedural status on the operator station.
Attributes:
● Name
● Text
Sequencer The process engineering task is defined in a sequential logic. This is described using
sequencers. The behavior must be defined for each control strategy for each state of the
"Sequential control".
The sequencers have exactly one start step and one end step.
Sequencers can include the following elements, which are familiar from the SFC type:
● Steps
● Transitions
● Alternative branches
● Simultaneous branches
● Loops
● Jumps
Both alternative and simultaneous branches are symmetrically merged again.
The actions that are defined for a step on the process engineering level in COMOS are
described with commands in the form of a list. The commands used for this are provided
centrally on the control module, for example, motor, valve. Commands can be defined as
well at the equipment module.
The transition conditions are set on the process engineering level in COMOS as expres‐
sions with a Boolean result using the status and logical standard functions.
For this, the status (or states) provided by the control modules, for example, motor, valve,
can be used as well as the status defined at the equipment module.
The control module consists of the following elements, which may or not be present:
Object/icon Description
Commands ● A command can only be defined as an object of a control module at the type of the
control module (not at an instance), and is therefore type-specific.
You can find additional information on this in the section "Special considerations for
the implementation of specific commands/statuses (Page 211)".
● A command can be provided with one or more formal parameters.
● A control module command is determined by its name.
● Each command has the attributes "Comment" and "Author".
● There can be several commands.
Example of a command:
A command named "Open" is defined for opening a valve.
Commands can also be provided with parameters, e.g., if certain information (values,
variables) are first known at the instance.
An example of a command with parameters is the specification of motor speed:
● "Set_Motor_Speed(Speed)"
Status ● A status can only be defined as an object of a control module at the type of the control
module (not at an instance), and is therefore type-specific.
You can find additional information on this in the section "Special considerations for
the implementation of specific commands/statuses (Page 211)".
● A status can be provided with one or more formal parameters.
● The status of a control module command is determined by its name.
● Each status has the attributes "Comment" and "Author".
● There can be several states.
Example of a status:
A status named "Closed" is created for the closed state of a valve.
Parameters ● There can be several parameters.
● The "Parameter" object can be used:
– As a sub-object of an equipment module or control module.
– As a formal parameter of commands and statuses. In the "Sequential control",
these formal parameters define placeholders for specific parameters or constants
at the points of use in the actions and transitions of the sequencer.
● The "Value" and "Signal" attributes and the "Interconnection" relation can only be
entered as alternatives.
● The "Signal" attribute is only allowed for input parameters and is disabled for output
parameters.
● The "Negation" attribute is only allowed for input parameters of the "BOOL" data type
and is disabled for output parameters. For input parameters, the "Negation" attribute
relates to the parameter interconnection or the signal.
Object/icon Description
Signals ● There can be several signals.
● A signal defines an I/O channel request.
● The attributes of signals are represented in the same way as parameters in the
technological editor. The input fields of the "Value", "Enumeration", "Operation
identifier", "Unit" and "Interconnection" values or relations are disabled, however.
● The "Negation" attribute is only allowed for input parameters of the "BOOL" data type
and is disabled for output parameters. It applies to the "Signal" attribute for signals.
● The attributes “High scale value”, “Low scale value”, and “Unit” are integral part of an
analog signal.
● Scale and unit attributes are implicitly linked by the system, but can also be explicitly
assigned to the corresponding block variables from the channel driver blocks if
required.
● The corresponding scale with respect to the unit parameters from the channel driver
blocks are not required to be defined as independent CM parameters.
Sub-control modules ● A control module can be subordinate to other control modules.
● There can be several sub-control modules.
● The nesting depth for control modules is limited to a maximum of 2 levels.
This means that a control module can only have one sub-level of sub-control modules.
● Sub-control modules can only be defined as "optional" on the first sub-level under a
control module/equipment module type. You can find more information on this in the
above table of the data objects of an equipment module.
Messages ● An equipment module can generate messages by default.
● There can be several messages.
● Read the following information for configuring messages.
See also
Basics of equipment modules (Page 261)
Basic information on control modules and their types (Page 203)
Configuring a global command or status (Page 344)
Overview of the data objects of global "Command" and "Status" (Page 348)
Overview
An equipment module is classified in the physical plant model of the ISA-88 standard (IEC
61512-1) below a unit.
● When using SIMATIC BATCH, a node must be labeled in the plant hierarchy as an
equipment module according to ISA-88. This is why the possibility provided by the existing
standard to classify an equipment module directly under a process cell is not supported in
the context of PCS 7.
● Control modules can be either below an equipment module or on the level directly below the
unit.
The following figure shows the placement of the equipment module in the so-called physical
model of the ISA-88 standard. Examples of three possible configurations for a PCS 7 project
are presented.
&RPSDQ\
6WDQGDUG,6$
/RFDWLRQ
$UHD
&RQWUROPRGXOH &RQWUROPRGXOH
3&6
&RQWUROPRGXOH
See also
Basics of equipment modules (Page 261)
Overview
● Configuring
A type of an equipment module can only be created in the master data library of the PCS 7
project using the following options:
– In the "Plant view" in the SIMATIC Manager
– By creating it in COMOS Integrated Engineering and subsequently importing it via the
automation interface (AI)
In the master data library, the type of equipment module is configured for use in the PCS 7
project.
You can find additional information on this in the section "Configuring an equipment module
(type) (Page 278)".
● Management
An equipment module type can be copied and deleted in the SIMATIC Manager.
● Configuring the sequential control of the equipment module
You can find additional information about this in the section "Configuring the sequential
control of an equipment module (Page 280)".
● Control modules on the type of equipment module
Control modules can be assigned as a lower-level objects in the equipment module, or
integrated into the equipment module.
You can find additional information on this in the section "Configuration options of the control
module in the equipment module / equipment phase (Page 253)".
● Creating an instance
An instance can be created by copying the equipment module type from the master data
library into a node of the plant hierarchy.
You can find additional information on this in the section "Creating an instance of the
equipment module type (Page 282)".
● Type/instance synchronization
Synchronization of the type and the instances may be required when changes are made to
the type or its associated instances.
You can find additional information on this in the section "Comparing and synchronizing the
type and instances of an equipment module (Page 283)".
● Control modules at the instance of the equipment module
If the control module is configured at the type as a "Control module (basic requirement)", a
specific control module from the project must be assigned at the instance.
You can find additional information about this in the section "Assigning the control module
instance to an equipment module/phase (Page 259)".
Introduction
A type of an equipment module can only be created in the master data library of the PCS 7
project using the following options:
● In the "Plant view" in the SIMATIC Manager
● By creating it in COMOS Integrated Engineering and subsequently importing it via the
automation interface (AI)
You can find additional information about this in the section "Overview of data exchange
with COMOS (Page 328)".
The type can be copied and deleted in the master data library using the SIMATIC Manager.
In the master data library, the type of equipment module is configured for use in the PCS 7
project.
This procedure is described below.
Requirements
● A multiproject containing a master data library is open in the SIMATIC Manager.
Procedure
1. Use the menu command "View > Plant View" to open the plant view.
2. Once the equipment module is imported, proceed to step 4.
3. If you wish to create a new equipment module type, in the plant view of the master data
library navigate to the directory in which the object is to be created, for example, "Process
tag types".
Select the "Insert New Object > Equipment Module (Type)" command from the shortcut
menu.
Proceed to step 5.
4. In the plant view of the master data library, navigate to the directory where the equipment
module was created or stored after import, for example, "Process tag types".
You can move or copy the type into another directory you have created in the master data
library and configure the properties there.
5. The equipment phase type appears in the right window with the corresponding icon.
6. Double-click on the icon. The CFC editor opens; this where the properties of the equipment
module type are configured.
Open the technological editor. The type has different attributes, such as "Name", "Author",
"Comment".
Enter the desired data for the attributes.
7. If you want to configure lower-level elements under this type, select the icon for the type of
the equipment module in the technological editor.
8. Select the "Insert New Object" command from the shortcut menu.
All available elements are shown in the shortcut menu.
– "Control module"; for a sub-control module
– "Control module (basic requirement)"; as basic requirements in which the minimum
requirements for the control module are defined
– "Control module assignment"
– "Equipment module assignment"
– "Equipment module (basic requirement)"; as basic requirement in which the minimum
requirements for an equipment module are defined
– "Parameter"
– "Signal"
– "Message"
– "Sequential control";
the sequential control may only be in the equipment module once. Therefore, the menu
command is enabled only when no "Sequential control" object is currently present in this
equipment module. You can find information about configuration in the section
"Configuring the sequential control of an equipment module (Page 280)".
9. Select the appropriate menu command to insert the desired object, for example,
"Parameter".
10.Repeat this step as often as necessary to add more lower-level elements.
Result
The equipment module type is configured.
Lower-level elements such as parameters and control modules are inserted.
Note
The objects, for example, the values of attributes or assignments still have to be configured in
the technological editor.
See also
Configuring and assigning a control module as a basic requirement (Page 255)
Integrating and assigning a control module in the type (Page 257)
Introduction
The sequential control may only be in the equipment module once.
● When a new equipment module is created, a "Sequential control" object and an associated
SFC type are created automatically. This assigned SFC type defines the sequencers and
their parameter descriptions (for example, setpoints, control strategies, parameters,
messages).
● If the "Sequential control" object is deleted in the equipment module and added again, an
SFC type must once again be assigned to the object.
● The SFC type that is assigned to a "Sequence control" object cannot be deleted in the
"Charts" directory of the master data library as long as the associated "Sequence control"
object exists in an equipment module.
Requirements
● A multiproject containing a master data library is open in the SIMATIC Manager.
● An equipment module type is available in the master data library and configured as
described in the section "Configuring an equipment module (type) (Page 278)".
Procedure
1. In the master data library, open the equipment module type in the CFC editor.
2. Select the icon for the equipment module type in the technological editor.
Because each equipment module can be assigned one and only one sequential control, the
corresponding menu command is disabled in the shortcut menu of the equipment module
afterwards.
4. Select the icon for the "Sequential control" in the technological editor. The right window
shows the associated attributes.
Select the "Assigned block" attribute. When creating the sequential control manually, there
is no entry in the "Assignment" column and thus no assigned SFC type.
5. To assign an SFC type, open the block catalog in the CFC editor.
Drag the desired SFC type from the block catalog and drop it in the chart window of the CFC
editor. The newly inserted SFC type is displayed in the CFC and referenced in the "Assigned
block" attribute.
If no SFC type appears in the block catalog, create the desired type in the "Charts" folder of
the master data library in the component view.
6. If you want to configure lower-level elements for this sequential control, select the icon for
the sequential control in the technological editor.
Select the "Insert New Object" command from the shortcut menu. All available objects are
shown in the shortcut menu. Only "Parameter" can be selected in the current version.
7. Select the "Parameters" menu command in the shortcut menu.
The "Parameters of the equipment phase" dialog opens. All the parameters that can be used
are shown in this dialog.
Select the required parameter and click "Insert". The parameter is inserted and displayed as
an icon. Configure the attributes of this parameter.
8. Parameters can also be used as individual variables for configuring steps and transitions,
e.g., for actual value, limit values.
If you would like to create a parameter as an individual variable, select the desired block I/
O of the block instance of the corresponding SFC type and drag it to the sequential control
in the technological editor.
The "Parameter" object is created automatically. The names of these individual variables
are pre-defined and cannot be changed. You can find additional information in the section
"Overview of data objects of the equipment module and control module (Page 266)" in the
table of the data objects of a sequential control.
Result
The "Sequential control" object is configured at the type of an equipment module and an SFC
type is assigned.
Parameters are created as subobjects of this sequential control, if required.
Note
For the assigned SFC type, you still need to configure the contents in the SFC editor, for
example, the sequencer and characteristics.
Overview
A control module can be assigned to an equipment module.
Overview
The equipment module type is stored in the master data library.
A type can be copied within the master data library or copied to create an instance in the project.
Properties when copying an equipment module type in the master data library
● When a type is copied within the master data library, a new type is created and all the
components of the original type, including the basic requirements, are copied along with it.
● A control module assignment defined at the type is copied as well, regardless of whether the
assigned control module therein is a component of type or a basic requirement.
Properties when creating an instance (copying from the master data library into the project)
● An instance can be created by copying the equipment module type from the master data
library into a node of the plant hierarchy.
This node can be classified as an equipment module according to the ISA-88 standard.
If SIMATIC BATCH is used, however, this node must be labeled as an equipment module!
Note
Number of instances in a process cell node
Any number of instances of an equipment module type can be created under a process cell
node in the plant hierarchy. If this node is classified as an equipment module according to
ISA-88, however, multiple instances do not make sense. However, this is not checked by
the SIMATIC Manager and is thus the user's responsibility!
● A "Control module (basic requirement)" is not included in the copying because the basic
requirement only abstractly describes the minimum requirements for the control module to
be assigned.
The corresponding control modules must be assigned at the instance for these basic
requirements.
● Commands and status can be defined at the types of equipment modules and control
modules. These are not included in the copying.
● The corresponding type is known at the instance in order to support the type-instance
synchronization.
Comparison between type and instance
Synchronization of the type and the instances may be required when changes are made to the
type or the associated instances.
You can find additional information on this in the section "Comparing and synchronizing the
type and instances of an equipment module (Page 283)".
11.2.4.6 Comparing and synchronizing the type and instances of an equipment module
Introduction
The type and instance of an equipment module are the same when the instance is created.
Synchronization of the type and the instances may be required when changes are made to the
type or its associated instances.
Thus, for example, the sequencer of the equipment module defined in an SFC type is identical
when the instance is created. If changes are made to the SFC type in the master data library,
however, synchronization has to be performed as usual by updating the SFC type in the project.
Comparison and synchronization
During synchronization, all instances of a type in the project are compared to the corresponding
type in the master data library. This shows the differences between the types of equipment
modules and their instances (process engineering level) and between the associated objects,
such as CFCs (program level).
The synchronization of parameter descriptions and sequencers between the master data
library and project is accomplished by updating the SFC type in the project. You can find
additional information about this in the section "How to update block/SFC types in the
multiproject (Page 110)".
Note
As of CFC V9.0, a VXM license as of V9.0 is required for type instance synchronization of
technological objects, e.g. control modules (CMT).
You can find additional information and notes on synchronization in the section "Notes on type
instance synchronization of technological objects (Page 343)".
Included objects
The following lower-level objects are included in the synchronization of the type and instances
of equipment modules on the plant level:
● Control modules
● Control variables:
– Parameters
– Signal
● Messages
● Commands and status
● Assignments of control modules
● Configuring a sequential control
Basic requirements for control modules, however, are generally not involved as they are by
definition not permitted at the instances.
Note
Synchronization within the master data library
If a control module type is used in the library as a lower-level control module at the type of an
equipment module, this lower-level control module is also synchronized with its control module
type.
Procedure
1. Select the project in the plant view.
2. Open the shortcut menu and select the menu command "Plant types > Synchronize...".
The "Synchronize plant types" dialog box opens.
3. Select the desired types of equipment modules or control modules as well that you want to
compare and synchronize in the left column of the table.
4. Click the "Synchronize..." button to start the comparison.
Only relevant attributes and relations are included in the comparison. You can find
additional information on this in the section "Relevant attributes for the type/instance
synchronization of equipment modules (Page 285)".
Functions and function blocks that have been added to an instance are not included in the
comparison and are suppressed in the presentation of the comparison result.
Result
A comparison of the types of equipment modules or control modules and their instances has
been performed and selected instances have been synchronized.
See also
Basics of equipment modules (Page 261)
Creating an instance of the equipment module type (Page 282)
Introduction
A comparison or synchronization between the type and the corresponding instances may be
required when changes are made to the type or the associated instances of an equipment
module/control module.
The comparison only includes attributes and relations that cannot be changed at the instance.
The comparison result is determined and displayed only for these attributes and relations.
Overview
The following table is an overview of the objects, attributes and relations that are relevant for
comparison.
Special notes
"Value" attribute
The "Value" attribute is ignored for the following objects under certain conditions:
● Block variables
● CFC interface parameters
The attribute is ignored if one of the following conditions exist:
● When there is an assignment to a control variable of the equipment module.
● When the "S7_m_c" attribute is set.
Under these conditions, the "Value" attribute is typically adapted to the instance.
Interconnections at the block instance
Interconnections at the block instance are also ignored if the "S7_contact" attribute is set at the
block type. These interconnections are automatically made to the processing blocks, e.g.,
motor block, when the control module is assigned to the equipment module.
The "Value" attribute at this point is always ignored as well, because the parameters that are
explicitly or implicitly (in the SFC type instance) defined as block contact are interconnected by
definition.
See also
Comparing and synchronizing the type and instances of an equipment module (Page 283)
Introduction
In the left section of the technological editor, the objects in a control module or equipment
module are represented hierarchically in a tree structure, for example a "Parameter" or
"Message".
The right section lists the attributes for the object that is currently selected in the tree.
Overview
The tables below show the attributes for the following objects of an equipment module:
1. Equipment module
2. Configuring a sequential control
3. Control module
4. Control module assignment
5. Control module (basic requirement)
6. Parameters
7. Signal
8. Message
Note regarding the "Data exchange" column in all subsequent tables
This column indicates whether an attribute is included in the data exchange with COMOS
Integrated Engineering or Advanced ES.
Note
"Command" and "Status" attributes
No "Command" and "Status" objects can be defined in an equipment module. They can be
defined either specifically for a control module type or basic requirement, or as "global" objects.
You can find the description of the attributes of the "Command" and "Status" objects in the
section "Attributes and attribute values of a control module (Page 212)".
There is no "Sampling time" attribute for control modules in equipment modules, because the
control module is assigned in the runtime group of the equipment module.
Concept
As of PCS 7 V9.0, the "Equipment Phase" (EPH) is provided to enable control of multiple lower-
level equipment modules.
● The equipment phase of the assignment partner is at the process control end when
interfacing to SIMATIC BATCH.
● Equipment phases of various equipment modules and control modules can be stored for the
process control.
The advantages of the equipment phase are:
● The equipment phase is resource-neutral for SIMATIC BATCH. Therefore, the recipes in
SIMATIC BATCH can be created independent of resources.
Commands, statuses, control strategies and setpoints are sent, but no resource-specific
data.
● For process control, the lower-level equipment modules (EM) are no longer permanently
assigned, but instead requested at runtime, allocated and then released again.
Because there is no more rigid assignment, lower-level equipment modules can be used by
various equipment phases in succession. The strategy for the request, allocation and
release of the lower-level equipment modules is configured in the equipment phase.
An equipment phase is represented by a faceplate in the process pictures of the PCS 7 OS and
can also be operated through it in manual mode.
Overview
The figure below shows an example of the use of the technological objects, equipment phase,
equipment module and control module.
Reference Reference
EPH_100 EPH_200
Equipment control
Equipment phase (EPH) Equipment phase (EPH)
Reference (configured)
Commands Status
Key:
● The equipment phase "EPH_100" uses the lower-level equipment modules "EM_10",
"EM_20" and "EM_30".
● The equipment phase "EPH_200" uses the lower-level equipment module "EM_30".
In addition, a control module (CM) is nested directly below it.
● In the "EPH_100" and "EPH_200" objects, the "References" are configured on the
respective lower-level equipment modules. These "references" are symbolically
represented in the picture and consist of the following configurations:
– Objects for each lower-level equipment module:
- "Equipment module (basic requirement)", which describe the minimum technological
requirements for the equipment module.
- "Equipment module assignment" (role), for an instance that is subsequently assigned
to an equipment module.
– Allocation strategy and, if needed, query of the allocation status (configuration in the
sequential control of the equipment phase)
● The "Request + allocated at runtime" object shows that the equipment modules are
requested in runtime, allocated and then released again.
Because the "EM_30" object is required by both higher-level equipment phases "EPH_100"
and "EPH_200", the query of the allocation status is useful here along with the configuration
of the allocation strategy.
Basics
Elements of the equipment phase
The following description gives a brief overview of the data objects for an equipment phase.
You can find more detailed information on this in the section "Overview of the data objects of
the equipment phase (Page 300)".
● The "Sequential control" with its sequencers and parameter descriptions always has to be
available in the equipment phase, but only once.
The following objects can be optionally contained:
● Control module as an integral part of the type, several are possible
● Control module assignment; several are possible
● Control module requirements as basic requirements in which the minimum requirements for
the control module are defined.
Cannot be marked as optional; several are possible
● "Equipment module assignment"; several are possible
● "Equipment module (basic requirement)"; as basic requirement in which the minimum
requirements for an equipment module are defined; several are possible
● The following objects are possible as control variables, several are possible:
– Parameters
– Signals
● Messages; several are possible
Elements of the control module
The control module can optionally contain the following objects:
● Sub control modules; several are possible
● Commands; several are possible
● Statuses; several are possible
● The following objects are possible as control variables, several are possible:
– Parameters
– Signals
● Messages; several are possible
Commands and status
The following applies to the equipment phase for "commands" and "status":
● Only global commands and status can be used for the equipment phase. These are created
with the SIMATIC Manager in the master data library.
These global commands and states are generally based on equipment phases and
equipment modules and can be used in all equipment phases of a plant.
● Object-specific commands and status cannot be used in an equipment phase.
This is only possible at the type of a control module (not at an instance) or at a "Control
module (basic requirement)".
You can find additional information about this in the section "Overview of the data objects of
global "Command" and "Status" (Page 348)".
Note
If the name already exists during copying:
If you copy a chart and paste it, the chart name suffixed with "(x)" (where x is 1, 2, 3, 4, and so
on) is assigned as the name of the copied chart.
For example:
If there exists a chart named "ChartName" and if you create a copy of this chart, the copied
chart is named as "ChartName(1)" because the name "ChartName" already exists. Further, if
you paste it again (create another copy), the next copied chart is named as "ChartName(2)".
But if you create a copy from the "ChartName(2)" chart then the copied chart will be named as
"ChartName(2)(1)".
Note
If the maximum length of the name is exceeded during copying:
If you copy a chart which is named with 22 characters (maximum length) and paste it, the name
of the copied chart is shortened from the end of the string until "~(x)" can be appended (where
x is 1, 2, 3, 4, and so on).
For example:
If there exists a chart named "ChartNameMotorControlA" (22 characters) and if you create a
copy of this chart then the copied chart is named as "ChartNameMotorCont~(1)".
By the general rules of naming in the case where the name already exists, the new chart name
should have been "ChartNameMotorControlA(1)" (25 characters) but this exceeds the
maximum permitted length of 22 characters. Therefore, the name is shortened to 22 characters
with the methodology explained above.
Synchronization of the type and the instances may be required when changes are made to the
type or its associated instances.
During synchronization, all instances of a type in the project are compared to the corresponding
type in the master data library. This shows the differences between the types of equipment
phases and their instances and between the associated objects, such as CFCs (program level).
You can find additional information on this in the section "Comparing and synchronizing the
type and instances of an equipment phase (Page 325)".
Data exchange with COMOS
The import functions of the automation interface (AI) can be used to transfer the types of
equipment phases and equipment modules (basic functions) defined on the engineering level
with COMOS Integrated Engineering to the PCS 7 process control system. The associated
sequencers, transition conditions and actions are imported along with the types.
This enables the data generated on the engineering level in COMOS in the form of equipment
phases and equipment modules to be imported into PCS 7 and thereby entered in the
automation layer. There, the data appear as sequencers (SFC) and automation programs
(CFC).
You can find additional information on this in the section "Overview of data exchange with
COMOS (Page 328)".
See also
Configuration methods for assigning a recipe phase (RPH) to the engineering system
(Page 341)
Introduction
The following tables describe:
1. Data objects of the "Equipment phase"
Icon in the technological editor:
Note
No "Command" and "Status" objects can be defined in an equipment phase. They can be
defined either specifically for a control module type or basic requirement, or as "global" objects.
You can find more information on this in the tables below.
Object/icon Description
Configuring a sequential con‐ The sequential control defines the sequencers and their parameter descriptions (e.g. set‐
trol points, control strategies, parameters, messages).
The sequential control may only be in the equipment phase once.
Each equipment phase must be assigned one and only one sequential control.
The elements are described in the table below, "Data objects of the sequential control".
Control module A control module can be configured as component of an equipment module type.
Several control modules can be present.
Optional control modules:
● Control modules can only be defined as "optional" at the type in the master data library.
● Control modules can only be defined as "optional" on the first sub-level under an
equipment module type.
● The nesting depth for control modules under the equipment module is limited to a
maximum of 3 levels.
This means that an equipment module can only have a maximum of two sub-levels of
sub-control modules, for example, the levels "Equipment module > Control modules >
Sub-control modules".
Note:
A control module that is a component of the equipment module type can be defined as a
"basic requirement". The "Basic requirement" attribute is set at the control strategy for this.
The control module is then no longer a component of the equipment module type and the
blocks of the control module are deleted from the model.
Object/icon Description
Control module assignment If a control module is to be controlled in the sequencers, the equipment module must be
assigned to the control module.
The assignment configures the following:
1. The "role".
The so-called "role" of the control module is set in the equipment module type, but no
specific control module.
The "role" indicates how the assigned control module is used in the context of this type,
e.g. that an assigned "valve" control module has the "role" of an "outlet".
The "role" is used to address the target control module in the actions and transition
conditions of the sequencers.
2. The link to a control module or basic requirement.
– When the control module is integrated in the type of the equipment module, this
control module is assigned.
– If the control module is not integrated in the type, a corresponding basic requirement
is assigned.
The specific requirements for the control module to be assigned are specified
themselves under "Control module (basic requirement)" described below.
The assignment can be provided with a comment.
There can be more than one assignment.
If a "Control Module Assignment" is configured, you must also create a corresponding basic
requirement or a control module that is integrated in the type.
Equipment module assignment The assignment configures the following:
1. The "role".
The type of the equipment module defines the "role" of an equipment module, but no
specific equipment module.
The "role" indicates how the assigned equipment module is used in the context of this
type, for example, that an assigned "valve" equipment module has the "role" of an
"outlet".
The "role" is used to address the target equipment module in the actions and transition
conditions of the sequencers.
2. The link to an equipment module or basic requirement.
– If the linked equipment module is configured in the type of equipment module, this
equipment module is assigned.
– If the linked equipment module is not configured in the type, a corresponding basic
requirement is assigned.
The specific requirements for the equipment module to be assigned are specified
themselves under "Equipment module (basic requirement)" described below.
The assignment can be provided with a comment.
There can be more than one assignment.
If an "Equipment module assignment" is configured, you must also create a corresponding
basic requirement or a lower-level equipment module that is integrated in the type.
Object/icon Description
Control module (basic require‐ The minimum requirements for the control module to be assigned are abstractly described
ment) in the "Control module (basic requirement)".
The requirements include, in particular, the necessary commands, but also feedback about
the status.
● There can be more than one basic requirement.
● The basic requirements are needed at the equipment module type to enable the use of
commands and states, for example, in the procedural logic.
● The "Command" and "Status" objects can be defined at the basic requirement.
You can find additional information on this in the section "Special considerations for the
implementation of specific commands/statuses (Page 211)".
● A basic requirement cannot be defined as optional.
Equipment module (basic re‐ The minimum requirements for the equipment module to be assigned are abstractly descri‐
quirement) bed in the "Equipment module (basic requirement)".
The requirements include, in particular, the necessary commands, but also feedback about
the status.
● There can be more than one basic requirement.
● The basic requirements are needed at the equipment module type to enable the use of
commands and states, for example, in the sequential logic.
● The "Command" and "Status" objects can be defined at the basic requirement.
You can find additional information on this in the section "Special considerations for the
implementation of specific commands/statuses (Page 211)".
● A basic requirement cannot be defined as optional.
Parameters ● There can be several parameters.
● The "Parameter" object can be used:
– As a sub-object of an equipment module or control module.
– As a formal parameter of commands and statuses.
In the "Sequential control", these formal parameters define placeholders for specific
parameters or constants at the points of use in the actions and transitions of the
sequencer.
● The "Value" and "Signal" attributes and the "Interconnection" relation can only be
entered as alternatives.
● The "Signal" attribute is only allowed for input parameters and is disabled for output
parameters.
● The "Negation" attribute is only allowed for input parameters of the "BOOL" data type
and is disabled for output parameters.
For input parameters, the "Negation" attribute relates to the parameter interconnection
or the signal.
Object/icon Description
Signals ● There can be several signals.
● The attributes of signals are represented in the same way as parameters in the
technological editor. The input fields of the "Value", "Enumeration", "Operation
identifier", "Unit" and "Interconnection" values or relations are disabled, however.
● The "Negation" attribute is only allowed for input parameters of the "BOOL" data type
and is disabled for output parameters. It applies to the "Signal" attribute for signals.
Messages An equipment module can generate messages by default.
● There can be several messages.
● Messages can be configured directly under the equipment module. They then apply only
to the block instance of the SFC type in the associated CFC. To assign the
corresponding message, the message inputs of this block instance of the SFC type must
be set as visible.
Object/icon Description
Parameters ● The parameter descriptions of the "Sequential control" correspond to the
"characteristics", which are set at the SFC type.
● In the context of integration on the engineering level (COMOS Integrated Engineering),
Used for the parameter descrip‐ there is a limitation to the parameters and attributes required for the process
tion
engineering in the data exchange models.
● Parameters can be used as sub-objects of a "Sequence control" to define as individual
variables the "Sequence control" interface externally and internally to the sequencers.
You can find more information on this at the end of this table.
● Control strategies Various process engineering procedures can be defined using control strategies.
The control of sequencers is basically a function of the control strategies. Control strategies
are important for higher-level recipe control level (batch systems).
Attributes:
● Name
● Number
● Comment
● Assigned setpoint
The assignment of a setpoint to a control strategy is performed in the COMOS data
exchange model using a relation (assigned control strategy).
Object/icon Description
● Setpoints Setpoints can be specified in process engineering by manual operation or by a higher
control level (batch system).
Setpoints are assigned to individual control strategies. The actual (process) value is always
offered as a control variable in addition to the setpoint.
Attributes:
● Name
● Data type
● Comment
● Low limit
● High limit
● Unit
High, low limit and unit (of measure) are typically determined or adapted at the instance of
the equipment module.
● Process values / actual The integration of process values in the equipment module is used to control sequencers,
values e.g., using an actual value for step-enabling the sequencers.
Attributes:
● Name
● Data type
● Comment
● Unit
The unit is typically set at the instance of the equipment module.
● Control values Control values are required to connect external control modules, which are not directly
accessible through the control module contacts.
Attributes:
● Name
● Data type
● Comment
● Unit
The unit is typically set at the instance of the equipment module.
● Parameters A parameter is used to influence the behavior of a "Sequential control" in an instance, for
example, with options. These parameters can also be used to set limits for specific instan‐
ces.
Attributes:
● Name
● Data type
● Comment
● Unit
● Bit memory Bit memory is needed to temporarily store values. It is only used locally in the sequential
control system.
Attributes:
● Name
● Data type
● Comment
Object/icon Description
● Timers Timers are used, for example, for time monitoring or calculation of run time.
Attributes:
● Name
● Comment
● Note texts Note texts are used, for example, for the user interface.
Attributes:
● Name
● Text
● Position texts Position texts are used to display the current procedural status on the operator station.
Attributes:
● Name
● Text
Sequencer The process engineering task – the "sequential control" – is defined in a sequential logic.
This is described using sequencers. The behavior must be defined for each control strategy
for each state of the "Sequential control".
The sequencers have exactly one start step and one end step.
Sequencers can include the following elements, which are familiar from the SFC type:
● Steps
● Transitions
● Alternative branches
● Simultaneous branches
● Loops
● Jumps
Both alternative and simultaneous branches are symmetrically merged again.
The actions that are defined for a step on the process engineering level in COMOS are
described with commands in the form of a list. The commands used for this are provided
centrally on the control module, for example, motor, valve. Commands can be defined as
well at the equipment module.
The transition conditions are set on the process engineering level in COMOS as expres‐
sions with a Boolean result using the status and logical standard functions.
For this, the status (or states) provided by the control modules, for example, motor, valve,
can be used as well as the status defined at the equipment module.
See also
Basics of the equipment phase (Page 295)
Configuring a global command or status (Page 344)
Overview
● Configuring
A type of an equipment phase can only be created in the master data library of the PCS 7
project using the following options:
– In the "Plant view" in the SIMATIC Manager
– By creating it in COMOS Integrated Engineering and subsequently importing it via the
automation interface (AI)
In the master data library, the type of equipment phase is configured for use in the PCS 7
project.
You can find additional information on this in the section "Configuring an equipment phase
(type) (Page 308)".
● Management
An equipment phase type can be copied and deleted in the SIMATIC Manager.
● Create an equipment phase with "derived interface"
You can find additional information on this in the section "Create an equipment phase with
"derived interface" (Page 310)".
● Configuring the sequential control of the equipment phase
You can find additional information on this in the section "Configuring the sequential control
of an equipment phase (Page 314)".
● Configuring lower-level equipment modules
Equipment modules can be assigned as lower-level objects in the equipment phase.
You can find additional information on this in the section "Configuring a lower-level
equipment module (Page 316)".
Introduction
An equipment phase type is only created in the master data library of the PCS 7 project using
the following options:
● In the "Plant view" in the SIMATIC Manager
● By creating it in COMOS Integrated Engineering and subsequently importing it via the
automation interface (AI)
You can find additional information about this in the section "Overview of data exchange
with COMOS (Page 328)".
The type can be copied and deleted in the master data library using the SIMATIC Manager.
In the master data library, the type of equipment module is configured for use in the PCS 7
project.
This procedure is described below.
Requirements
● A multiproject containing a master data library is open in the SIMATIC Manager.
Procedure
1. Use the menu command "View > Plant View" to open the plant view.
2. Once the equipment phase is imported, proceed to step 4.
3. If you wish to recreate an equipment phase type, in the plant view of the master data library
navigate to the directory in which the object is to be created, for example, "Process tag
types".
Select the "Insert New Object > Equipment Phase (Type)" command from the shortcut
menu.
Proceed to step 5.
4. In the plant view of the master data library, navigate to the directory where the equipment
phase was created or stored after import, for example, "Process tag types".
You can move or copy the type into another directory you have created in the master data
library and configure the properties there.
5. The equipment phase type appears in the right window with the corresponding icon.
6. Double-click on the icon. The CFC editor opens; this is where the properties of the
equipment phase type are configured.
Open the technological editor. The type has different attributes, such as "Name", "Author",
"Comment".
Enter the desired data for the attributes.
7. If you want to configure lower-level elements under this type, select the icon for the type of
the equipment phase in the technological editor.
8. Select the "Insert New Object" command from the shortcut menu.
All available elements are shown in the shortcut menu.
– "Control module"; for a sub-control module that is a component of the equipment module
– "Control module (basic requirement)"; as basic requirements in which the minimum
requirements for the control module are defined
– "Control module assignment"
– "Equipment module assignment"
– "Equipment module (basic requirement)"; as basic requirement in which the minimum
requirements for an equipment module are defined
You can find information about configuration of the "Equipment module assignment" and
"Equipment module (basic requirement)" objects in the section "Configuring a lower-
level equipment module (Page 316)".
– "Parameter"
– "Signal"
– "Message"
– "Sequential control"
The sequential control may only be in the equipment phase once. Therefore, the menu
command is enabled only when no "Sequential control" object is currently present in this
equipment phase. You can find information about configuration in the section
"Configuring the sequential control of an equipment phase (Page 314)".
Select the appropriate menu command to insert the desired object, for example,
"Parameter".
9. Repeat this step as often as necessary to add more lower-level elements.
Result
The equipment phase type is configured.
Lower-level elements such as parameters and control modules are inserted.
Note
The objects, for example, the values of attributes or assignments still have to be configured in
the technological editor.
Introduction
Principle
The figure below shows the principle for using SFC types with the BATCH categories "EPH
interface" and "EPH (derived)". Equipment phase
With this method of configuration, the SFC type with "EPH (derived)" category serves as an
assignment partner for the recipe phase (RPH) in SIMATIC BATCH, which is derived from an
abstract interface in SFC type with the "EPH interface" category.
derived derived
EPH EPH
"Dosing 1" "Dosing 2"
EM EM EM EM
Key:
● The BATCH category "EPH interface" is configured in the SFC type "D-IF".
This SFC type has no sequencers as an "EPH interface".
● The associated SFC types "D1" and "D2" are configured for the EPH "Dosing 1" and "Dosing
2".
– The BATCH category "EPH (derived)" and the name of the "D-IF" interface from which
these two SFC types are derived is configured in the SFC types "D1" and "D2".
– The sequencers can be configured in these SFC types as SFC type with the "EPH
(derived)" category.
– As derivatives of "D-IF" they have at least the same parameters, control strategies,
setpoints, for example, "QUANTITY", "TEMP", but may also contain additional and
different parameters, for example, "RAMP".
● The EM "Heater 1 + 2" and "Scale 1 + 2" are lower-level EMs below the EPH "Dosing 1" and
"Dosing 2" with separate SFC types.
"EPH interface"
● The BATCH category "EPH interface" is set in the properties of the SFC type of the
"EPH interface".
● An SFC type with the BATCH category "EPH interface" serves as a basic class and thus as
a generic interface for the integration of the recipe phase (RPH) of SIMATIC BATCH.
● The SFC type with the BATCH category "EPH interface" only contains an interface
description with setpoints, control strategies, etc. but no implementation. The programming
of sequencers with the steps and transitions is no longer possible in the SFC editor in this
case.
"EPH (derived)"
● The BATCH category "EPH (derived)" is set and the name of the SFC type of the
"EPH interface" is configured in the properties of the SFC type of "EPH (derived)".
● An SFC type with the BATCH category "EPH (derived)" contains the interface description
with setpoints and control strategies as well as an implementation. The programming of the
sequencers in the SFC editor is possible.
● Several "EPH (derived)" SFC types can be derived from the same "EPH interface" SFC
type. The interfaces of these derived "EPH (derived)" SFC types need not be identical, but
they must fulfill the requirement of the "EPH interface" SFC type.
Requirements
● A multiproject containing a master data library is open in the SIMATIC Manager.
● The master data library contains an equipment phase (EPH) whose interface is to be
derived.
Procedure
1. Use the menu command "View > Component View" to change to the component view.
Navigate through the master data library to the "Charts" directory.
2. Select the "Insert New Object > SFC Type (EPH)" command from the shortcut menu.
The newly created SFC type appears in the "Charts" directory.
If needed, change the name of the newly created SFC type, for example, to "D-IF".
3. Select the newly created SFC type and select the menu command "Object properties" in the
shortcut menu.
The "SFC Type Properties" dialog box opens.
Switch to the "Options" tab.
4. In the "Category" selection box of the "SIMATIC BATCH" area, select the option "EPH
interface".
5. Configure the desired setpoints, control strategies, etc. in the characteristics of the SFC
type.
Close the SFC editor.
The SFC type with BATCH category "EPH interface" is displayed with the corresponding
icon in the "Charts" directory.
6. Switch to the plant view and open the desired equipment phase whose interface is to be
derived from the previously created SFC type, for example, "Dosing 1".
7. In the CFC of the equipment phase, mark the SFC block and select the command "Open
SFC Type" in the shortcut menu.
The associated SFC type is displayed in the SFC editor, for example, "D1".
8. Select the menu command "SFC > Properties".
The "SFC Type Properties" dialog box opens.
Switch to the "Options" tab.
9. In the "Category" selection box of the "SIMATIC BATCH" area, select the option "EPH
(derived)".
10.Select the desired interface, for example, "D-IF", in the "Derived from interface:" field. All
available SFC types with the BATCH category "EPH interface" are displayed for selection
in the field.
Click "OK".
The SFC type with the BATCH category "EPH (derived)", for example, "D1", is opened in the
SFC editor.
The SFC type is displayed with the corresponding icon in the "Charts" directory.
11.Also open the SFC type with "EPH interface" category from which the interface is derived,
for example, "D-IF".
To do this, select the menu command "Open SFC type".
12.Open the editor window for the characteristics for both SFC types. Click on the
"Characteristics" icon in the toolbar.
13.Check the characteristics in both SFC types.
The characteristics of the SFC type with the "EPH interface" category should all be available
in the SFC type with the category "EPH (derived)".
Result
An SFC type with the BATCH category "EPH interface" with the interface description with
setpoints and control strategies is created and serves as a basic class.
An SFC type with the category "EPH (derived)" was created with derived interface from this
SFC type with the "EPH interface" category.
This SFC type with the "EPH (derived)" category is part of a sequential control of an equipment
phase.
Note
Only the configuration of the SFC types with the BATCH categories "EPH interface" and "EPH
(derived)" is included in the above description.
However, additional steps are needed for complete configuration; for example, additional
parameters and the sequencers in the SFC type with the BATCH category "EPH (derived)"
must be implemented.
See also
Configuration methods for assigning a recipe phase (RPH) to the engineering system
(Page 341)
Introduction
The sequential control may only be in the equipment phase once.
● When a new equipment phase is created, a "Sequential control" object and an associated
SFC type are created automatically. This assigned SFC type defines the sequencers and
their parameter descriptions (for example, setpoints, control strategies, parameters,
messages).
● If the "Sequential control" object is deleted in the equipment phase and added again, an
SFC type must once again be assigned to the object.
● The SFC type that is assigned to a "Sequence control" object cannot be deleted in the
"Charts" directory of the master data library as long as the associated "Sequence control"
object exists in an equipment phase.
Requirements
● A multiproject containing a master data library is open in the SIMATIC Manager.
● An equipment phase type is available in the master data library and configured as described
in the section "Configuring an equipment phase (type) (Page 308)".
Procedure
1. In the master data library, open the equipment phase type in the CFC editor.
2. Select the icon for the type of equipment phase in the technological editor.
Because each equipment phase can be assigned one and only one sequential control, the
corresponding menu command is disabled in the shortcut menu of the equipment phase
afterwards.
4. Select the icon for the "Sequential control" in the technological editor. The right window
shows the associated attributes.
Select the "Assigned block" attribute. When creating the sequential control manually, there
is no entry in the "Assignment" column and thus no assigned SFC type.
5. To assign an SFC type, open the block catalog in the CFC editor.
Drag the desired SFC type from the block catalog and drop it in the chart window of the CFC
editor. The newly inserted SFC type is displayed in the CFC and referenced in the "Assigned
block" attribute.
If no SFC type appears in the block catalog, create the desired type in the "Charts" folder of
the master data library in the component view.
6. If you want to configure lower-level elements for this sequential control, select the icon for
the sequential control in the technological editor.
Select the "Insert New Object" command from the shortcut menu. All available objects are
shown in the shortcut menu. Only "Parameter" can be selected in the current version.
Result
The "Sequential control" object is configured at the type of an equipment phase and an SFC
type is assigned.
Parameters are created as subobjects of this sequential control, if required.
Note
For the assigned SFC type, you still need to configure the contents in the SFC editor, for
example, the sequencer and characteristics.
Introduction
The assignment of a lower-level equipment module to an equipment phase is configured in the
technological editor in the equipment phase.
The following objects are configured to use the equipment module as a lower-level object of an
equipment phase:
● An "Equipment module (basic requirement)" object, represented by the following icon:
The minimum technological requirements for the equipment module to be assigned are
described in the basic requirement.
● An "Equipment module assignment" object, represented by the following icon:
Requirement
An equipment phase type is created in the master data library.
Procedure
1. Open the desired equipment phase type in the CFC editor.
2. Select the icon for the type of equipment phase in the technological editor.
3. Select the "Insert New Object > Equipment Module (Basic Requirement)" command from
the shortcut menu.
The "Equipment module (basic requirement)" is inserted and displayed as an icon.
4. Select the icon for the newly created "Equipment module (basic requirement)" in the
technological editor.
The associated attributes are displayed.
Configure the attributes, for example, name, author.
5. Select the icon for the type of equipment phase in the technological editor.
6. Select "Insert New Object > Equipment Module Assignment" from the shortcut menu.
The "Equipment module assignment" is inserted and displayed as an icon.
7. Select the icon for the newly created "Equipment module assignment" in the technological
editor. The associated attributes such as "Interconnection to" and "Role" are displayed.
Because this associated equipment module is not part of the type, a basic requirement is
configured for the "Equipment module assignment" attribute.
To configure the "Interconnection to" attribute, drag the basic requirement created above to
the "Equipment module assignment" object in the technological editor.
The reference you have just created to the basic requirement is displayed in the
"Interconnection to" attribute.
8. Configure the "role" for the attribute with the same name.
The "role" indicates how the associated basic requirement is to be used in the context of this
type.
Enter a comment, if needed.
9. If you want to configure lower-level elements under the "Equipment module (basic
requirement)", for example, the "Status", select the icon for the "Equipment module (basic
requirement)" in the technological editor.
10.Select the "Insert new object" command from the shortcut menu.
All available elements are shown in the shortcut menu.
– "Control module"
– "Equipment module (basic requirement)"
– "Parameters"
– "Signal"
– "Message"
– "Control module assignment"
– "Equipment module assignment"
Select the appropriate menu command to insert the desired object, for example,
"Parameter".
Repeat this step as often as necessary to add more lower-level elements.
11.Configure the attributes of the lower-level elements.
Alternative procedure for steps 2 to 4
If the equipment module to be placed under the equipment phase already exists in the master
data library, a corresponding basic assignment can be created using this equipment module.
● Select the icon of the equipment module in the template catalog of the CFC editor.
● Drag the icon and drop it on the "Equipment phase" object in the technological editor.
The "Equipment module (basic requirement)" object is created automatically. The name is
identical to the name of the equipment module used.
Result
The "Basic requirement" and "Assignment" of an equipment module are configured on the type
of an equipment phase.
This equipment module is abstractly described in the base requirement.
Introduction
With equipment phases, the lower-level equipment modules are not permanently assigned, but
instead requested at runtime, allocated and then released again.
There is no more rigid assignment and lower-level equipment modules can be used by various
equipment phases in succession.
The allocation characteristics are configured using an "allocation request" in the step.
The current status of the allocation at runtime is shown with the "Allocation status" and can be
evaluated in a transition.
● The allocation states are defined in the master data library under "Shared Declarations >
Enumerations > ES_AcquireStates".
The following table describes the available allocation states.
Requirement
Equipment phases and equipment modules are configured as types in the master data library.
Procedure
1. Open the required type of the equipment phase. Navigate to the "EPH" block in the CFC of
the equipment phase and select the menu command Open SFC Type in the shortcut menu.
The SFC type is opened in the SFC editor.
2. Double-click on the desired step or select the menu command Edit > Object Properties.... for
the highlighted step. The "Properties" dialog box for the step opens.
Switch to the "Actions (technological)" tab.
3. Click on the "Action (technological)" button of the desired table row. The "Action
(technological)" dialog box opens.
4. Select the top cell in the left column of the table and select the menu command Insert
Command from the shortcut menu.
5. From the menu, select the desired equipment module for which the allocation requirement
is to be configured.
In the subsequent menu, select the menu command "EM_Allocate" and "EMAQAcquire" in
the submenu.
The action selected in the "Action (technological)" dialog box is inserted under the name
"<Object name>.EMAQAcquire".
6. From the newly created action "<object name>.EMAQAcquire", select the subobject
"Strategy".
7. Select the desired request behavior, for example, "PrelimWait" via a selection menu in the
corresponding cell of the "Interconnection" column.
You can find more information on the available options in the description above.
8. Click the "Apply" button to save the changes made to the instructions of the highlighted step.
9. Click "Close". The dialog box for editing the highlighted step closes. If you have made
changes and not saved them, a prompt appears.
Result
The allocation request for a lower-level equipment module is configured in an equipment
phase.
Overview
A control module can be assigned to an equipment phase.
The following configuration options are available:
● The control module to be assigned is integrated as a component of the equipment phase
type and is therefore available as a lower-level object.
For this, the control module is configured as an object directly in the equipment phase. A
"Control module assignment" can also be configured in which the "Role" is defined.
● The control module is not a component of the equipment phase type.
The "Control module (basic requirement)" and "Control module assignment" objects are
then configured for this control module.
You can find additional information about this in the section "Configuration options of the control
module in the equipment module / equipment phase (Page 253)".
Overview
The equipment phase type is stored in the master data library.
The type can be copied within the master data library or copied to create an instance in the
project.
Properties when copying an equipment phase type in the master data library
● When a type is copied within the master data library, a new type is created and all the
components of the original type, including the basic requirements, are copied along with it.
● A "Control module assignment" is copied as well, regardless of whether the assigned control
module therein is a component of the type or a basic requirement.
● A defined "Equipment module assignment" in the type is also copied.
No equipment module can be directly integrated in the equipment phase; this means there
is only a basic requirement for the assigned equipment module.
Properties when creating an instance (copying from the master data library into the project)
● An instance can be created by copying the equipment phase type from the master data
library into a node of the plant hierarchy.
This node can be classified as an equipment phase according to the ISA-88 standard.
If SIMATIC BATCH is used, however, this node must be labeled as an equipment phase.
Note
Number of instances in a process cell node
Any number of instances of an equipment phase type can be created under a process cell
node in the plant hierarchy. If this node is classified as an equipment phase according to
ISA-88, however, multiple instances do not make sense. However, this is not checked by
the SIMATIC Manager and is thus the user's responsibility!
11.3.3.9 Comparing and synchronizing the type and instances of an equipment phase
Introduction
The type and instance of an equipment phase are the same when the instance is created.
Synchronization of the type and the instances may be required when changes are made to the
type or its associated instances.
Thus, for example, the sequencer of the equipment phase defined in an SFC type is identical
when the instance is created. If changes are made to the SFC type in the master data library,
however, synchronization has to be performed as usual by updating the SFC type in the project.
Comparison and synchronization
During synchronization, all instances of a type in the project are compared to the corresponding
type in the master data library. This shows the differences between the types of equipment
modules and their instances (process engineering level) and between the associated objects,
such as CFCs (program level).
The synchronization of parameter descriptions and sequencers between the master data
library and project is accomplished by updating the SFC type in the project. You can find
additional information about this in the section "How to update block/SFC types in the
multiproject (Page 110)".
Note
As of CFC V9.0, a VXM license as of V9.0 is required for type instance synchronization of
technological objects, e.g. control modules (CMT).
You can find additional information and notes on synchronization in the section "Notes on type
instance synchronization of technological objects (Page 343)".
Included objects
The following lower-level objects are included in the synchronization of the type and instances
of an equipment phase on the plant level:
● Control modules
● Control variables:
– Parameters
– Signal
● Messages
● Commands and status
● Assignments of control modules
● Assignments of equipment modules
● Sequential control
Basic requirements for control modules and equipment modules, however, are generally not
involved as they are by definition not permitted at the instances.
Note
Synchronization within the master data library
If a control module type is used in the master data library as a sub-control module at the type
of an equipment phase, this sub-control module is also synchronized with its control module
type.
Procedure
1. Select the project in the plant view.
2. Open the shortcut menu and select the menu command "Plant types > Synchronize...".
The "Synchronize plant types" dialog box opens.
3. Select the desired types of equipment phases, equipment modules or control modules that
you want to compare and synchronize in the left column of the table.
4. Click the "Synchronize..." button to start the comparison.
Only relevant attributes and relations are included in the comparison.
Functions and function blocks that have been added to an instance are not included in the
comparison and are suppressed in the presentation of the comparison result.
5. The comparison result is displayed.
The following objects are highlighted in the comparison result:
– Objects added at the instance, for example sub-functions, messages, functions and
function blocks, are marked as additional objects.
– Deleted objects.
– Objects with modified attributes.
Differences in the topology of the sequencers and parameter descriptions are not shown
directly in the comparison result. Rather, the change time stamps of the two compared
objects are displayed:
– The change time stamp of the SFC type in the master data library that is associated with
the "Sequential control".
– The change time stamp of the corresponding SFC type in the project.
For a control module that is integrated in the type of the equipment phase, the
corresponding "Control module assignment" is also shown in the comparison result. If the
"Control module assignment" is missing or has been changed, you are prompted by an entry
in the log file to check the control modules in the context of this equipment phase.
6. In the comparison result, select the instances to be synchronized to the corresponding type.
Select or clear the check boxes next to objects at the left in the dialog.
7. Start the synchronization with the "Synchronize templates" icon.
The selected instances are synchronized.
Instance-specific extensions are retained if they do not apply to objects of the type.
Result
A comparison of the types of equipment phases, their lower-level objects and their instances
has been performed and selected instances have been synchronized.
See also
Basics of the equipment phase (Page 295)
Creating an instance of the equipment phase type (Page 323)
Introduction
The data generated on the engineering level in COMOS in the form of equipment modules,
equipment phases and control modules can be imported into the automation layer of PCS 7.
This forms the basis for creating sequential controls (SFC) and automation programs (CFC).
● Enumeration
● Enumeration value
● Hardware:
– Station, slave (central, slave)
– Subnet, bus (global subnet)
● Symbol (IO tag)
Graphic overview for data exchange
The data to be imported is read and compared in the Automation Interface (AI) of PCS 7.
All elements available for data exchange with PCS 7 are displayed in the COMOS Automation
Tree.
COMOS
COMOS object with "PCS
7 property"
Generation Reengineering
Automation Tree
Automation Interface
Export from: Import from:
- Plant hierarchy - Plant hierarchy
- Hardware configuration - Hardware configuration
- Equipment module - Equipment module
- Equipment module (type) Export Import - Equipment module (type)
- Equipment phase - Equipment phase
- Equipment phase (type) - Equipment phase (type)
- Control module - Control module
- Control module type - Control module type
- Symbol table - Symbol table
Automation system 2
Automation system "n"
3. After the types of equipment modules or equipment phases are defined and implemented,
the instances can be configured. The instances are created and the connections are made
to the specific control modules, representing the devices on the control module level of the
unit.
The instances with the assigned control modules are used as generation instructions on the
process engineering level of COMOS Integrated Engineering in order to create, configure
and interconnect the specific automation charts (CFC) in the corresponding PCS 7 project.
Relevant restrictions in PCS 7 for importing from COMOS Integrated Engineering
● Commands and status in the sequential controls:
– Commands can only be used in steps in sequential controls.
– Status can only be used in transitions.
● Instructions and conditions:
– Step: A maximum of 50 instructions per step are possible.
– Transition / Start condition: A maximum of 16 conditions are possible per transition / start
condition, in groups of 2 x 5 and 2 x 3 conditions.
You can find more information in the paragraph "Instructions and conditions of the steps and
transitions" of the "The sequential control in the data exchange with COMOS (Page 335)"
section.
See also
Basics of equipment modules (Page 261)
Basics of the equipment phase (Page 295)
Introduction
Data can be transferred bi-directionally and compared with data exchange between PCS 7 and
COMOS.
The following options are available for transfer and synchronization:
● Direct data exchange when COMOS and PCS 7 are installed on the same computer.
The types and instances of equipment modules, equipment phases and control modules are
read from COMOS Integrated Engineering as well as PCS 7 and compared via the import
service of the automation interface (AI).
● Indirect data exchange via an XML file when COMOS and PCS 7 are installed on different
computers.
With indirect data exchange, data is first saved to an XML file using the export function in the
SIMATIC Manager or COMOS Integrated Engineering.
Then, the XML file generated by COMOS Integrated Engineering or PCS 7 is imported in
turn into the SIMATIC Manager or COMOS Integrated Engineering. Synchronization is also
performed with the import. Changes can be deleted or applied to the target thereby.
Indirect data exchange in the context of PCS 7 is described in this section.
Note
Security for data exchange via XML format
● Access to transfer media / transfer directory:
When using the indirect data exchange between COMOS and SIMATIC PCS 7 via the XML
format, make sure that only qualified personnel have access to the transfer medium or the
transfer directory of the XML files.
● Digital signature of the XML file:
When exchanging data via the XML format, the XML file can be digitally signed to describe
the origin and integrity of the XML data. This corresponds to the requirements of the PCS
7 security concept (see "http://cache.automation.siemens.com/dnl/zI/
zI1NDU1AAAA_22229786_HB/ps7sec_d.pdf").
The verification of the digital signature ensures that the XML file on the transfer medium has
not changed.
The digital signature of the XML file is disabled by default. We recommend that you enable
the digital signature.
You can find more information on this in the "Requirements" section.
Applied standards:
The asymmetric signature process RSA according to the "PKCS#1" standard is applied
(see "https://www.ietf.org/rfc/rfc3447.txt"). The attributes of the certificate are described
under "http://www.ietf.org/rfc/rfc5280.txt".
Requirements
Software
An existing installation of the "SIMATIC XMLTRANSFER" software on the computer with the
PCS 7 system is required for data exchange via XML file. The software is available on the
Product DVD of COMOS.
Requirements for the digital signature of the XML file:
1. Enabling the digital signature:
The signature of the XML file must be enabled in the PCS 7 project. The setting is made in
the SIMATIC Manager using the menu command "Edit > XML data transfer > Settings for
XML data transfer".
2. The following objects must be available on the computer in order to sign the XML file for
export:
– The certificate of the signing user.
This certificate can be created by a commercial vendor or by a "Windows Server
Certification Authority" and must be saved under "Current User > Certificates" in the
"MMC" console of Windows. The corresponding so-called. "CA" certificate must be
located in the "MMC" console below "Trusted Root Certificate Authorities".
In this certificate, at least one of the values "digitalSignature" or "nonRepudiation" must
be set in the properties of the "Key usage" attribute.
– The so-called "Private Key" for this certificate.
3. The following objects must be available on the computer in order to import a signed XML
file:
– The certificate of the signing user. This certificate contains the so-called "Public Key",
which is needed to identify the signature of the XML file.
The certificate of the signing user must be saved under "Current User > Certificates" in
the "MMC" console of Windows. The corresponding so-called. "CA" certificate must be
located in the "MMC" console below "Trusted Root Certificate Authorities".
Data exchange of the extended hardware parameters
The data exchange of the extended hardware parameters depends on the settings in the
control file "AIaS7ExtHWParameter.xml". You can find more information on this in the section
"Overview of data exchange with COMOS (Page 328)".
A type of equipment module or equipment phase is fully transferred with all control modules and
optional control modules.
Default settings for data exchange via XML file
The following default settings can be configured in the "XML settings" dialog:
● Settings for the digital signature of the XML file
You can find additional information about this in the "Requirements" section above.
● Filters for objects from the project and library
The "XML settings" dialog is opened in the SIMATIC Manager using the menu command "Edit
> XML data transfer > Settings for XML data transfer".
Export and Import function in the SIMATIC Manager
The menu commands, "Export XML", "Export selected objects to XML" and "Import XML", are
available for the export and import function in the SIMATIC Manager in the shortcut menu of the
PCS 7 project.
These menu commands are only available if the "SIMATIC XMLTRANSFER" software is
installed and can only be used for indirect data exchange with COMOS Integrated Engineering.
Import in PCS 7
● The "Import XML" import function mentioned above is used for indirect data exchange via
an XML file. The user must provide and select the appropriate XML file for this.
The import is started using the "Import XML" command from the shortcut menu of the PCS 7
project. As an alternative, you can start the process by using the "Edit" menu command in
the main menu of the SIMATIC Manager.
● If the signature of the XML file is enabled, the certificate and the signature are verified during
import. The conditions listed under "Requirements" must be met for this.
– Upon successful verification, the data transfer dialog of the Automation Interface opens
to display the comparison result and to start the import.
– If the import of an XML file is performed without a signature although a signature is
expected, the import process is aborted with a message.
– If a certificate with the so-called "Common Name" and "Fingerprint" is found on the
computer on which the XML file is to be imported and this certificate is also used in the
signature of the XML file, a corresponding message is displayed.
– If a change in the signature or the contents of the XML file is detected, a message is
displayed and the user can decide whether the import is to be continued nevertheless.
● Once the import of a type of equipment module type or equipment phase into the PCS 7
project is successfully completed, in the import dialog the user can use the shortcut menu
to directly open the equipment module or equipment phase in the master data library, where
it is now available as a technological shell.
● The associated CFC only contains the instance of the SFC type as an equipment phase
after the initial import.
The user now has the possibility to implement the equipment module or equipment phase
using the resources of the CFC and SFC editors.
Introduction
The sequential control is also exchanged as part of the equipment module or equipment phase
during data exchange with COMOS Integrated Engineering via the import service of the
automation interface (AI). The data from COMOS Integrated Engineering and PCS 7 can also
be read and compared. Changes can be deleted or applied to the target thereby.
The sequential control defines the sequencers and their parameter descriptions (e.g. setpoints,
control strategies, parameters, messages).
The sequencers can contain the same elements as an SFC type:
● Steps
● Transitions
● Alternative branches
● Simultaneous branches
● Loops
● Jumps
The following describes how the equipment modules or equipment phases, sequencers and
their elements participate in the data exchange.
Overview
Below is a description of how the components of the equipment module or equipment phase
participate in the data exchange:
● Sequencer
● Steps and transitions
● Instructions and conditions of the steps and transitions
● Characteristics of the SFC type of the equipment module or equipment phase
The sequencer in the data transfer dialog box
In the data transfer dialog of the automation interface (AI), the sequential control and its
elements are presented in a tree.
The elements of the sequencer are represented as sub-elements of the sequential control.
● Sequencer
The sequencer always starts with a START step and ends with an END step. A start
condition must always be be configured at the start of the sequencer.
– Start condition
– Transition
● In addition to a simple step and a transition, sequencers can also contain alternative and
simultaneous branches.
– Alternative branch
A transition sequence always begins and ends with a transition element. A transition
sequence itself is a transition element.
– Simultaneous branch
A loop can be generally determined only by a step sequence. The transition condition is
checked after the last step at the end of a sequence of steps and transitions. If
necessary, the sequencer resumes at the first step of the sequence.
– Jump
A jump can cause the sequencer to resume at a given step depending on whether a
transition condition is met.
Properties of the sequencer during data exchange and import
● A previously unavailable sequential control is fully transferred with the initial import
operation.
● A sequencer in a sequential control can only be selected or deselected as a whole in the
comparison tree of the automation interface.
This means that only a complete sequencer can be included in an import or left out of it. This
avoids inconsistencies.
Note
Existing steps and transitions during import into PCS 7
If a sequencer is marked and thereby included in the import, all the contents of the existing
steps and transitions in the sequencer are overwritten in PCS 7. During import, corresponding
messages are generated when objects are created, modified or deleted.
If changes were made to steps and transitions in the sequencers at the PCS 7 end after the
import, these manual changes have to be checked, and possibly backed up before the import!
Note
If the order of several sequencers in a sequential control was changed manually, the new order
arising after new sequencers have been imported has to be checked by the user and modified,
if necessary.
4. Steps and transition elements are compared in the comparison tree in the same way as all
other objects. Therefore, only the objects involved are changed, added or deleted.
Step and transition programs:
The types of the equipment modules or equipment phases can be transferred with or without
the step and transition program descriptions by COMOS Integrated Engineering.
– Transfer without step and transition programs:
The step and transition programs are not changed in PCS 7, even if the entire sequencer
is selected for import as described above.
– Transfer with step and transition programs:
In the data transfer dialog, the step and transition programs are displayed with
differences in the form of superfluous objects at the COMOS end. The objects of the step
and transition programs can now be selected or removed for import.
If an object is selected, it is also imported to PCS 7 and overwrites the existing contents.
If an object is removed, no import is not carried out and the existing contents in PCS 7
are retained.
5. Step and transition elements cannot be selected or removed individually, but only indirectly
via the selected or removed sequencer.
Only the complete sequencer can be selected and thereby be included in the import.
Note
Meaning of the "Delete at target" option
If the sequencer is selected and thereby included in the import, steps and transitions are
inserted or deleted at the target during import. This applies irrespective or whether the
option "Delete at target" is activated or deactivated. Steps and transitions are also deleted
in the target when the option "Delete at target" is deactivated. The decisive factor is whether
or not the sequencer is included in the import process!
Existing steps and transitions during import into PCS 7
If a sequencer is marked and thereby included in the import, the existing steps and
transitions in the sequencer are overwritten in PCS 7. You can find more information on this
above in the section "Properties of the sequencer during data exchange and import".
Step and transition programs: If the types of the equipment modules or equipment phases
were transferred with the step and transition program descriptions from COMOS Integrated
Engineering, the user can specify whether these step and transition program descriptions
are to be imported into PCS 7. You can find more information on under point 4.
Note
Limits for instructions and conditions
The following limits in PCS 7 have to observed at steps and transitions for the transfer from
COMOS:
● Step: A maximum of 50 instructions per step are possible.
● Transition / Start condition: A maximum of 16 conditions are possible per transition / start
condition, in groups of 2 x 5 and 2 x 3 conditions.
If these limits are exceeded during the transfer from COMOS Integrated Engineering, the
corresponding sequencer is not imported / generated in PCS 7 and a corresponding entry is
made in the log file of the Automation Interface (AI).
Note
If the order of the characteristics of the SFC type of an equipment module or equipment phase
was changed manually, the new order arising after new sequencers have been imported has
to be checked by the user and modified if necessary.
Overview
Note the following in regard to the signal processing concept for data exchange with COMOS
IE:
Control variables (of individual control modules, for example) of the "Signal" variable type that
represent a channel request, should preferably be assigned to the corresponding block I/O of
a technological processing block in the technological editor of the CFC instead of the I/O of the
channel driver block.
This concept is only supported when using the PCS 7 APL library as of V8.0.
Overview
The following figure shows the possible configuration methods for assigning a recipe phase
(RPH) to the engineering system.
● Variant "A"
In the past, an assignment of the recipe phase (RPH) to an SFC block in the engineering
system was used for connecting SIMATIC BATCH for process control in PCS 7. You can
continue to use this method of configuration.
● Variant "B"
With this configuration method, the equipment phase is the assignment partner for the
recipe phase (RPH).
Several lower-level equipment modules (EM) can be controlled with the equipment phase
(EPH).
Use:
This configuration method is recommended if there is a process-related description at the
process control end, in other words, the resources remain the same. The recipe creation in
SIMATIC BATCH is independent of the resources.
● Variant "C"
With this configuration method, an SFC block with the BATCH category "EPH (derived)"
acts as an assignment partner for the recipe phase (RPH). It is derived from an abstract
interface in the form of an SFC type with the BATCH category "EPH interface".
Several lower-level equipment modules (EM) can be controlled with the equipment phase
(EPH).
Use:
This configuration method is recommended if there are different process-related
descriptions at the process control end, in other words, different resources are used.
Therefore, the required setpoints, control strategies, etc. can be defined in abstract
interfaces and then used in various "derivatives".
The recipe creation in SIMATIC BATCH is independent of the resources.
You can find additional information about configuring these variants in the section "Create
an equipment phase with "derived interface" (Page 310)".
The equipment phase (EPH) and the configuration of the BATCH categories "EPH interface"
and "EPH (derived)" are available as of PCS 7 V9.0.
6,0$7,&%$7&+ 3&6(6
CFC
9DULDQW$
RPH
BATCH category:
SFC - EPH
PH folder of the "Unit":
ISA-88 ID
"EMOD"
EM CM
EPH
9DULDQW%
RPH
CFC
PH folder of the "Unit":
ISA-88 ID
"Equipment Phase" BATCH category:
SFC - EPH
EM CM
EPH
9DULDQW&
RPH
CFC
PH folder of the "Unit":
ISA-88 ID
"Equipment Phase" - Sequencers
SFC - BATCH category:
"EPH (derived)"
SFC type
- No sequencers
- BATCH category:
"EPH interface"
See also
Basics of the equipment phase (Page 295)
Introduction
The "Command" and "Status" objects can be defined as follows:
● At the type of a control module (not at an instance) or at a "Control module (basic
requirement)".
These commands and statuses are specific to these objects.
● Globally, i.e. with the SIMATIC Manager in the master data library.
These commands and statuses are generally based on equipment phases (EPH) or
equipment modules (EM). They can be used in the "Sequential controls" (SFC type) of the
equipment phases or equipment modules.
The following section describes how a global command or status is created. The optional
creation of formal parameters for these objects is also described.
Note
Global commands and status in the library
As of PCS 7 V9.0, pre-defined global commands and statuses are available in the "SFC
Library". These can be copied and used in the "Sequentical control" of equipment phases or
equipment modules.
The maximum length of the name of a global command or status is 22 characters because only
these 22 characters will be accepted during subsequent configuration of the assignment in the
technological editor.
Note
Use of characteristics in the conditions of a global command/status
No tags that can be used directly in the conditions exist for the following characteristics:
● Control strategy
● Note text
● Position text
When the standard parameters "QCS", "QCSP", "OPTINO" and "POSINO" are used in a
condition of a global command/status, these above-mentioned characteristics can only be
addressed via the number, for example of the control strategy.
For this purpose, the following configuration in the global command/status is required:
● To use one of the above-mentioned characteristics in a condition, a corresponding formal
parameter must be created as lower-level object of the global command/status for this
characteristic. This formal parameter must have the relevant data type.
Example: A position text has the name "Positiontext_A" and the data type "POSITION
TEXT".
● In the assignment of the condition, the name of this formal parameter, e.g. "Positiontext_A",
is entered and supplemented by the string "_NUMBER". The field automatically gets a
yellow background.
In this example, the condition would be called: "POSINO" = "Positiontext_A_NUMBER".
When data is taken from COMOS Integrated Engineering or the runtime program is generated
in PCS 7, the corresponding number of the characteristic, for example, of the position text, is
automatically inserted into the condition in the sequencer of the equipment phase (EPH) or
equipment module (EM).
In this example, the condition would be called: "POSINO" = "1".
Requirement
A multiproject open containing a master data library is open in the SIMATIC Manager.
Procedure
1. Use the menu command "View > Plant View" to open the plant view.
2. In the plant view, navigate in the master data library to the directory where you want to create
the global command or status, for example "Process tag types". Other directories can be
used, for example, ones you have created in the master data library.
3. Select the command "Insert New Object" and then "Command" or "Status" in the shortcut
menu.
The newly created command or status appears in the right window with the corresponding
icon.
– Status
A lower-level "Parameter" object named "OUT" is created automatically for a new status.
This parameter has the BOOL data type and serves as the formal output parameter.
– Command
4. Open the command or status in the CFC editor to configure its properties.
Select the icon for the "Command" or "Status" in the technological editor.
The command or status has the default attributes "Name", "Author" and "Comment".
Configure the desired attributes.
5. Optionally, you can create lower-level formal parameters for this command or status.
To do this, select the icon for which you want to create a parameter in the technological
editor.
6. Select "Insert New Object > Parameter" from the shortcut menu.
The selected object is inserted and displayed as an icon.
7. If you want to configure the attributes of the parameter, select the "Parameter" icon in the
technological editor.
The associated attributes are displayed.
Configure the desired attributes.
8. To configure the properties of the new command or status, select the corresponding icon in
the technological editor.
In the shortcut menu, select the menu command "Properties".
The "Properties" dialog box opens.
For "Command", the dialog has a similar structure to the dialog for step configuration; for
"Status", the dialog has a similar structure to the dialog for the configuration of transition
conditions.
9. Configure the desired conditions for the command or status.
You can also use the "Browse" button to open a selection dialog. All the parameters that can
be used, which means only the block I/Os that have an identifier "S7_contact = true", are
displayed in this dialog box.
10.Select the desired parameter. Click the "Apply" button to apply the selected parameter in the
line previously selected of the "Properties" dialog box.
In the "Properties" dialog box, the next row of conditions is selected automatically and the
selection dialog box remains open. If needed, repeat this step to configure additional
conditions.
Click "Close" to close the selection dialog.
11.Click "Close" to close the "Properties" dialog box.
If required, a prompt for applying the configuration is displayed. Confirm this prompt.
Result
The global commands and/or states have been created in the master data library.
Formal parameters for these objects have been optionally inserted.
A parameter named "OUT" is created automatically at the status.
See also
Overview of data objects of the equipment module and control module (Page 266)
Overview of the data objects of the equipment phase (Page 300)
Overview of the data objects of global "Command" and "Status" (Page 348)
Overview
The "Command" and "Status" objects can be defined as follows:
● At the type of a control module (not at an instance) or at a "Control module (basic
requirement)". These commands and statuses are specific to these objects.
You can find a description of this in the tables in section "Overview of data objects of the
equipment module and control module (Page 266) ".
● "Globally", i.e. with the SIMATIC Manager in the master data library.
These commands and statuses are generally based on equipment phases (EPH) or
"Sequential controls" of equipment modules (EM) and can be used in all equipment phases
or "sequential controls" of a plant.
These global commands and statuses are described in the table below.
You can find more information about configuration and about characteristics in conditions in the
section "Configuring a global command or status (Page 344)".
Object/icon Description
Commands ● "Global" commands are generally based on equipment phases (EPH) or "Sequential
controls" of equipment modules (EM) and can be used in all equipment phases or
"sequential controls" of a plant.
This means that the implementation only uses operating statuses, sequencer
information, characteristics, etc. of a sequence control.
● A command is determined by its name. You can find additional information about
naming in the section "Configuring a global command or status (Page 344)".
● Global commands share a namespace in the master data library with the following
objects:
– Types of equipment module and control module
– SFC and CFC
– Global status
● Each command has the attributes "Comment" and "Author".
● A command can be provided with one or more formal parameters.
● There can be more than one command.
They can be selected and copied individually or collectively in the SIMATIC Manager.
Statuses ● "Global" statuses are generally based on equipment phases (EPH) or "Sequential
controls" of equipment modules (EM) and can be used in all equipment phases or
"sequential controls" of a plant.
This means that the implementation only uses operating statuses, sequencer
information, characteristics, etc. of a sequence control.
● A status is determined by specifying its name. You can find additional information about
naming in the section "Configuring a global command or status (Page 344)".
Global statuses share a namespace in the master data library with the following objects:
– Types of equipment module and control module
– SFC and CFC
– Global commands
● Each status has the attributes "Comment" and "Author".
● A status can be provided with one or more formal parameters.
● There can be several states.
They can be selected and copied individually or collectively in the SIMATIC Manager.
General
If you want to control the assignment of resources on the target system via the "Settings for
compilation" dialog box, it is important to understand the relationships explained below.
You can find additional information in the section: Settings for compilation/download
(Page 352)
The structure you configure in CFC is mapped to the S7 objects FC and DB.
FCs are required to call the blocks processed in the CFC chart according to the configured run
sequence, as follows:
● One FC for each OB used
● One FC for each runtime group
DBs are used as follows:
● An instance DB is created for each instance of an FB.
● Internal DBs are created in CFC for storing intermediate results, for example, from FCs. One
of these DBs is required for each data type. An additional DB will be created when the
maximum length of 4 KB is reached.
SCL compiler
Note the following when compiling with the SCL compiler:
● The time required by the SFC compiler may be extended considerably due to large CFC
structures. In some cases, there may be no progress visible for several minutes.
Compressing
Click "Compress" to call a function you can use to close gaps in the DB and FC number pool.
Such gaps develop, for example, when you delete objects. Compressing eliminates gaps in the
pool DB. DB numbers may then be free again.
Note
If you have changed and compressed the number ranges, you must compile the entire program
and download it to the CPU in stop mode.
Overview
When objects have been added or modified in a chart folder but not yet compiled, this is
indicated at the icons in the SIMATIC Manager:
● By an additional "C->" symbol in the bottom left corner on the closed chart folder. This
means that the program still needs to be compiled.
● By an additional "C->" symbol in the bottom left corner at the icons of objects in the chart
folder. This means that this object has been changed but not yet compiled and downloaded.
Example with an icon of a CFC:
You can now compile the entire program or all changes as described below.
If you do not want to compile the entire user program or all changes, the "Selective Download"
function is available for compiling individual charts and downloading them to the CPU. You can
find additional information on this in the section "Selective download of individual charts
(Page 374)".
Compiling
A consistency check is performed automatically during compiling. You can also start this
consistency check without compiling, for example, before you overwrite an old and still
functioning CFC program by compiling. To do this, select the menu command Chart > Check
Consistency > Charts as Program.../Chart as Block Type....
To compile, select the menu command Chart > Compile > Charts as Program... or click the icon
in the toolbar:
Scope of compiling
You can select one of two compiling options:
● Scope: Entire program
When you set this option, all AS resources will be compiled, in other words the full content
of the chart folder, regardless of any changes.
● Scope: Changes only
When you set this option, you only compile the changes made in AS resources since the last
compilation. This only includes changes in content, for example, interconnections, block
attributes or number of inputs, but not the movement of objects within the chart. Select
"Compile changes" wherever possible, since it significantly reduces compilation time.
Note
When you compile changes, only the scope of your changes will be checked. You need to
perform a consistency check to verify the entire program.
After compiling
When the compilation is completed or canceled, the S7 Logs dialog box opens. All compilation
events, warnings and errors are included in this log. Based on this log you can verify
compilation and print the log file by clicking "Print". Click "Close" to close this dialog box.
You can open and print the log subsequently with the menu command Options > Logs....
Note
Please observe the following information:
● The warnings written to the log did not abort compilation, but could cause errors during
subsequent downloads, in other words, prevent or cancel the download.
Warnings relating to textual interconnections that are not closed or interconnections to
addresses not (yet) available in the symbol table do not affect the download. In both
situations, a substitute value will be generated according to the default parameter value of
the block type.
● A warning is written to the log if your project contains blocks that are called recursively.
Recursive blocks are displayed in the "Block Call Hierarchy" view in the chart reference
data. You can call this view using the menu command Options > Chart Reference Data.
● Since PCS 7 blocks do not contain recursive calls, these must be user blocks. Make sure
that any abort conditions defined in your program are always met so that no endless loops
can occur, or remove the recursion.
● If the license is not adequate you can only compile the entire program. Compiling of changes
is canceled in this case.
● Compiling the entire program does not necessarily mean that a complete download is
necessary. If the program was already loaded on the CPU prior to compiling, it is possible
to perform a download of changes.
Additional information
You can find additional information on this in the following sections:
Essentials for CFC chart compilation (Page 351)
Settings for compilation/download (Page 352)
Compile and download objects (Page 373)
Start
You can create block types from existing CFC charts that will be used more than once and that
have the required chart I/Os. You can assign system attributes to these block types.
To perform the compilation, select the menu command Chart > Compile > Chart as Block
Type.... A dialog box opens displaying the “General” and “Attributes” tabs.
Compiling
You have the following compilation setting options:
● In the "General" tab, specify the block type properties before starting compilation (FB
number, symbolic name, name (header), family, author, version) and specify the target
system on which the block will be used. This information (S7-300/S7-400) is relevant for the
startup blocks, since the SCL compiler needs to generate a different code for each target
system.
Note on the FB number: This number must not exceed the range supported by your
destination CPU.
Example: In the case of 414-2DP CPUs, the maximum number range is set to 512 (address
range: number of FBs). The number you assign to the block must, therefore, not be higher
than 511.
The use of specific code sequences ensures that all chart blocks to be compiled are called
according to their entry in the S7_tasklist attribute.
Note
An S7 -300 supports only OB100, an entry of any other OB in the task list is not permitted.
Otherwise an error message results.
● You can start a code optimization that affects the local data requirements or the online
download of changes.
– Local data requirements:
With this type of optimization, a change in the chart does not increase the local data
requirements, since all temporary variables are stored in the instance DB (VAR area).
This does, however, lead to a change in the structure of the instance DB and to a change
in its interface time stamp. In this case, no online download of changes is possible.
– Downloading changes in RUN:
With this type of optimization, if there is a change in the chart, the temporary variables
will be stored in the VAR_TEMP area if possible. Possible in this context means that all
intermediate results in the data flow are stored at this location. Only the intermediate
results that do not exist in the data flow, for example, in feedback loops, continue to be
stored in the VAR area (instance DB). The advantage of this optimization method is that
not all modifications will affect the interface time stamp of the instance DB, in other
words, in most cases an online download of changes will still be possible. However, the
local data requirements are increased.
● As an option, you can also enable know-how protection. The algorithm of the block can be
viewed, but only modified if the suitable SCL source files exist.
● You can set the system attributes for this block type in the "Attributes" tab.
Consistency check
Consistency is checked against the following criteria during compilation:
● Whether the chart contains nested charts
● Whether the block is installed manually only once in an OB, in other words, only once
outside the OB specified by the "S7_tasklist" system attribute
● Whether all blocks are installed consecutively in the same OB, so that no blocks of other
charts are placed in between
● Whether the blocks are inserted into runtime groups
● Whether all chart I/Os are connected to internal block I/Os
● Whether the chart I/Os have an EN input, since these are generated automatically
● Whether an existing ENO I/O is assigned the BOOL data type
● Whether block inputs that cannot be interconnected are assigned the attribute
S7_link:="false" at the chart I/O
● Whether illegal blocks exist
● Whether illegal data types exist at the I/Os
Additional information
● In the SIMATIC Manager in the online help "Help on System Attributes" in the sections
"System Attributes for Blocks", "System Attributes for Block I/Os" and "Assigning System
Attributes".
● Creating block types in CFC (Page 104)
Overview
When compiling the program for a CPU 410-5H Process Automation (CPU 410-5H PA), the
following special considerations apply:
● Monitoring block for license information
During compilation, a "@PA-CPU" CFC is automatically created which includes an instance
of the "PA_CPU" block. This CFC is also installed in the OB1.
The "PA_CPU" block is required in the CPU 410-5H PA and is used for license monitoring.
It is available as FB16 in the directory "ELEM_400" in the CFC library.
Overview
After you have completed compilation, you can download the user program and test and run it
on the target system.
When a program or chart has been compiled but not yet downloaded to the CPU, this is
indicated at the icons in the SIMATIC Manager:
● By an additional arrow symbol in the bottom left corner on the closed chart folder. This
means that the program still needs to be downloaded after being compiled.
● By an additional arrow symbol in the bottom left corner on the icons of objects in the chart
folder. This means that this object has been compiled and not yet downloaded.
Example with an icon of a CFC:
You can now download the entire program or any changes as described below.
If you do not want to download the entire user program or all changes, the "Selective Download"
function is available for downloading one or more charts. You can find additional information on
this in the section "Selective download of individual charts (Page 374)".
General information
Please observe the following information:
● Always download programs created in CFC to the target system from CFC, since only the
download function of CFC ensures consistency of offline and online target system data.
Exception:
The CFC download function is also offered in the SIMATIC Manager in the following cases:
– For a selected chart folder with the menu command CPU > Download.
– For a selected (multi)project or a station with the menu command CPU > Compile and
Download Objects.
You can find information on this in the section: Compile and download objects
(Page 373)
What is not allowed is marking the block folder or individual blocks and calling the menu
command CPU > Download or copying the blocks from the "Offline block folder" and then
inserting them into the "Online block folder".
● Downloading to the CPU, just like working in test mode, is a protected function in S7 that
must be logged if the SIMATIC Logon Service is installed. The actions during downloading
and the time stamps are listed in the ES log if the current chart folder for the ES log was
enabled with the menu command Chart Folder > Object Properties... > "ES Log" tab.
You can find additional information on this in the following section: Change log and ES log
(Page 397)
● If warnings are entered in the log during compilation of the program, this may mean that
downloading will be prevented or aborted. In this case, check whether warnings in the
compilation log are relevant to downloading before you download.
Procedure
To download the user program to the target system, proceed as follows:
1. Select the CFC menu command CPU > Download...
or
click the following button in the toolbar:
A dialog box opens where you can select the type of download.
If changes to data relevant for the download have been made in the user program prior to
downloading, a message appears, which informs you that the program first needs to be
compiled. You are then asked whether you want to perform that compilation, followed by the
download.
2. Select the type of download:
– Entire program: All applicable program objects will be downloaded.
– Changes only: Changes that have been made since the last download are downloaded.
– Download to test CPU (entire program): All applicable program objects will be
downloaded.
– Download changes to CPU in RUN mode:
You can find more information on this in the description below.
3. Click "OK".
The download begins.
Click "Apply" to save your changes without initiating the download.
If you only want to save your settings without downloading them, click "Apply" and then
"Cancel".
Download: Changes
You can download changes when the CPU is in RUN-P mode. The correct download order and
segmentation required for the download of data will be maintained. Please note that there is no
absolute guarantee that the CPU will not change to STOP as a result of temporary
inconsistencies, since not all conditions can be checked.
If the "Include user data blocks" check box is selected (default setting), the following conditions
apply to data blocks located outside of the CFC area when downloading changes:
● The blocks are included in the download if the time stamps differ or data blocks have been
added.
● The blocks are deleted on the CPU if they do not exist in the S7 program.
If user data blocks are to be ignored when downloading changes, deselect the check box.
This can have the following consequences:
● If a user data block exists in the S7 program but does not exist on the CPU, downloading will
be aborted with an error message.
● If the user data block exists on the CPU but no longer exists in the S7 program, a warning
is displayed. A warning also appears if the user data block in the S7 program differs from that
on the CPU. Correct execution of the program is then the user's responsibility.
● You cannot download changes after you have tested a modified program on another system
or via PLCSIM before downloading it to the runtime system.
Remedy: With the option "Scope: Download to test CPU (entire program)", it is still possible
to download changes to the original CPU. See also:
Downloading a modified program to a test CPU (Page 367)
● Answers to the questions:
– "What situations will prevent online downloads of changes?"
and
– "How do I maintain my program's ability to perform online downloads of changes?"
can be found under: What you should know about downloading changes (Page 368)
Note
Certain scenarios may mean that a download of changes can no longer be performed.
The only option is to download the entire program with the CPU in STOP. Before this is
carried out, a warning appears to guard against unintentional loss of the capability to
download changes.
System support
Reference lists will be created for blocks compiled under STEP 7 => V5.0 + SP3 or SCL => V5.0
+ SP3. Based on those reference lists, the system performs a check in order to detect causes
of CPU STOP and to prevent downloads if any errors (messages) have occurred.
You can find additional information on this in the following section: System support for avoiding
causes of CPU STOP (Page 370)
VXMis called for 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.
Notes on H CPUs
● If the H CPU is being operated in solo mode, for example, due to CPU failure, and a CPU
failover has taken place, a dialog will appear following an online access request. There you
can select which CPU should be linked. This dialog box does not appear in redundancy
mode.
● All changes will be lost if you download program changes to a CPU operating in solo mode
and then execute "Switchover with modified configuration" with the menu command CPU >
Operating Mode.... In this case you need to download the entire program.
Remedy: Download in redundant operation. In this case, you must make sure that the
operating mode remains unchanged until the download is complete.
Note on F systems
You must enter the F password in order to download changes from programs with a modified
F component. Otherwise, the F system will reject the download.
Additional information
You can find additional information in the section: What you should know about downloading
changes (Page 368)
Note
If you want to ensure that your program retains its ability to download changes, you should
generate a backup copy after each completed download.
This measure may not be required for the testing or commissioning phase. The decision is
yours and depends whether or not a complete download in STOP can be tolerated under
specific circumstances.
The figure below shows how the online ability to download changes can be lost unintentionally.
Legend:
Blue triangle = download of changes
Step 1:
The program was downloaded to the CPU and a backup copy was generated. At the time of
download the time stamp generated during compilation is stored in the offline and online
Introduction
During compilation and download, the system performs checks and evaluations in order to
avoid the causes of CPU STOP during online program downloads.
The block reference lists are also used for these checks. These reference lists exist only for
blocks compiled with STEP 7 >= V5.0 + SP3 or SCL V5.0 + SP3. This affects blocks of the PCS
7 V5.1 libraries. A full verification is not possible if the program uses blocks without reference
lists (blocks of the libraries PCS 7 V4.x and V5.0 and the STEP 7 standard library). In this case,
a warning will be displayed.
Overview
The "Compile and Download Objects" function in the SIMATIC Manager allows you to generate
consistent modified data of different objects in a single pass, for example, networks, hardware,
blocks, charts, OS servers, OS clients, BATCH servers, and BATCH clients. All steps
previously distributed across multiple applications are now grouped and processed in the
correct sequence.
To initiate the function, select a (multi)project or a station and then select the menu command
PLC > Compile and Download Objects in the SIMATIC Manager.
Please note that for safety's sake, downloading the entire program using this function is only
possible when you have set the respective CPU to the "STOP" operating mode before starting
processing.
You can find more information on this function in the STEP 7 Basic Help.
Note
Auto-archiving
With a download using the "Download and compile objects" dialog box, auto-archiving enabled
in the "Download" dialog box is not performed.
Overview
The "Selective Download" function can be used to download one or more modified CFCs or
SFCs to a CPU.
You can use selective downloading as a user to specifically select which configured changes
should be transferred to the CPU and enabled. This makes it possible, for example, to configure
multiple units on a CPU at one time, because only the changes to a specific unit are compiled,
downloaded and tested.
Selecting the charts
● A selection dialog displays all charts that can be selectively downloaded. Select the charts
that you want to download in this dialog. Dependent charts are also automatically selected.
Dependencies are created by:
– Inserting the blocks in a sequence
– Instances of the same SFC type
– Moving blocks from one chart to another
– Moving blocks from one runtime group to another
● The charts that are not selected but affected by the changes are transferred automatically.
● System charts with the prefix "@" are not displayed but are automatically transferred as well
if they are affected by the changes.
Note on the selection of individual or all changed charts
The selection has the following effects.
● Individual, changed charts are selected and selectively downloaded:
– Data blocks and user FB/FCs that are no longer used are not deleted in the AS.
– Likewise, the VXM image is not updated.
– If necessary, a cross-chart interconnection is replaced by a default value (DB) for
selectively downloading when the chart with the interconnection source (output) cannot
be downloaded as well.
– You can find additional information in the paragraph "Notes on process conformity with
selective download" below.
● All changed charts are selected in the dialog and downloaded:
– Data blocks and user FB/FCs no longer used in the AS are deleted.
– The VXM image is updated.
Note
Booking the PO licenses when selectively downloading
PO licenses are always used for all configured POs when selectively downloading charts, even
if only some of them are configured in the charts marked for selective download.
Nested charts
This function can only be used on top charts (highest hierarchy level). The subordinate charts
of the top chart are always included in the download of individual charts. It is not possible to
download individual subcharts.
F systems
Blocks of F-systems are automatically included in a "Selective Download" if they are affected
by the changes.
All F-charts are displayed in the dialog if they are affected by the changes and can only be
transferred in full. It is not possible to select and download an individual F-chart.
When the "Chart-based insertion" option is enabled, this block is automatically inserted into the
assigned runtime group when instantiating blocks in a chart. The associated runtime group is
created automatically when a new chart is created.
Inserting the new blocks of a chart in the runtime group of this chart reduces the number of
dependent charts, which would also need to be included in the selective download.
For PCS 7 projects created as of version PCS 7 V8.1, this option is automatically enabled. For
an existing PCS 7 project that was created with a version prior to V8.1, this option only works
on newly created charts after the option has been enabled. The existing charts and their
configuration are not affected after the option has been enabled.
Notes on the "Chart-based insertion" option
● Effect on runtime groups when renaming charts:
When the "Chart-based insertion" option is enabled, each chart has a separate runtime
group for each OB. The name of the runtime group contains the chart name as a component.
If the chart name is changed, then only the corresponding runtime groups in the cyclic
interrupts are renamed; all others remain unchanged. However, this violates the rule that the
chart name must be a component of the runtime group name, and the clarity is also lost.
If the runtime group names have not been previously modified in the runtime editor, all
runtime group names must be changed manually when charts are renamed to match the
cyclic interrupts.
Note: If the name of the runtime group is identical to that of the chart, the name of the runtime
group changes as well when the name of the chart is changed. A second associated runtime
group for the chart is not renamed, however.
● Effect on runtime groups when moving blocks:
If the "Chart-based insertion" option is enabled for the chart folder, a runtime group is
inserted into the run sequence in each affected OB for each chart. Previously, it was only
inserted in the cyclic OBs. Blocks that are then instantiated in the chart are automatically
incorporated into the runtime group belonging to the chart.
When blocks are moved to another chart, however, they are not automatically transferred
to the corresponding runtime group of the destination chart.
To maintain the principle of the chart-based insertion and the selective download capability
for the changed source and destination chart, you need to manually move the blocks to the
runtime group belonging to the new chart.
● SFC accesses are immediately active, even if the dependent CFCs have changed. If the
changed CFC is not yet downloaded, the pre-assigned default values are also active in this
case.
● AS-wide interconnections are active across the entire program.
Please read the following safety information "Responsibility for a process-compliant program".
Requirements
● The "Selective Download" function is only available in PCS 7.
● To use the "Selective Download" function, you have to select the "Chart-based insertion"
option in the "Properties Chart Folder" dialog at the chart folder so that they are integrated
in the so-called chart-oriented runtime group management.
● All charts of this CPU have been compiled and downloaded beforehand. A first-time
downloading with the "Selective Download" function is not possible.
● "Selective Download" is not possible if one or more of the following conditions are true:
– A complete download is required.
– A complete compilation is required.
– With the CPU 410-5H PA:
When the status message "TCiR: Download required" is displayed in the status bar of the
CFC Editor. This status message indicates that the instances were updated in the project
during interface changes to the block types, but they have not yet been downloaded to
the CPU 410-5H PA with the "Type update in RUN" function.
● The icons in the selected charts show the status that these charts can be selectively
downloaded. You can find more information on this status above.
CAUTION
Responsibility for a process-compliant program
The "Selective Download" function can be used to download one or more modified CFCs or
SFCs to a CPU and to test them. Selective downloading can result in inconsistent data and a
non-process-compliant program in the CPU.
The user is responsible for ensuring a process-compliant program.
All modified charts and their dependent charts are displayed in the "Selective Download"
dialog to help ensure a process-compliant program. Take this into consideration when
selecting charts to be downloaded, because inconsistency in the process flow can arise by
downloading a single chart if not all the required/changed charts are included in the selection.
Implementation during ongoing plant operation
The implementation of the recommended actions during ongoing plant operation can lead to
serious damage to property or injury to persons if errors occur in the function or in the program.
Ensure that no dangerous situations can occur before you implement the actions.
Please comply with the following:
● If several charts have been changed, for example, with cross-chart interconnections, but
not all affected charts are transferred to the CPU with "Selective Download", damage may
be caused by inconsistent data.
Procedure
1. Select the "Charts" folder or any CFC in this folder under the desired CPU in the navigation
window of the component view.
Alternatively, you can start the function from the plant view as described above.
2. Select the menu command "Options > Charts > Selective Download...".
The "Selective Download" dialog opens.
This dialog displays all charts of this CPU with the icon for their current status.
System charts with the prefix "@" are not displayed but are automatically transferred as well
if they are affected by the changes.
3. Select the desired charts that you want to download to the CPU.
Select the corresponding check box for this in the "Chart" column. The "Dependencies"
column indicates whether other charts need to be downloaded as well.
The charts that are not selected but affected by the changes are transferred automatically.
For charts of F-systems, read the information in the "F-systems" paragraph above.
4. Check the settings for generating the module drivers and SCL sources in the lower part of
the dialog and change them if necessary.
5. Click "Download".
The selected charts are downloaded.
If compilation is needed before downloading the selected charts, this is done automatically.
6. The result of the operation is displayed in the "Logs" dialog.
Check the displayed messages and close the dialog with the "Close" button.
Result
The selected charts are downloaded to the CPU. The charts that were affected by the changes
are transferred automatically.
Time stamp
On the basis of the time stamp, you can establish which areas of the user program have been
changed and whether it needs to be recompiled or downloaded again. The system will assign
time stamps in respect of the following:
● The last download-relevant change
● The last compilation process
● The time when the downloaded program was compiled
Procedure
Select the CPU > Compare menu command inthe CFC.
Alternatively, you can also select the SIMATIC Manager menu command:
Select the station or the CPU or the S7 program or the chart folder, followed by the shortcut
menu command CPU > Compare.
A dialog box showing the current time stamp of the downloaded program appears.
Evaluation
● The "Last download-relevant change" time stamp indicates the time when changes were
made to the offline program that also necessitate changes to the online program, for
example, interconnection changes or block changes. The time stamp is also changed if
block I/Os are programmed in test mode.
Changes are not classed as download-relevant if they are not taken into account during
compilation into machine code. Examples include changes to the position of blocks in the
chart or the insertion or deletion of text fields.
● The "Last compilation" time stamp is the time the program was last compiled following a
change.
● The "Compilation of downloaded program" time stamp is the time stamp that was generated
during the last compilation process and entered at the time of the download. If a connection
with the CPU has not been established, it will not be possible to read this time stamp and "---"
will be displayed.
The user program that you downloaded to the CPU is only identical with the user program in
terms of CFC data management and machine code if the "Last compilation" time stamp and
"Compilation of downloaded program" time stamp match exactly and are more recent than the
"Last download-relevant change" time stamp.
Tip: You can identify user programs requiring compilation and/or download due to changes by
means of the chart folder symbol. In the SIMATIC Manager , the relevant icon is displayed at
the closed chart folder.
Compilation required:
Download required:
Note on H CPUs
● If the H CPU is being operated in solo mode, for example, due to CPU failure, and a CPU
failover has taken place, a dialog box will appear following an online access request There
you can select which CPU should be linked. This dialog box does not appear in redundancy
mode.
● All changes will be lost if you download program changes to a CPU operating in solo mode
and then execute "Switchover with modified configuration" with the menu command CPU >
Operating Mode.... In this case you need to download the entire program.
Remedy: Download in redundant operation. However, you must ensure in this case that the
operating mode remains unchanged until the download is completed.
Overview
When downloading the program to a CPU 410-5H Process Automation (CPU 410-5H PA), the
following special considerations apply:
● The number of POs is licensed by the hardware.
For the CPU 410-5H PA, the maximum number of POs is licensed by the hardware. It is not
possible to download a greater number of POs than is licensed by the hardware into the AS.
If this happens, the download operation is canceled.
● The "PCS 7 project" project type is required.
During download to the CPU 410-5H PA, a check is made as to whether the project has the
"PCS 7 project" project type.
Download is only possible when the project has this project type.
● Download only possible with CFC.
The CPU 410-5H PA can only be downloaded with CFC V8.0 SP3 (or higher). Downloading
from other STEP 7 editors is not possible.
● Monitoring block for license information
During download to the CPU 410-5H PA, the "@PA-CPU" CFC is automatically downloaded
with the "PA_CPU" block. The "PA_CPU" block is required in the CPU 410-5H PA and is
used for license monitoring.
● CPU 410-5H PA supports type update in RUN mode.
This makes it possible to update the instances and download them to the CPU in RUN mode
after changing an interface at the block types. This is only possible in STOP mode in other
automation systems.
You can find additional information on this in the sections "How to update block/SFC types
in the multiproject (Page 110)" and "Type update with a CPU 410-5H PA (Page 113)".
See also
How to download a user program to the target system (Page 361)
Requirement
Prior to testing and commissioning, the user program created in the CFC Editor must first be
compiled free of errors and downloaded to the CPU.
Test settings
You can set the watch cycle under Test Settings. The watch cycle is the cycle time used for
updating the I/Os registered for testing.
Default: 2 s.
The watch cycle is CPU-specific; in other words, the setting applies to all charts of the current
chart folder. If the current chart is moved to the chart folder of a different CPU, the value set for
this CPU applies to the chart.
Editing modes
The CFC Editor provides two editing modes:
● Edit mode
In this offline mode you can configure the entire software structure for a CPU.
● Test mode
Lets you monitor and edit values in online mode.
Note
You can also prepare certain debug functions offline in edit mode, for example, you can add
block I/Os to the watch list and edit these.
Test mode
The test mode refers to the CPU to which the currently active chart belongs.
The CFC Editor supports commissioning by providing test functions that allow you to watch and
influence the execution of the blocks on the CPU and to change setpoints as required. Testing
can be performed in two modes:
● Process mode
● Laboratory mode
In edit mode, you can select the test mode using the menu commands of the "Test" menu. It is
not possible to switch between process mode and laboratory mode once you are in test mode.
In process mode, communication for the online dynamic display of blocks is restricted and thus
causes only slight extra load on the CP and bus.
All blocks are initiated with the "Watch Off" attribute when you activate test mode.
Laboratory mode allows for convenient and efficient debugging and commissioning. In contrast
to process mode, the laboratory mode does not restrict communication for online dynamic
update of charts.
All blocks are initialized with the "Watch On" attribute when you activate test mode.
Select the CFC menu command Test > Test Mode...or click the following button in the toolbar:
You can now enable the test menu functions; most of the edit mode functions will be disabled.
Note
Possible system reactions when activating test mode
● If the user program is modified after the code has been compiled, a corresponding message
is output when you want to change to test mode.
● If a so-called protection level is enabled in the CPU, it may be necessary to enter a password
when activating test mode depending on the CPU and the configured protection level.
When you close the test mode, the test functions will be disabled and the edit mode will be re-
enabled.
Exit test mode by selecting the Test > Test Mode menu command or by clicking the following
button again in the toolbar:
Configuring I/O
You can modify the values of all inputs which are not interconnected if test mode is active. For
information on exceptions, refer to the section Essentials for monitoring block I/Os (Page 386).
Before the modified value is adopted on the CPU, its validity will be checked.
Note
Note that the parameters modified in test mode are always written to the CFC database.
Notes on H CPUs
● If the CFC is used in fault-tolerant systems (H-CPUs), the CFC in test mode always with the
master CPU.
● If the master changes during redundancy mode then the connection to the CPU is
terminated. You must exit the test mode and switch the device back on in order to re-
establish the connection.
● If the H-CPU is operating in stand-alone mode, for example, after a CPU changeover as a
result of CPU failure, any online access (here: Activate Test Mode) opens a selection dialog.
There you can select which CPU should be linked. This dialog box does not appear in
redundancy mode.
This means, in test mode you can monitor dynamic data of block/chart I/Os registered for
testing, i.e., those values will be fetched cyclically from the CPU and displayed. and you can
modify the options for this dynamic data display and the parameters of the I/Os with OCM
capability.
In "process mode", the "Watch Off" function is enabled with the following icon:
That means, in a first step you must select the blocks/charts for dynamic data in the chart you
want to watch. Then, select "Watch On".
If, on the other hand, there is an overload, you can remove specific blocks/charts from the watch
list. To do this, select the block/chart followed by the menu command "Watch Off".
Note
If monitoring is disabled and you select an I/O in order to register it for testing, monitoring will
be enabled for this and for all previously registered I/Os of this block.
When you enable test mode for an active dynamic display window, all I/Os listed will be
connected to the CPU. Enable the "watch" function with a check mark in the "Watch" column
for the specific I/Os.
Note
Please observe the following information:
● You cannot watch block I/Os if they are not stored in DBs. This also applies, for example, to
open inputs of FCs and BOPs and to outputs of the data type STRING, DATE_AND_TIME,
ANY.
● In test mode and if EN=0 is set, the function blocks (FBs) do not indicate the value of the
connected source at interconnected inputs. Those interconnected inputs will only display
the value with which the block was last executed. Note that the value of interconnected
inputs can change when EN=0 is set to EN=1. This statement also applies to forced values.
FCs and BOPs, on the other hand, always show the value of the interconnection source.
● If I/Os are registered for testing but are not operable, for example, if they are interconnected,
the values are shown with a yellow-gray background.
● You can display the value of a block I/O as a tooltip even if the I/O has not been registered
for testing. See also: Displaying tooltips using the cursor (Page 440)
● In test mode, only the status of the first element of a structure is shown in color. The status
of the other elements is not visible.
Additional information
You can find additional information about this in the following sections:
● How to add and remove I/Os in the watch list (Page 387)
● How to enable/disable monitoring of dynamic I/O data (Page 388)
● Configuring I/O (Page 389)
● The "Dynamic display" window (Page 393)
● The trend display window (Page 395)
When you change to test mode, monitoring is also enabled, i.e., the I/O and its current value are
displayed on a yellow background. With I/Os that are not OCM-capable, the value is shown on
a yellow-gray background. If the watch function was previously disabled for this block/chart, it
will be enabled for all other I/Os that were previously added to the watch list.
As an alternative:
In edit mode, you can also add and remove I/Os for a specific block/chart. Call the "Object
Properties" dialog for a selected block and select or deselect the individual I/Os in the
"Watched" column of the "I/Os" tab.
Note
Do not watch too many I/Os at the same time, for this would induce a high communication load
on the bus and on the CPU. Time monitoring may respond if this load exceeds a certain
capacity, for example, >500 I/Os in a 1-second watch cycle. The I/O values will be temporarily
marked as "corrupted".
In laboratory mode, this function applies to all blocks and in process mode only to blocks
previously selected in the chart.
● You can stop the monitoring function using the menu command Debug > Watch Off or by
clicking the following button in the toolbar.
The values of the I/Os are no longer updated In laboratory mode, this applies to all blocks
and in process mode only to blocks selected in the chart.
All I/O values activated in the watch list will be updated in accordance with the watch cycle set
using the menu command Debug > Test Settings....
The values are displayed beside the I/Os according to their data type. They are displayed on
screen on a colored background.
You can modify the values of all inputs which are not interconnected if test mode is active. For
information on exceptions, refer to the section Essentials for monitoring block I/Os (Page 386).
Before the modified value is adopted on the CPU, its validity will be checked.
Note
Note that the parameters modified in test mode are always written to the CFC database.
Brief description
It may be helpful during commissioning to simulate a variety of values for an interconnection,
in other words to permanently overwrite the value of an interconnection with a force value.
While the configuration of an input in test mode is basically possible, it will not lead to the
desired results because the value will be immediately overwritten by the output of the
interconnection. For simulation, the interconnections between the blocks must be temporarily
removed and specified values must be assigned to the corresponding inputs (IN or IN_OUT) of
these interconnections. Replacing an interconnection with this type of configuration is hereafter
referred to as "forcing". Forcing involves replacing the value at the block input normally supplied
by the interconnection with the "forced value". Such forcing can be activated and deactivated
at the input of the block instance at any time.
For reasons of performance, not all block inputs are designed for forcing at the outset. This
prevents too much SCL code being generated by the code generator. The inputs that can be
forced are set in the configuration of the CFC or in the process object view. If the attributes "Add
forcing" and "Forcing active" are changed at the input after the program is compiled, the
program needs to be compiled and loaded again.
A maximum of 8192 standard and 8192 F I/Os can be forced.
Note
If the maximum number of force parameters is registered and downloaded, a download of
changes must be carried out after one or more parameters have been disabled by Force in
order to re-enable the parameters in the CPU as well. New or different force parameters can be
enabled for Force only after the download of changes.
Alternative procedure
If the "Support forcing" option is activated for the chart folder, you can proceed as follows:
1. You can make settings for multiple block inputs in the CFC. The corresponding columns for
the force function are available in the "I/Os" tab of the object properties of the block.
2. In the process object view, you can make the setting for the desired inputs for all blocks in
the project. The corresponding columns for the force function are available in the
"Parameters" and "Signals" tabs.
Display
The interconnection of the forced input is identified in the CFC by means of a colored rectangle
at the block input.
● A green rectangle means: "Add forcing" is activated
● A red rectangle means: "Add forcing" and "Forcing active" are activated.
Note
Colored rectangles are only visible for interconnection, as forcing is only possible for
interconnected parameters.
In test mode, the force value is distinguished from the other dynamic values by a different
background color. The default setting is "light blue" and can be changed in the "Color Settings".
Only the first element of a structure is shown in color. Other elements are not visible.
The background color of the force value is identical to the dynamic display of the chart.
Note
All force settings are lost after a cold restart of the CPU is performed while forcing is activated.
The settings are retained in the offline program. To restore consistency between the offline and
online programs, disable "Support forcing" at the chart folder, compile and download the data,
re-enable "Support forcing" at the chart folder and once again recompile and download the data.
Although connections with textual interconnections can be registered for forcing, this does not
have any effect in test mode.
Message to WinCC with forcing enabled (only when using an S7-400 CPU)
In the case of forcing, a new system chart @FRC_CFC is automatically installed with a runtime
group of the same name in OB1 during compilation. The message block FRC_CFC is added to
this chart, as well as being added to the OB100. This block triggers an active message to
WinCC if "Forcing active" is set at a parameter. The block triggers a corresponding outgoing
message after "Forcing active" was disabled again. The "Active" control option of the
@FRC_CFC runtime group defines that the block is only executed after the "Forcing active"
function has changed.
If forcing is disabled, the block, the system chart, and the runtime group are removed again from
the program the next time you compile and download.
Data types
The following data types can be forced:
BOOL, BYTE, INT, DINT, REAL, STRUCT, WORD, DWORD, DATE_AND_TIME
With the STRUCT data type, only the first level of the structure can be forced. Chart inputs/
outputs cannot be forced.
Note
If an EN input or the input of an FC or BOP is registered for forcing, the parameters can be set
for this input in test mode making it capable of operator control and monitoring.
Inserting I/Os
You can add I/Os to the dynamic display in edit or test mode. This function is handled in the
same way as the one for adding or removing block I/Os in the watch list.
How to add I/Os of an open chart to the dynamic display window:
1. Open the required dynamic display in the dynamic display window (relevant only if more
than one dynamic display was created).
2. Select the desired I/O, and then select the menu command Debug > Inputs/Outputs >
Insert in Dynamic Display.
3. Drag-and-drop this I/O to the dynamic display window.
For block I/Os with a structure: Before the I/O is entered in the dynamic display, a dialog box
appears in which you can select the structure element for the value to be displayed.
If you want to add all I/Os of a block or nested chart to the dynamic display, you can select the
block or chart and drag-and-drop it to the dynamic display window.
I/Os of the data type STRUCT and hidden I/Os will be excluded.
Deleting I/Os
To delete I/Os, select the relevant lines in the dynamic display and delete them using the
shortcut menu command Delete or by selecting the menu command Edit > Delete.
Note
If you delete blocks whose I/Os are contained in a dynamic display or move them out of the S7
program, the relevant entries will also be removed from the dynamic display.
Monitoring values
You can watch block/chart I/O values without opening the relevant charts.
The value is displayed dynamically on a yellow background according to the set watch cycle if:
● Test mode is enabled.
● The I/O or element of a structure is registered for monitoring via selection in the "Watch"
column.
● Your station is connected to the CPU.
Corrupted values are indicated with "####", an I/O value that cannot be monitored is displayed
as "- - - -".
A forced value is not shown with another background color as yellow (as specified in the "Color
Settings"). The default setting is "light blue".
Printing
You can also print the contents of the dynamic display. Use the menu command Chart > Print ...
or click the printer symbol in the function bar to print the values that were current when you
started printing.
Open Chart
If you select a row in the dynamic display, you can jump to the chart that contains the block
whose I/O is monitored. Call menu command Edit > Go To > Chart to open the relevant chart
and to highlight the I/O.
Trend display
With the trend display in CFC, you can follow the changes in one or more signals of a CPU
continuously over time. The trend display can be used by all target systems that support normal
online operation. A maximum of 12 values can be recorded at one time.
Note
If you delete blocks whose I/Os are contained in a trend display or move them out of the S7
program, the relevant entries will be removed from the trend display.
You can create and manage any number of trend displays for each CPU. Each display has its
own name that you enter when you create it and that you can modify at any time. In the trend
display window, only one trend display can be active at any one time. You select trend display
in the drop-down list in the "Trend Display" box in the header. This bar also contains the buttons
for creating, deleting, renaming, and exporting trend displays.
Use the menu command View > Trend Display to open and close the trend display window.
● When you open the trend display for the first time, an empty window is displayed with the
name "Untitled". You can rename this trend display.
● If there is more than one trend display, the display at the first position in the drop-down list
is displayed when you open the trend display following a restart of the CFC.
The "Start" button is active only in test mode. After starting, the start button changes into a
“Hold” button and is relabeled accordingly. You can then use it to stop recording at any time.
Recording window
After starting, the last recorded trend is deleted and the values acquired now are displayed. If
the display area is smaller than the total number (buffer size), the window scrolls automatically
when the right edge of the window is reached so that the latest value is always displayed.
If you record continuously, the display is shifted left when the maximum buffer size is reached.
The display of the entire time axis below the recording window depends on the number of
values (buffer size) entered for "Recording" and the acquisition cycle.
The visible time axis and, therefore, the scale, are decided by the sampling values entered for
"Display" and the acquisition cycle.
If the buffer length is greater than the number of sampling values for "Display", a slider is
displayed below the time axis. You can use it to move the visible section in the window.
Printing
It is not possible to print the trend display directly. You can, however, export the current trend
display in a format that can be read in Excel, for example, and then edit the display in this
program and print it as a table. To export the display, click "Export...". You should check the
settings for export using the menu command Options > Customize > Export Trend Data.
The ES log
In addition to the information of the change log, the actions with time stamp relevant for the
downloaded can be logged in the ES log in the CFC/SFC.
Requirement:
● The ES log must be activated for the respective chart folder.
A description of the activation and display is available below.
To enable the ES log for the current chart folder, proceed as follows:
1. Select the menu command Object Properties.
2. In the "Properties Chart Folder" dialog box, select the "ES log active" check box in the
"Advanced" tab.
The ES log is activated.
If protected functions do not need to be logged, for example, within the context of initial
configuration, you can deactivate the ES log. To do this, clear the "ES log active" check box.
Note
Please observe the following information:
● If you are not using an S7 target system, check in the target system online help to find out
whether the ES log is supported by the target system.
● Note that an activated ES log can only be deactivated on the computer on which SIMATIC
Logon Service is installed. Reason: Deactivation, as well as activation must both be logged.
● If you copy the program or chart folder with an active ES log to a computer on which the
SIMATIC logon service is not installed, you will receive an error message while downloading
or switching to test mode, and the action will not be executed.
Deactivating the ES log in this case is not possible because the "ES Log" tab is not offered
in the object properties dialog box for the chart folder. Activation and deactivation can only
be set in this dialog box.
● If access protection and the ES log are activated, the SIMATIC Manager’s "Compile and
Download Objects" function is interrupted prior to the download to each individual CPU with
the opening the ES log.
Logging in the ES
ES log
Open the ES log in CFC with the menu command Options > Logs... > Tab: ES Log.
Each action is recorded in the log in a main line, followed by any additional relevant details of
the action (for example, a download log). The actions are logged sequentially in chronological
order.
When the action "Download entire program" is performed, the ES log is cleared but
simultaneously saved as a file with a date ID. The archiving action and the file name used
(including the path) are recorded in the log.
During download, the comparison stamp of the target system is also written to the log:
● Last download-relevant change
● Last compilation
● Compilation of the loaded program
When the "Test mode on" action is performed, the subsequent actions resulting in a change in
values in the CPU are logged:
● In CFC:
– Configuration of the connections
– Activation/deactivation of runtime groups
● In SFC (PCS 7):
– Configuration of constants in steps
– Configuration of constants in transitions
– Configuration of constants in sequencer properties
The logging includes the value and how it changed (address, old value, new value).
Note
You will automatically be presented with a read-back option before a complete download of the
program is performed. This is aimed at preventing values previously modified by you in debug
mode or on the OS from being lost unintentionally if all blocks are deleted. You are free to
accept or reject the read-back option, which is made available in a dialog box.
Read-back is only possible if no interface changes have been made to block types, i.e.,
provided that a download of changes remains possible.
Procedure
1. Select the menu command Chart > Read-back... in CFC Editor, or select the menu
command Options > Charts > Read Back Program... in SIMATIC Manager.
2. Select the source in the "Read Back" dialog box:
– Select "Program on the CPU"
to read back the program with the current parameters from the CPU (online block folder)
into the chart folder.
– Select "Program offline"
if you do not have direct access to the CPU and have copied the online block folder into
the offline block folder of an S7 program in the plant. A browser will then open before the
read back allowing you to select the respective S7 program with the plant data. The
values are then read from this source and written to the ES database.
You can select the following in the dialog box in both cases:
● All parameters of the block inputs
● OCM-capable parameters (system attribute S7_m_c: = 'true')
● Designated parameters (system attribute S7_read_back := 'true')
The default setting for the scope is "OCM-capable parameters".
General rules
The following applies regardless of the selected scope:
● Only in/out and input parameters can be read back. Output parameters cannot be read back.
● The following data types are not included in the readback:
ANY, ARRAY, POINTER, UDT
● Inputs, which write to the SFC, are not read back.
● If a parameter is never to be read back, you must set the attribute S7_read_back =
never.
If a parameter is always to be read back, you must set the attribute S7_read_back =
always.
● Entire blocks can be excluded from the readback, for example, BATCH blocks. In this case,
the block type contains the attribute S7_read_back := 'false'. The attribute can be changed
at the block instances with the menu command Block Properties > "Read-back enabled"
Option .
● Unconfigured inputs (S7_param = "false") are not read back if they have a simple data type.
S7_param = "false" does not prevent readback for complex data types.
● Note for H-CPU
When the H-CPU is in solo mode, due the failure of a CPU for example, and the CPU has
switched over, a dialog box opens for online access (in this case: Readback). There you can
select which CPU should be linked. This dialog box does not appear in redundancy mode.
● Note about downloading HW Config data
After the download of HW Config data, note that the data is taken from the loading memory.
Changes performed by operator control and monitoring or in test mode are only available in
the main memory. The changes in the main memory are lost when the data is taken from the
loading memory because it is overwritten by the initial values of the loading memory. If you
have performed a readback before downloading the HW Config data to obtain the operator
values, you can transfer it to the CPU with a complete download in the STOP state.
Note
If the address spaces for digital I/O modules were packed in HW Config ("Pack addresses"
function), the driver generator can no longer supply the associated blocks with unique
addresses. To ensure that each module has a defined slot assignment, the addresses must not
be packed.
Note
Please observe the following information:
● The driver block library must be installed on your PC via Setup. Only this type of installation
ensures that sufficient meta-knowledge is available for the driver generator. You are not
permitted to copy the library from one computer to another.
● You can also use driver blocks from other libraries (for example, user blocks from a custom
library). In the "Generate Module Drivers" dialog box you can specify an additional library.
The driver generator then looks in this additional library first for every block to be imported.
It will only look in the control file (XML file) when it cannot find the block in the specified
library.
● If the S7 program contains a block for processing signals (CH_xx, CH_U_xx, PA_xx ), but
none from one of the PCS 7 libraries, you must specify the version of the driver library from
where the driver blocks should be imported in the "Generate Module Drivers" dialog box.
● The signal processing blocks (CH_xx, CH_U_xx, PA_xx) must be interconnected with a
corresponding signal name from the symbol table. This is the only way to ensure that the
driver generator considers this block during generation of the system charts and parameter
assignment of the blocks for signal processing. Otherwise, the functionality of other signal
processing blocks with the same parameter assignment may be affected.
Additional information
You can find additional information on this in the following sections:
● Brief description of blocks used (Page 408)
● How the "Generate Module Drivers" function works (Page 411)
● Session model for "Generate Module Drivers" (Page 413)
● Devices supported by the driver generator (Page 407)
Table 17-1
Note
In addition, device manufacturers may deliver their own diagnostic blocks with corresponding
XML files, which are then processed by the driver generator.
Block Types
The following block types are used, which separate the hardware and software configuration:
● The user inserts channel-specific blocks (CH/PA blocks) into the CFC chart and
interconnects those entries to corresponding signal names from the symbol table. These
blocks and system functions are always included in the same process, since the blocks are
a part of system functions.
The driver block library provides the following types of channel blocks for signal processing:
– Standard channel blocks:
CH_AI, CH_AO, CH_DI, CH_DO.
These blocks are only used to process signals of the S7-300/400 SM modules. Use
these standard blocks if you want to optimize memory utilization and runtime and do not
need to process any PA devices.
– Universal channel blocks:
CH_U_AI, CH_U_AO, CH_U_DI, CH_U_DO.
These blocks are used for processing the signals of S7-300 / 400 SM modules or PA field
devices. The advantage of these blocks is that you can create CFC charts irrespective
of the hardware I/O to be used later. A disadvantage is an increase of the load on
memory and cycle times.
– PA channel blocks:
PA_AI, PA_AO, PA_DI, PA_DO, PA_TOT,
These blocks are designed especially for use with PA field devices. They are used
primarily where the special features of these devices are required. In contrast to CH
blocks, the PA channel blocks process not only the actual signal but also all variables,
according to the desired device configuration selected in the hardware configuration.
– Special channel blocks
CH_CNT, CH_CNT1, CH_MS.
These blocks are required for special applications such as controlling and reading the
counter or frequency values of FM 350-1/-2 modules and 8-DI NAMUR modules of the
ET 200iSP, as well as for signal processing of ET 200S motor starter modules.
– Standard channel blocks in the Advanced Process Library:
Pcs7AnIn, Pcs7AnOu, Pcs7Diln, Pcs7DiOu, Pcs7DilT
These blocks are used only for processing the signals of S7-300/400 SM modules. Use
these standard blocks if you want to optimize memory and runtime utilization and do not
need to process any PA devices.
– FF/PA channel blocks in the Advanced Process Library:
FbAnIn, FbAnOu, FbDiIn, FbDiOu
These blocks are specifically intended for use with PA field devices and the PROFIBUS
3.0 class A and B with FF field devices. You should use these blocks if you want to make
use of the special features of these devices. In contrast to standard channel blocks, PA
channel blocks not only process the signal itself but also all variables, according to the
desired device configuration selected in the hardware configuration.
For additional information about the functions and functionality of CH and PA blocks, refer
to the context-sensitive help (<F1>) for each block.
● In the extended driver design, MSG_CSF was replaced by the OB_BEGIN block for
standard CPUs and H CPUs. This function monitors the status of the (redundant) CPU and
the DP master systems. It fetches OB startup information (for more on this, see this
figure: Interconnection model, module drivers (Page 410)), determines the geographical
address based on the logical address and passes this information to the output (CPU_DIAG
structure). All driver blocks are interconnected, using this structure. OB_END is installed at
the end of the sequencer of all OBs and resets startup information.
OB_BEGIN also performs connection diagnostics, for example. Process control enclosures,
which were monitored with MSG_CSF, are no longer monitored. This function must be
implemented in a separate block as required.
● Using OB 70 and OB 86, the SUBNET blocks analyze the status of the DP master systems
and return this information (linked to the CPU monitoring) as higher-ranking errors to the
RACK blocks.
● The RACK block monitors the status of a rack, DP/PA or Y link DP V1 and reports the error
events.
In order to prevent all MOD blocks from reporting a module failure if a rack fails, a RACK
block in each rack takes over the reporting function. The MOD blocks recognize in OB 86
that the event has been processed and do not report.
● Using diagnostic blocks:
– MOD blocks are used to monitor SM modules, motor starter modules and HART/PA field
devices. They provide the channel-specific value status for the signal-processing blocks
(1 = good, 0 = bad). ALARM_8P is used to report these events. Errors originating from
a higher level, for example, DP master system diagnostics, are entered in the RACK
block.
– DP/PA slaves are monitored with the PADP_L0x (V0) or PADP_L10 (V1) blocks, PA
slaves with the DPAY_V0 or DPAY_V1 blocks.
● The PO_UPDAT block ensures that the startup values that were written to the process
image by the CH_AO and CH_DO blocks are sent to the output modules when the CPU is
restarted (OB 100). This means that these values are effective immediately when the CPU
changes to RUN.
For additional information on the functions, functionality and message capability of the blocks,
refer to the context-sensitive help (<F1>) for the block.
Additional information
You can find additional information on this in the following sections:
How the "Generate Module Drivers" function works (Page 411)
Session model for "Generate Module Drivers" (Page 413)
Devices supported by the driver generator (Page 407)
How it works
This function automatically generates system charts and inserts the diagnostic blocks (MOD or
PADP/DPAY blocks), the RACK and SUBNET blocks, OB_BEGIN and OB_END, and the block
for outputting the process image PO_UPDATE. System charts are assigned the name "@.....".
Blocks inserted by the driver generator are assigned the name of the module assigned.
Process control messages of the WinCC message system are assigned the name of their
origin. In this case, this is the block name and thus the name of the monitored module.
Tip: You can assign a specific text to process control messages by setting a corresponding
module name in HW Config. This text then becomes part of the process control message.
The blocks are imported from the library when you initially generate module drivers and the
CFC data management does not yet contain any driver blocks (including OB_BEGIN and
OB_END). The block search starts at the path defined in the "Settings – Generate Block
Drivers" dialog box. If a block is not found in this path, the searches extendss to the default
paths defined during setup of the PCS 7 libraries.
Note
Please observe the following information:
● Objects identified by the "@" character should not be modified by the user, but should only
be manipulated using the “Generate Module Drivers” function. Accordingly, the MOD/PADP/
DPAY, RACK and SUBNET blocks should not be inserted manually.
● Driver blocks created by the user must be inserted from the block catalog. Copied "@"
blocks will be deleted after the next call of the "Generate Module Drivers" function, since the
driver generator does not assign their ID.
The MOD/PADP/DPAY blocks are installed in the acyclic error OBs as well as in OB 1. This
ensures that they are also executed following an online download of changes (since OB 100 is
no longer executed in this case). The runtime group is assigned a reduction ratio of 16. The
blocks are called only every 16th time OB 1 is executed, in order to avoid unnecessary load on
the CPU.
Following driver generator startup, the runtime groups in OB 1 is assigned the reduction ratio
16. Changes made later by the user are overwritten. in order to prevent inconsistency during
the program cycle.
The system verifies the existence of the PO_UPDAT block in CFC. If it does not exist, it is
imported from the library and inserted in the system chart. It is installed in the run sequence at
the last position in OB 100. If the block already exists, the system verifies that it is installed in
OB 100 after the driver blocks and that it is deleted from all other OBs.
The system verifies the existence of OB_BEGIN/OB_END blocks in CFC. If not found, the
system will import the blocks from the library and insert them into the chart and run sequence.
The PO_UPDAT block ensures that startup values written to the process image by the CH_AO
and CH_DO blocks are transferred to the output modules during a CPU restart and that they
take effect immediately.
The OB 1 PI is updated at the cycle control point (no constant scan cycle time). You can achieve
a constant scan time by using process image partitions (PIP). PIP update times are configured
in HW Config by assigning a PIP to an OB. The PIP update covers the inputs at the start of OB
execution and the outputs at the end of OB execution. Process image partitions are module-
related, In other words, the fastest signal determines the update of all module signals.
NOTICE
Effects of deletion
When the @ system charts are deleted, new DBs are generated during the subsequent
generation of module drivers. Since initial values are written in the CPU for one cycle in this
process, smooth continuation of work is not always guaranteed.
Additional information
You can find additional information on this in the following sections:
● How to generate module drivers (Page 405)
● Session model for "Generate Module Drivers" (Page 413)
● Interconnection model, module drivers (Page 410)
● Devices supported by the driver generator (Page 407)
● Configure the technological functions in CFC and uses the CH_ blocks (or PA_ blocks) that
are interconnected to the signal names taken from the symbol table:
– Select the menu command Insert > Interconnection to Address....
● In the SIMATIC Manager , call the driver generator with the menu command Options >
Charts > Generate Module Drivers... to generate, interconnect and configure all module
drivers. The following steps are performed automatically:
– In the first step the function identifies all channel blocks (_AI, _AO, _DI, _DO) used in the
CFC charts, and in the next step all I/Os, for example, Value, O_SP, I_OUT_D, that are
interconnected to the symbols of the I/O channels configured in HW Config. PA_AO/
PA_DO blocks may require the interconnection of several symbols. Only a "leading"
symbol needs to be interconnected in this case, the others are automatically identified
and interconnected via the driver generator. By using the symbolic addresses of the
symbol table, the corresponding module and channel are identified in hardware
configuration data. Based on the module type, the corresponding diagnostic block type
(MOD or PADP) is identified and in the system chart a block instance will be created for
each I/O module.
– The parameters required for the diagnostic blocks are obtained from HW Config data
and entered in the block instances, as well as in the SUBNET block for optimizing
runtime in error OBs.
Printing a chart
To print a chart, select the menu command Chart > Print.
The active chart is printed on your default printer.
Options
Print options are available for different printouts. They also apply when printing from the
SIMATIC Manager using the menu command File > Print > Object Content.
Print what
You can set the following print ranges:
● Current sheet
Prints the current sheet.
● Current chart partition
Prints only the overview or sheets or both the overview and sheets of the current chart
partition, depending on your selection.
● All chart partitions
Prints only the overview, the sheets or both the overview and the sheets of all chart partitions
of the current chart, depending on your setting.
If the current chart contains chart I/Os, you can select the following print scope:
● Chart with chart I/Os
● Chart without chart I/Os
● Chart I/Os only
If you select print chart I/Os, these will be printed in a table on a separate page. This table
contains all relevant information, such as data type, initial value or "Invisible". Chart I/O
information (columns) will always be printed, regardless of which columns are visible in the
chart I/O window. If there are too many I/Os to fit on one page, additional pages are printed.
The "Overview" and "Sheets" options let you decide whether to print only the overview of the
chart, only the sheets or both (depending on the setting for the chart I/Os). These options are
disabled when the option "Chart I/Os only" is selected.
Only sheets with contents will be printed. Since at least one chart page will be printed for a chart
with or without chart I/Os, an empty sheet will also be printed if the chart consists only of empty
sheets.
When you print from the SIMATIC Manager , the lower-level charts, in other words the nested
charts of the top chart, are also printed (default). If you do not want to print the lower-level
charts, deselect the "Include nested charts (from the SIMATIC Manager)" check box.
Note
The option only applies to the SIMATIC Manager. When printing from CFC, only the open chart
will be printed, regardless of this setting. This can also be a nested chart.
Click "Options" in this dialog box to display additional print options. Regardless of the current
chart layout, this dialog box lets you customize the print layout for addresses, I/Os and block
header information. You change the current layout in the chart with the menu command
Options > Customize > Layout.
Page setup
With the menu command Chart > Page Setup..., you can customize the layout. You specify the
paper format for the printer and the page margins.
Print preview
The menu command Chart > Print Preview displays a WYSIWYG view of the chart (sheet or
overview). Click "Close" or hit <Esc> to return to the standard display.
Introduction
The DOCPRO add-on package can be used for printing a CFC chart, along with footer data. In
the footer data, a distinction is made between global data and chart-specific local data.
You can enter global data for the project using DOCPRO or SIMATIC Manager ; local chart-
specific data must be input via the CFC editor. Note that chart-specific data will overwrite the
global data in the particular chart.
You can also input chart-specific data even if you have not installed the DOCPRO add-on
package. Although these data are saved, they will not be available until you have installed
DOCPRO.
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:
In new projects generated under DOCPRO V5.1, you can define the keywords using DOCPRO
keywords. This means you do not need to enter the keywords in the footers of the CFC. The
footers are, nevertheless, still supported. You still have to enter the texts directly for older
projects.
Note
If keywords entered in CFC also specify other print objects (for example, STL blocks or the table
of contents of DOCPRO), the printed copy will display the actual keywords, rather than their
substitutes, for these objects. This problem no longer exists if you use DOCPRO keys.
When using DOCPRO keys, you must change the standard layout in DOCPRO. Open the
"Modify layout" dialog box to replace the default footers with chart-specific footers. You can find
information on this in the DOCPRO Online Help or in the manual DOCPRO: Creating
Documentation in Conformance with Standards.
You must continue to use the keys for "project path" and "Location of the project" (in the lower
part of the table) because there are no DOCPRO keys for them.
Procedure
You can print the contents of the (active) dynamic display with the normal print function using
the menu command Chart > Print....
The values currently displayed when printing is triggered will be printed.
The column widths are set to optimum values for printing. The printout is in landscape format
(default), but can be temporarily changed in the printer setup.
You can print the table of I/Os from the "Properties – Block" and " Properties – Chart" dialog
boxes. The "Print..." button is available on the "General" and "I/O" tabs. This button always
prints the table of the I/Os.
Procedure
1. Select the “General” or “I/Os” tab.
2. Click "Print…".
The column widths are set to optimum values for printing. The printout is in landscape format
(default), but can be temporarily changed in the printer setup.
Introduction
The log files do not belong to the complete documentation of the configuration structure. They
can, however, provide important information during configuration and commissioning if errors
occur or if specific executed operations are to be checked.
Procedure
1. Select the menu command Options > Logs….
A dialog box with several tabs opens. The tabs are only available when the corresponding
functions have been previously executed.
2. Click "Print".
The messages are printed.
You can select the layout with the "Page Setup" button.
More information on the tabs and buttons is available in the "Help on the log dialog" online help
of the dialog box.
19.1.1 ANY, A
Note
ANY I/Os, for example, SD_1 for SFB 12/BSEND, can also be interconnected with a complete
data block (shared address, absolute, for example -> DB1, or symbolic). The complete length
of the DB is transferred.
19.1.2 ARRAY
An array consists of a grouped data type with up to 6 dimensions.
CFC does not support this data type.
This means that user-specific blocks that contain this data type will be rejected with an error
message during an import to the CFC database.
19.1.3 BLOCK_DB, DB
19.1.4 BLOCK_FB, FB
19.1.5 BLOCK_FC, FC
19.1.6 BOOL, BO
19.1.7 BYTE, BY
19.1.8 CHAR, C
19.1.9 COUNTER, CR
19.1.10 DATE, D
19.1.12 DINT, DI
19.1.13 DWORD, DW
19.1.14 INT, I
19.1.15 POINTER, P
Note
When supplying the data type POINTER, certain restrictions and rules must be kept to. Please
read the online help of SCL on the POINTER data type. As a general rule, POINTER can be
interconnected with any other data type except for POINTER and ANY. If the interconnection
is not permitted, you receive a message when you compile the program.
19.1.16 REAL, R
Abb. Keyword, Value range (normalized) Sample entries Display in the chart
Type from ... to
R REAL; -3.402823e+38... -1.175495e-38... 22.78; 2.278e1;
floating-point number 0.0... 1.175495e-38... 3.402823e -1234522.456789; -1.23452e+6;
+38 -3.456e-3; -3.456e-3;
2.573e19 2.573e19
Note
STEP 7 maps the data type REAL according to the IEEE standard (to 32-bit short real). Due to
the self-restriction, only normalized coding of the numbers is used (see above).
This standard reserves the following additional special bit patterns.
● Not normalized coding with values below the smallest number of the normalized range
(-1.175495e-38 < x < 0.0 and 0.0 < x < 1.175495e-38)
● Infinite positive values (+ infinite)
● Infinite negative values (- infinite)
● Illegal bit patterns for numbers, so-called NaN (Not a Number)
When using the data type REAL in CFC, the display/evaluation of online values, for example,
dynamic update of values in test mode or when reading back from the CPU, is always based
on a calculation with special bit patterns. CFC thus handles those values as follows:
19.1.17 S5TIME, T5
19.1.18 STRING, S
19.1.19 STRING[N], SN
19.1.20 STRUCT, ST
19.1.21 TIME, TI
19.1.22 TIMER, TR
19.1.24 WORD, W
19.2 References
Note
If you have already manually deleted the AS-wide interconnections in the unavailable partner,
you nevertheless have to use the command to synchronize the internal time stamp.
5XQWLPHJURXSZLWKVFDQUDWH SKDVHRIIVHW
7DVN
F\FOH Q
([HFXWLRQPRPHQW
3KDVHRIIVHW 6FDQUDWH
You can find additional information about this in the following sections:
Displaying runtime properties (Page 175)
Display of block execution (Page 198)
In this box, you can view and edit the name of the block instance or chart. The maximum string
length for blocks is 16 characters, for nested charts 22 characters. The name may not include
the following characters: \ / . " %.
Note
Please observe the following information:
● Remember when assigning names that the variable name must not be longer than 128
characters for transfer to the OS ("Compile OS"). The name consists of the following
elements:
– The name of the folder in the hierarchy path
– The chart name
– The block name
– The separator (period)
– The I/O name (variable name)
● When transferring to the OS, in addition to the illegal characters listed above, the following
characters are not permitted in the name and are automatically replaced by the $ character:
Space ? * ' :
Tip: Never use any of the characters listed above when selecting names.
Comment
In this box, you can view and edit the block or chart comment. You can enter a maximum of 80
characters. Only the first 14 characters (large block and nested chart) or 7 characters (small
block) are displayed in the header.
The comment will only be adopted by WinCC, if it was edited at this instance prior to OS
compilation.
Group (only for blocks with messages)
In this field you can assign the block to a group that is intended for hiding messages. The name
of the group can have a maximum of 24 characters.
Displays the name of the block as specified in the internal block header at the time the block
was created.
Family
Displays the family name of the block as specified in the internal block header at the time the
block was created. This is used, for example, as a sorting criterion in block catalogs.
Author
Displays the name as specified in the internal block header at the time the block was created
(for example, with basic operations "CFC-BOP" or technological blocks "TECH").
To be inserted in OB/tasks
There are blocks that must be installed in certain tasks, for example, to ensure that the startup
behavior, process-control message capability and other properties will take effect. The list
displays the tasks where CFC has automatically installed the block. You can edit the run
sequence later with the menu command Edit > Run Sequence....
"OCM possible" area
Here you can define the response of a block that can output messages or can be controlled and
monitored from an OS.
The option "OCM possible" does not influence message transfer to the OS.
● "OCM possible" check box
Select or deselect the "OCM possible" check box to decide whether this block is entered in
the watch list on the OS for operator control and monitoring. When you deselect the check
box, all elements of this group are switched to inactive. They are then no longer relevant for
execution but they retain their setting.
● "Operator Control and Monitoring..." button
Click "Operator Control and Monitoring" to open the dialog box where you can set special
properties. There is usually no need to call this dialog box when using WinCC and the PCS
7 library blocks, since the properties are set here by default.
● "Create block icon" check box
When you select/deselect the "Create block icon" check box, you decide whether or not a
block icon is created for this block.
The block icon can be activated for instances of SFC types. The variants of the block icons
are configured in the object properties of the SFC type, however.
● Input field
In the "Block icon" input field, you can specify the icon WinCC displays for this block. You
can thus set different variants for the same block type, if they exist.
A maximum of 16 characters is possible.
The templates of the block icons and their variants are located in the picture
"@PCS7TypicalsBasisLibraryV8.pdl".
The variants of a block icon can be distinguished by the string "/<number>" at the end of the
icon name, for example, <name>/2".
Variant Remark
1 Standard style PCS 7
2 New style based on the APL
<Variant name> User-defined variants;
user-defined variant name as the name of a block icon; max. 16 char‐
acters
The input field is active if the "Create block icon" check box is selected. The input field is
disabled if you clear the "Create block icon" check box. However, the entry is retained.
You can find more information on block icons in the section "Operator control and monitoring
(Page 170)" or in the section "Configuring SFC block icons" of the "SFC Visualization" online
help or documentation.
● When you select/deselect the "MES-relevant" check box, you decide whether or not the
information of this block is transferred to the enterprise levels MIS/MES when requested.
This input field is only enabled if you have selected the "OCM possible" check box.
"Special properties" area
● Click "Messages..." to open a dialog box where you can edit the block's message texts.
● If the "Read-back enabled" check box is selected, the block is included in the read back
(default). The block has the system attribute S7_read_back = 'true'.
Depending on the scope set in the Read Back dialog box, all block I/Os are read back or only
those with the "Operator control and monitoring" system attribute (S7_m_c := ‘true’) and/or
those with a special designation (S7_read_back := ‘true’).
You can also exclude the entire block from the read back if you deselect the check box
(S7_read_back := 'false').
● Use the "Technolog. assignments..." button to open a dialog box in which all assigned
objects are listed.
Select an object and confirm it with the "Go to" button to jump directly to this object. This
button only exists if there are assignments.
"OK" button
This button applies all the changes you have made in the dialog box. The dialog box closes.
"Apply values" button
This button is active only when you are in test mode and have changed one or more values in
the "Value" column of the "I/Os" tab.
The button applies only the modified values in the "Value" column on the CPU. The dialog box
remains open so that you can change a value more than once and follow the result in the block
in the chart.
"Print" button
This button enables you to print the table of input/outputs. The tab switches from "General" to
"I/Os" when you click the button.
The table is printed in landscape format. The columns are set to optimum width and then set
back to their previously set width.
"Cancel" button
This button discards all unsaved changes and closes the dialog box. Modified values that you
have already accepted with the "Apply values" button are retained.
Instead of an absolute numeric value, a value identifier can also be displayed here if value
identifiers were configured for this I/O and the "Value identifier" option is enabled in the settings
for the display. In this case, you can select the text to be displayed in a combo box, for example,
the display text of an enumeration. The button for the drop-down list is displayed when you click
in the combo box.
Interconnection
This shows the connected partner when I/Os are interconnected. When an output has several
interconnections, all inputs connected to this output are shown.
Background:
A maximum of 160 I/Os per interface side (left side IN and IN_OUT, right side OUT) can be
displayed in the CFC. When there are more than 160 I/Os per interface side they are switched
to invisible. This occurs from the last I/O onward. This may include interconnected I/Os.
Although these interconnections are no longer visible, they can be recognized only in the
"Interconnection" column.
Note: If the I/O of one interconnection partner is invisible, the interconnection of the visible I/O
is led to the sheet bar and the target of the interconnection is identified by "(INVISIBLE)".
If both partners in the interconnection are switched to invisible, the interconnection can no
longer be recognized in the chart. This also applies to textual and symbolic interconnections
and for interconnections to runtime groups.
If an I/O cannot be interconnected (S7_link := 'false'), the text <cannot be interconnected> is
entered.
Add forcing
Displays the selected I/O at which the add forcing function is enabled. This option is only
available if forcing has been globally enabled in the SIMATIC Manager .
Forcing active
Displays the selected I/O at which the forcing active function is set. This option is only available
if "Add forcing" is active.
Force value
Displays the force value. You can only edit this value if "Add forcing" is active. This value
depends on the data type of the I/O.
SFC access
Shows the I/O which are selected for read / write access by an SFC. This identifier is of
particular significance to hidden I/O, because this SFC access is not shown in the block
representation of the chart.
Technological assignments
Here the connections are selected that are connections of a control module. You copy and
insert the connections with a shortcut menu.
Comment
Here you can view and edit the I/O comment (maximum of 80 characters).
The comment of an interconnected input can be an input comment (I/O comment) or an
interconnection partner comment (interconnection comment). The display depends on the
settings made in "Customize Display". Open the dialog box using the menu command Options
> Customize > Layout.... If the interconnection comments are to be displayed in the CFC chart,
select the "Interconnection comment" check box in the "Parameter" group of the dialog box.
You cannot modify the interconnection comment in the input object properties.
Invisible
Here, you can decide whether interconnected or not interconnected I/Os are to be displayed or
hidden.Check mark = hiddenNo check mark = visible.
If the I/O of one interconnection partner is invisible, the interconnection of the visible I/O is led
to the sheet bar and the target of the interconnection is identified by "INVISIBLE".
If both interconnection partners or the I/O with a symbolic or textual interconnection is switched
to invisible, this interconnection can no longer be recognized in the chart, but only in the
"Interconnection" column. The same applies to interconnections to runtime groups.
Note
If the block contains invisible interconnected I/Os, a colored triangle appears in the top right
corner of the block header. This also applies to SFC access.
Watched
Here you can set the I/Os so that they are logged in for test mode. This allows you to view and
edit the actual values of the CPU.
Archive
Here, you can mark I/Os of the data type BOOL, BYTE, WORD, DWORD, INT, DINT, and
REAL for the following types of archiving:
● No archiving
● Archiving
● Long-term archiving
Requirement: The I/Os are intended for operator control and monitoring.
The boxes in this column can only be edited when the I/O is intended for operator control and
monitoring (system attribute S7_m_c := 'true'). This applies regardless of whether the current
block is switched to operator control and monitoring.
With the integrated drop-down list, you can specify that the I/O is not relevant for archiving ("No
Archiving"), or is marked for "Archiving", or for "Long-term archiving".
You can find additional information on this in the following section: Configuring archive tags
(Page 172)
Identifier
Here you can view the identifier of I/Os that are not of the type BOOL and you can enter
identifiers with a maximum string length of 16 characters, for example, "Setpoint" or "CP". The
OS uses these texts for displays and logs.
Unit
Here, you can select the most common units from a drop-down list for I/Os that are not of the
BOOL data type. The button for the drop-down list is displayed when you click in the combo box.
Note
The set of units is installed with CFC and can be modified or supplemented in the SIMATIC
Manager . You can find additional information on this in the following section: Configuring
Shared Declarations (Page 163).
Text 0
Here, you can enter a text with a maximum length of 16 characters for the value "0" for I/Os of
the BOOL data type, for example, "Close" and "Closed".
In the "Value" column you can select this text or "Text 1".
Note
If the I/O is also assigned the system attribute "S7_enum", this box is deactivated. In this case,
only the enumeration is used as value identifier.
Text 1
Here, you can view and enter a text with a maximum length of 16 characters for the value "1"
for I/Os of the BOOL data type, for example, "Open" and "Opened".
In the "Value" column you can select this text or "Text 0".
Note
If the I/O is also assigned the system attribute "S7_enum", this box is deactivated. In this case,
only the enumeration is used as value identifier.
Enumeration
If this involves an I/O that is assigned the "S7_enum" system attribute, you can select the
enumeration in the drop-down list created in the current project in "Shared Declarations" for I/
Os of the data type BOOL, BYTE, INT, DINT, WORD, DWORD.
The display names that you can select from the "Value" box in the drop-down list are assigned
as values to each enumeration if the "Value identifier" option is activated in the "Customize
Display".
You can select the empty field in the "Enumeration" drop-down list to delete an enumeration.
The numerical value is then displayed in the "Value" box instead of the display name.
Note: When the enumeration is deleted, the "S7_enum" system attribute is retained at the block
I/O, in other words an empty string is entered instead of the enumeration previously shown.
You can find additional information on the enumerations in the section: Configuring Shared
Declarations (Page 163)
Parameters
You can here identify the I/Os you want to display on the "Parameters" tab of the process object
view. You can change this setting in the SIMATIC Manager using the menu command
Options > Process Objects > Select I/Os....
Signal
Here you can identify the I/Os you want to display on the "Signal" tab of the process object view.
You can change this setting in the SIMATIC Manager using the menu command Options >
Process Objects > Select I/Os....
Options are: "Parameter" or "Signal", or none at all.
MES-relevant
When the "MES-relevant" check box is selected, this acts as a filter so that if an MES system
is connected, only the control system information of interest for MES is transferred. With this
option, you can mark individual I/Os with OCM capability as being relevant or irrelevant for MIS/
MES. You can identify these I/Os as relevant regardless of the setting of the "MES-relevant"
check box on the "General" tab.
Operator authorization level
This option is only available if the "Op_Level" attribute is available for the block type. You can
set a value between 1 and 99 here.
OS additional text
Here you can enter a label text for the button in the faceplate. You can use this button to jump
to the faceplate of the interconnected block. The text can be edited.
The input field is only active if the block has screen jump functionality in WinCC.
Buttons
"OK" button
This button applies all the changes you have made in the dialog box and closes the dialog box.
"Apply values" button
This button is active only when you are in test mode and have changed one or more values in
the "Value" column of the "I/Os" tab.
The button applies only the modified values in the "Value" column on the CPU. The dialog box
remains open so that you can change a value more than once and follow the result in the block
in the chart.
"Print" button
This button enables you to print the table of input/outputs. The tables are printed in landscape
format. The columns are set to optimum width and then set back to their previously set width.
"Cancel" button
This button discards all unsaved changes and closes the dialog box. Modified values that you
have already accepted with the "Apply values" button are retained.
If the following options are selected for a parameter, the corresponding attribute of the
parameter is excluded from type update explicitly:
● Ignore value
Value of the parameter is ignored for type update and the parameter is marked as “Pink”
parameter in the block I/Os.
● Ignore comment
Comment text for the parameter is ignored for type update.
● Ignore Text0
Text for the parameter value 0 (system attribute S7_string_0) is ignored for type update.
● Ignore Text1
Text for the parameter value 1 (system attribute S7_string_1) is ignored for type update.
● Ignore identifier
Identifier (system attribute S7_shortcut) is ignored for type update.
● Ignore unit
Measuring unit of the parameter (system attribute S7_unit) is ignored for type update.
● Ignore enumeration
Enumeration (system attribute S7_enum) is ignored for type update.
● Ignore parameter/signal
Setting for displaying parameter/signal in the "Process Object View" (system attribute
S7_edit) is ignored for type update.
Buttons
"OK" button
This button applies all the changes you have made in the dialog box and closes the dialog box.
"Print" button
This button enables you to print the table of input/outputs. The tables are printed in landscape
format. The columns are set to optimum width and then set back to their previously set width.
"Cancel" button
This button discards all unsaved changes and closes the dialog box. Modified values that you
have already accepted with the "Apply values" button are retained.
Function
The enable attribute enables or disables a runtime group (on = 1, off = 0) and represents a
master control. As long as “0” is set the runtime group will not be executed, regardless of any
other conditions.
Note
If a runtime group is interconnected to a binary output of a block, this output value always
controls the runtime group. In this case, the “Active” option is ignored.
If the text you entered is not found as an object name, CFC searches for a block with a
corresponding comment. The folder, for example, of the block family, or the library in which the
block is located is opened and the block is selected.
The block is searched for starting from the selected object (library, folder or block) in the active
catalog window. All the libraries and folders are searched until the required object is found or
until the search returns to the selected object.
With the "Find initial letter" check box you can decide whether the search starts at the initial
letters (restricted search) or whether any part of a name or comment should be searched for
(free search; default).
During the search, a dialog box with a progress display is shown. Here, you can stop the search
if it takes too long, for example, when you first search through libraries.
The search stops when an object with the specified letters is found.
By clicking on the button mentioned above, you can search for other objects with these letters.
The search is completed when it returns to its starting point.
Function
Phase offset allows a uniform distribution of load within the CPU. It must be considered in
conjunction with "n", the reduction ratio. The group is executed as often as specified by "n", in
each case offset by "m" units of the task cycle. "m" is an integer, where 0 <= m <= (n-1).
Default: 0, no phase offset
Additional information
You can find additional information on this in the following sections:
Reduction ratio (Page 446)
Example of reduction ratio and phase offset (Page 428)
The driver and message concept described here applies if you want to use or continue to use
CH blocks with version < 2.0.
Note
This method prevents new versions of block types being used in the program if blocks with the
same name already exist in the CFC data management. It also prevents global block type
changes for these blocks.
The MOD blocks for each rack will be installed in runtime groups, including the RACK block.
Those blocks and the runtime groups are identified in the run sequence by the "@" prefix.
Note
Please observe the following information:
● Objects identified by the "@" character should not be modified by the user, but should only
be manipulated using the “Generate Module Drivers” function. The same applies to manual
insertion of MOD, RACK and SUBNET blocks.
● Driver blocks created by the user must be inserted from the block catalog. When "@" blocks
are copied, they will be deleted the next time the "Generate Module Drivers" function is
executed.
The MOD blocks are installed in the acyclic error OBs as well as in OB 1. This ensures that they
are also executed following an online block download, since OB 100 is no longer executed in
this case. The runtime group is assigned a reduction ratio of 16. The blocks are called only
every 16th time OB 1 is executed, in order to avoid unnecessary load on the CPU.
The system verifies the existence of the PO_UPDAT block in CFC. If it does not exist, it is
imported from the library and inserted in the system chart. It is installed in the run sequence at
the last position in OB 100. If the block already exists, the system verifies that it is installed in
OB 100 after the driver blocks and that it is deleted from all other OBs.
The system checks whether an MSG_CSF exists in CFC. If this is not the case, it will be
imported from the "PCS 7 Technology\Blocks" library, inserted in the system chart and in the
run sequence of the cyclic interrupt OB 32 and in the following startup/special OBs: OB 72,
OB 81, OB 83, OB 84, OB 85, OB 86, OB 87, OB 100, OB 121, and OB 122.
No warning is issued when there is more than one MSG_CSF.
The PO_UPDAT block ensures that startup values written to the process image by the CH_AO
and CH_DO blocks are transferred to the output modules during a CPU restart and that they
take effect immediately.
The OB 1 PI is updated at the cycle control point (no constant scan cycle time). You can achieve
a constant scan time by using process image partitions (PIP). PIP update times are configured
in HW Config by assigning a PIP to an OB. The PIP update covers the inputs at the start of OB
execution and the outputs at the end of OB execution. Process image partitions are module-
related, In other words, the fastest signal determines the update of all module signals.
Function
The reduction ratio specifies whether the runtime group is processed each time the OB is
executed or only every nth time the OB is executed. "n" is an integer (n = 2t, where 0 <= t <=
15). The run cycles are a multiple of the time base.
Default: 1, the runtime group is executed in every run cycle.
Example:
Basic cycle of a cyclic interrupt: 1 sec
Possible clock cycles with reduction ratio: 2, 4, 8, 16, etc.
Additional information
You can find additional information on this in the following sections:
Phase offset (Page 441)
Example of reduction ratio and phase offset (Page 428)
Note
The elements described at this point may not be relevant to the above mentioned object types
or may not exist at all. Grayed out boxes cannot be edited.
Value
Here you can edit the value of the selected I/O. The I/O should not be interconnected and must
be configurable.
Different value ranges and inputs are permitted, depending on the data type.
Exception: In a textual interconnection, this value (of the block type) is used as substitute value
for a real interconnection partner. The field is grayed out, in other words, the value cannot be
edited.
The "Value" box contains a drop-down list with texts if the I/O is an I/O with value identifier and
the "Value identifier" option is activated in the "Customize Display".
You can enable and disable the value identifier using the menu command Options > Customize
> Layout... in the "Customize Display" dialog box.
Note
If you have more than 8 characters of text, you can define the characters to be displayed. You
do this by including the "=" character in the text. If there is an equal sign in the text, the first 8
characters to its right are displayed. If there is no equal sign in the text, the first 8 characters are
displayed.
You cannot change the value of the following I/Os:
● Interconnected I/Os
● I/Os with the "Not configurable" attribute (e.g., system inputs such as event ID)
● I/Os of the data type "ANY" (since the "ANY" data type is only determined by connecting it
to an I/O of a defined data type)
Inverted
Interconnected inputs of the "BOOL" data type can be inverted via the "Inverted" radio button.
Invisible
With the "Invisible" check box, you can hide connected or unconnected I/Os in the chart display.
If only the I/O of one interconnection partner is invisible, the interconnection of the visible I/O is
led to the sheet bar and the target of the interconnection is identified by "(INVISIBLE)".
If both interconnection partners or the I/O with a symbolic or textual interconnection is switched
to invisible, this interconnection can no longer be recognized in the chart but only in the object
properties of the block in the "Interconnection" column of the "I/Os" tab. The same applies to
interconnections to runtime groups.
Note
If the block contains invisible interconnected I/Os, a colored triangle appears in the top right
corner of the block header.
Watched
You can use the "Watched" check box to set the I/O so that it displays the actual values of the
CPU during test mode.
Ignore for type update
A block parameter which belongs to the interface of a plant type (template) is implicitly excluded
from the type synchronizing method. The value of such parameters is not updated during
synchronization.
With the "Ignore for type update" option, you can exclude the update of values also for the block
parameters which are not assigned to the interface of a plant type (template). If this option is
activated for a parameter, the value of the parameter is excluded from synchronizing explicitly
and such parameter is marked as “Pink” parameter in the block I/Os.
Text for state 0
This option is only visible when you are editing an I/O of the data type "BOOL" whose system
attribute is set to "S7_string_0". You can enter a maximum of 16 characters for the "0" value.
The OS uses these texts for displays and logs, for example, "Close" and "Closed".
In the "Value" box, you can select this text or "Text 1".
Text for state 1
This option is only visible when you are editing an I/O of the data type "BOOL" whose system
attribute is set to "S7_string_1". You can enter a maximum of 16 characters for the "1" value.
The OS uses these texts for displays and logs, for example, "Open" and "Opened".
In the "Value" box, you can select this text or the one from "Text 0".
Enumeration
This option is visible only when the I/O has the system attribute "S7_enum" assigned to it. From
the drop-down list, you can select one of the enumerations created in the current project in
"Shared Declarations" for I/Os of the data type BOOL, BYTE, WORD, DWORD, INT, DINT.
The display names that you can select from the "Value" box in the drop-down list are assigned
as values to each enumeration if the "Value identifier" option is activated in the "Customize
Display". You can find additional information on the enumerations in the section: Configuring
Shared Declarations (Page 163)
You can select the empty field in the "Enumeration" drop-down list to delete an enumeration.
The numerical value is then displayed in the "Value" box instead of the display name.
Note: When the enumeration is deleted, the "S7_enum" system attribute is retained at the block
I/O, in other words an empty string is entered instead of the enumeration previously shown.
Comment
The comment of an interconnected input can be an input comment (I/O comment) or an
interconnection partner comment (interconnection comment). The display depends on the
settings made in "Customize Display". Open the dialog box using the menu command Options
> Customize > Layout....
If the interconnection comments are to be displayed, select the "Interconnection comment"
check box in the "Parameter" group of the dialog box. You cannot modify the interconnection
comment at the input.
If the comment is not an interconnection comment, you can enter a comment with a maximum
of 80 characters for the I/O here. If you have selected the "Comment" option in the “I/Os” group
with the menu command Options > Customize > Layout, the first 12 characters (wide block
display) or 8 characters (narrow block display) of the I/O comment are displayed in the chart
instead of the I/O name.
Operator authorization level
This option is only available if the "Op_Level" attribute is available for the block type. You can
set a value between 1 and 99 here.
Identifier
This option is only visible when you are editing an I/O of a data type other than "BOOL" whose
system attribute is set to "S7_shortcut". The identifier you enter must not exceed a maximum
string length of 16 characters. The OS uses these texts for displays and logs, for example,
"Setpoint" and "CP".
Unit
This option is only available when you are editing an I/O of a data type other than "BOOL" and
have assigned the system attribute "S7_unit" to it.
Here, you can select the most common units from a drop-down list for the I/O. The button for
the drop-down list is displayed when you select the combo box.
Note
The set of units is installed with CFC and can be modified or supplemented in the SIMATIC
Manager . You can find additional information on this in the following section: Configuring
Shared Declarations (Page 163)
Archive
This option is only available when the I/O is intended for operator control and monitoring
(system attribute S7_m_c := 'true').
You can specify the following with this drop-down list:
● If the I/O is no longer relevant for archiving: "No Archiving" (S7_archive := 'false')
● If the I/O is to be identified for "Archiving" (S7_archive := ‘shortterm’)
● If the I/O is to be identified for "Long-term archiving" (S7_archive := ‘longterm’)
The I/Os identified as being relevant for archiving are created as archive tags during
compilation of the OS in the OS project and, if it does not already exist, a process value archive
is also created. If an I/O relevant for archiving is deleted later or is changed to "No Archiving",
the corresponding archive tag is deleted the next time you compile the OS.
You can find additional information on this in the following section: Configuring archive tags
(Page 172)
OS additional text
Here you can enter a label text for the button in the faceplate. You can use this button to jump
to the faceplate of the interconnected block. The text can be edited.
The input field is only active if the block has screen jump functionality in WinCC.
Forcing
These options are only available if the global "Support forcing" option has been set in the
component view of the SIMATIC Manager (dialog box "Chart folder properties", tab:
Advanced).
● Add forcing
You can enable the add forcing function for the I/O by setting this option. Chart inputs/
outputs cannot be logged on for forcing.
● Forcing active
You can enable forcing for the I/O by setting this option. This option is only available after
the "Add forcing" function was selected.
● Force value
You can enter a force value for the I/O in this field. This value to be entered depends on the
data type of the I/O. This option is only available after the "Add forcing" function was
selected.
MES-relevant
This option is only available when the I/O is intended for operator control and monitoring
(system attribute S7_m_c := 'true') and the "OCM possible" option is activated in the object
properties of the block.
When the "MES-relevant" option is set, this acts as a filter so that if an MES system is
connected, only the control system information of interest for MES is transferred.
Process object view
● Parameter:
Here you mark the I/O if you want to set parameters or interconnect it with another I/O. It is
then displayed on the "Parameter" tab of the process object view. You can change this
setting in the SIMATIC Manager using the menu command Options > Process Objects >
Select I/Os....
● Signal:
Here you mark the I/O if you want to interconnect it with a signal in the process object view.
It is then displayed on the "Signal" tab. You can change this setting in the SIMATIC Manager
using the menu command Options > Process Objects > Select I/Os....
Options are: "Parameter" or "Signal", or none at all.
SFC Access...
This button is only available if SFC access exists on this I/O. This access is indicated by colored
markers at the I/O in the CFC chart:
● Write access = marker below the I/O
● Read access = marker above the I/O
Use this button to open a dialog box that contains a list of current SFC accesses. Double-click
the chart name to open the selected SFC chart. The accessing chart element is highlighted.
A B
Absolute Addressing, 147 Backup, 47
Access protection, 398 Configuration data, 47
Adapting, 92 Parameters, 401
Chart properties, 92 Block, 132
Add to watch list, 387 Copy, 130
I/Os for testing, 387 delete, 132
Addressing, 147 Block comment, 126
Absolute, 147 Entering, 126
Symbolic, 147 BLOCK DB, 421
Align, 133 Block drivers, 370
Blocks, 133 Creating as of V5.2+SP1, 405
ALM Generating, 354, 370
Counting and booking of PO licenses in CFC, 30 Block family, 24
ANY (interconnection rule), 160 BLOCK FB, 422
Applying a change to the sampling time from HW BLOCK FC, 422
Config, 355 Block I/Os
Archive tags, 172 monitor, 386
Configuring, 172 Block icon, 127
ARRAY, 421 Assign, 127
AS-wide interconnection Block installation pointer, 180
Notes, 141 Setting, 182
S7 connection in NetPro, 142 Block instance, 24
Setting up, 141 Block interconnection
Attribute, 439 Configuring, 139
Enable, 439 Block names, 121, 126
Attributes Entering, 126
For control module (equipment module), 288 Block type, 24
For control modules, 212 Catalog, 48
For equipment module, 288 Cleaning up, 119
For equipment phase, 288 Delete, 119
For messages (equipment module), 288 Importing, 106
For parameters (equipment module), 288 Inserting, 108
For signals (equipment module), 288 Update for CPU 410-5H, 113
For the assignment of a control module, 288 Update in multiproject, 110
For the basic requirement of a control Update in single project, 112
module, 288 Updating with CPU 410-5H, 110
Runtime group, 197 Using a new version, 107
Automation License Manager (ALM) Block type change, 107
Counting and booking of PO licenses in CFC, 30 Block types [S7]
Avoiding, 370 Cleaning up, 119
Causes of CPU stop, 370 Delete, 119
Block types in CFC
create, 104
Block/chart I/Os, 418
Printing, 418
Blocks, 24, 70, 120, 121, 127, 131, 133, 198 Downloading individual chart to the device, 374
Aligning, 133 In the STEP 7 environment, 21
Catalog, 48 Method of operation, 17
Color of overlapping blocks, 70 Target systems, 17
Display of execution, 198 CFC chart, 351
edit, 120 Compile, 351
In CFC, 24 CFC Editor, 47, 65, 67, 68, 70, 75
Inserting, 120, 121 Close, 47
Interconnecting, 139 Start, 47
Moving, 131 CFC library blocks, 36
Narrow representation in the chart, 73 Changing to BOPs, 36
Positioning, 121 CFC versions
Representation the CFC, 70 Change, 36
Runtime properties, 174 Change, 157
Wide representation in the chart, 72 Interconnections, 157
With variable number of inputs, 127 Change log, 383, 397
BO, 422 Changing
Booking back process objects, 31 Display type, 82
BOOL, 24, 422 Installation pointer, 182
Branching, 153 Run sequence, 182
Projects, 153 Changing over, 36, 38
BY, 422 From CFC library blocks to BOPs, 36
BYTE, 422 From old projects to the enhanced runtime
model, 38
CHAR, 423
C Chart, 65, 415
Printing, 415
C, 423
Chart I/O, 98
Call hierarchy, 370
Chart I/O (interconnection rule), 160
Calling, 60
Chart I/Os
Help with shortcut keys, 60
Interconnection rules, 155
Catalog
Chart installation pointer, 180
Block Types, 48
Setting, 182
Blocks, 48
Chart name, 92
Charts, 48
Chart partitions, 66, 93
Close, 48
Delete elements, 93
Libraries, 48
Inserting, 93
Open, 48
Chart properties, 92
Placing, 48
Adapting, 92
Cause of stop, 370
Chart reference data, 419
Causes of CPU stop, 370
Printing, 419
Avoiding, 370
Chart with chart I/Os, 98
Central type update
create, 98
CPU 410-5H PA, 118
Chart-based runtime group management, 192
in multiproject, 110
Copying CFCs, 195
in single project, 112
Deactivate at the CFC, 195
Overview, 105
Deleting a CFC, 195
Type update in RUN mode, 113
Integration of new CFCs, 194
CFC, 17, 21, 24
Migration of existing CFCs, 194
Block layout, 70
Moving blocks between CFCs, 196
Blocks, 24
Moving CFCs, 195
Chart-based runtime group management, 192
Renaming a CFC, 195
Compatibility, 17
Symbol for runtime groups, 194 Configuring, 61, 164, 389, 416
Using F-blocks, 193 Block Interconnections, 139
Charts, 48, 85, 86, 90 Enumerations, 164
Catalog, 48 Footer, 416
Copy, 90 I/Os, 389
Creating, 85 Interconnections to chart I/Os, 154
delete, 85 Interconnections with runtime groups, 154
Handling, 85, 86, 90 Configuring a sequential control
Moving, 90 Data objects, 304
Open, 86 for an equipment module, 280
Checking the plausibility of shared declarations, 168 for an equipment phase, 314
Clean Up Configuring in the network, 43
Block Types, 119 Connectors, 76
Block types [S7], 119 Control block, 39
Close, 354 Migration in the external view, 39
Catalog, 48 Control module
Color display of interconnections, 76 as a lower-level object, 253
Command As instance of a type, 203
Configuring a global command, 344 Assigning an equipment module, 255, 257
Configuring at the type of the control module, 210 Assigning an equipment phase, 255, 257
Comments, 126 Assigning the instance to an equipment
On blocks, 126 module, 259
Compare, 380 Configuring a command at the type, 210
Time stamp, 380 Configuring a status at the type, 210
Compatibility, 17 Copy and move, 206
Compatibility of CFC versions, 36 Data exchange, 328
Compile/download, 352 Data exchange via XML, 332
Settings, 352 Data objects, 272, 307
Compiling, 351, 357 Display in the CFC Editor, 210
As block type, 357 optional, 253
As program, 354 Optional block, 248
CFC chart, 351 Signal, 231, 238
Objects, 373 Synchronization between type/instance, 221
Concept Synchronizing the type and instance, 219, 223
Block installation pointer, 179 Control module type
Chart installation pointer, 179 Creating, 203, 208
Installation pointer, 179 Data types of the control variables, 209
Configuration, 19, 166, 172 edit, 208
Archive tags, 172 Name, 204
Equipment property, 166 Namespace in the master data library, 204
For MIS/MES, 172 Optional blocks and interconnections, 203
Overview, 19 Synchronization between type/instance, 221
Shortcut key, 61 Copying, 90, 96, 157
Units, 166 Block, 130
Configuration data, 47, 65, 68, 79, 82 Blocks, 128
Backup, 47 Charts, 90
Display, 65, 67, 68, 75, 79, 82, 83 Interconnections, 157
Displaying of blocks, 70 Nested chart, 96
Configure COUNTER, 423
Color representation of the I/O, 135 CPU 410-5H
I/O, 134 Licensing, 30
Special considerations during compilation, 359
Of an FC, 422
Of an S7 counter, 423
M Number of I/Os, 127
Specifying, 127
Memory requirements, 370
Numeric overflow/underflow (S7), 35
Menu bar, 52
Menu commands, 55
Shortcut keys, 55
Merging, 153
O
Projects, 153 Object properties, 125
Migration, 36, 39 Specifying, 125
Control block in the external view, 39 Objects
Migration from previous versions, 36 Compiling and downloading, 373
MIS/MES support, 172 Old projects, 38
Monitoring Changing to the enhanced runtime model, 38
Block I/Os, 386 Open, 48, 86
Mouse operation, 62 Catalog, 48
Mouse pointer, 59 Charts, 86
Moving in dialog boxes, 59 Operator control and monitoring, 170
Moving in the menu bar/shortcut menu, 59 Operator controls, 48, 52, 53, 54
Moving, 58, 59, 90 Optimize
Blocks, 131 Run sequence, 183
Charts, 90 Optional block, 248
Mouse pointer in dialog boxes, 59 Organization block, 24
Mouse pointer in the menu bar/shortcut menu, 59 Overflow pages, 68
Text cursor for editing texts, 58 Overview (chart view), 82
Multiinstance blocks, 24
Multiple users
In a project, 41 P
Multiuser, 41
P, 424
Multiuser engineering, 43
Parameters
Backup, 401
Phase offset, 441
N Example, 428
Name, 345 Placing
Names, 126 Catalog, 48
Of blocks, 126 Plausibility check, 164
Naming, 27 PO count, 31
Automatically, 27 CPU replacement, 33
Runtime groups, 190 Notes on PO use, 32
Navigating PO licenses, 30
In the chart, 87 POINTER, 424
Nested chart, 69, 95, 96, 97 AANYto data element pointer,
Copy, 96 To memory area,
create, 95 Positioning, 121
Delete elements, 96 Longer blocks, 121
Replacing, 97 Possible interconnections, 147
Nesting depth, 370 Predecessor
New version of a block type, 107 For insertion position, 180, 182
Number Predecessor for Insertion Position, 429
Of a DB, 421 Identifier of the block, 429
Of an FB, 422
R S
R, 425 S5 duration, 425
Readback, 401 S5TIME, 425
REAL, 425 S7 block types, 106
Recursive block calls, 354 S7 Communication, 370
Reduction ratio, 446 S7 timer number, 426
Example, 428 Safety program, 102
Reference Sampling time
Completing a "Reference block variable" Applying a change from HW Config, 355
type, 246 Display at the block, 175
Completing a "Reference CM parameter" Selecting, 60
type, 246 Text with shortcut keys, 60
Completing a "Reference global variable" Selective download
type, 247 Capability to download changes, 375
Configuring at the parameters of a control Chart-based insertion of blocks in runtime
variable, 242 groups, 375
Copying behavior for the "Reference CM Overview, 374
parameter" type, 246 Process conformity, 376
For data exchange, 245 Sequence
Syntax, 244 of 16 bits, 427
Technological reference at parameters of a control of 32 bits, 424
tag, 241 of 8 bits, 422
Remove from watch list, 387 Sequential control
I/Os for testing, 387 Data objects, 270
Renaming, 191 Session model, 413
Replacing, 97 For module driver created as of V5.2+SP1, 413
Nested chart, 97 Setting, 136
Response, 35 Block installation pointer, 182
Of S7 CPUs to error, 35 Chart installation pointer, 182
Rewire, 157 Installation pointer, 182
Interconnections, 157 Value identifiers, 136
Run sequence Settings, 121
Changing, 182 Compile/download, 352
Concept of the runtime model, 179 For for inserting blocks, 121
Optimizing, 183 SFC access, 148
Runtime attributes, 197 SFC external views in CFC charts, 138
Runtime groups, 191 SFC type, 138
create, 186 Inserting in CFC charts, 138
Delete, 186 Update in multiproject, 110
edit, 186 Update in single project, 112
U X
Unit, 166 XML file for data exchange, 332
Configuring, 166
Entering, 134
Unplaced blocks, 122
Inserting, 122
Update
Block type in the multiproject, 110
Block types in multiproject with CPU 410-5H, 110,
113
Block types in single projects, 112
SFC types in multiproject, 110
SFC types in single projects, 112
Updating shared declarations in the multiproject, 167
USB drive, 34
User program
Download to target system, 361
Using the keyboard, 55, 58, 59, 60, 63
V
Value identifiers, 136
Setting, 136
Variable number of I/Os, 127
Version, 92
Views in CFC, 82
W
W, 426, 427
Watch cycle, 383
Watching I/Os, 388
Switching on/off, 388
What's new?
CFC V8.2, 15
CFC V8.2 SP1, 15
CFC V9.0, 14
CFC V9.0 SP1, 14
CFC V9.0 SP2, 13
CFC V9.0 SP3, 13
Windows, 48, 393, 395
Dynamic display, 393
Trend display, 395
WORD, 427
Working, 383
In test mode, 383
With textual interconnections, 149
Working window, 48