Modicon Libraries Equipment Module Components User Guide
Modicon Libraries Equipment Module Components User Guide
EIO0000003013 04/2020
www.schneider-electric.com
The information provided in this documentation contains general descriptions and/or technical
characteristics of the performance of the products contained herein. This documentation is not
intended as a substitute for and is not to be used for determining suitability or reliability of these
products for specific user applications. It is the duty of any such user or integrator to perform the
appropriate and complete risk analysis, evaluation and testing of the products with respect to the
relevant specific application or use thereof. Neither Schneider Electric nor any of its affiliates or
subsidiaries shall be responsible or liable for misuse of the information contained herein. If you
have any suggestions for improvements or amendments or have found errors in this publication,
please notify us.
You agree not to reproduce, other than for your own personal, noncommercial use, all or part of
this document on any medium whatsoever without permission of Schneider Electric, given in
writing. You also agree not to establish any hypertext links to this document or its content.
Schneider Electric does not grant any right or license for the personal and noncommercial use of
the document or its content, except for a non-exclusive license to consult it on an "as is" basis, at
your own risk. All other rights are reserved.
All pertinent state, regional, and local safety regulations must be observed when installing and
using this product. For reasons of safety and to help ensure compliance with documented system
data, only the manufacturer should perform repairs to components.
When devices are used for applications with technical safety requirements, the relevant
instructions must be followed.
Failure to use Schneider Electric software or approved software with our hardware products may
result in injury, harm, or improper operating results.
Failure to observe this information can result in injury or equipment damage.
© 2020 Schneider Electric. All rights reserved.
2 EIO0000003013 04/2020
Table of Contents
Safety Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
About the Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Part I General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Chapter 1 General Overview of Equipment Module Components. . 17
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Chapter 2 Equipment Module Control Expert Components . . . . . . 19
List of Function Blocks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Part II Equipment Module . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Chapter 3 Equipment Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Description of Equipment Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Definition of Statuses, Equipment Module State and Commands . . . . 27
Strategy Execution Status Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Strategy Execution Status Controller. . . . . . . . . . . . . . . . . . . . . . . . . . 31
Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Chapter 4 EMCTL - Equipment Module Controller . . . . . . . . . . . . . . 33
Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
DFB Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Inputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Public Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Chapter 5 Auxiliary Functions of Equipment Module. . . . . . . . . . . . 51
5.1 EMTRANS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Inputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.2 EMFAILED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.3 EMSTABLESTEP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
EIO0000003013 04/2020 3
5.4 EMSTEPDESC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Public Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Chapter 6 EMLOGIC - User Defined Process Logic. . . . . . . . . . . . . . 69
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Chapter 7 EMCTL - Example of Use . . . . . . . . . . . . . . . . . . . . . . . . . 73
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
DFB Representation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Reusable Equipment Module Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Part III Pump Set Pattern. . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Chapter 8 Pump Set Equipment Module. . . . . . . . . . . . . . . . . . . . . . 89
Description of Pump Set Equipment Module . . . . . . . . . . . . . . . . . . . . 90
Strategy Selection and Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Disabling the Strategies Based on Equipment Module State. . . . . . . . 94
Input and Output Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Input Parameters Applicable For Each Strategy . . . . . . . . . . . . . . . . . 96
Pump Set Equipment Module State Machine . . . . . . . . . . . . . . . . . . . 97
Pump Set Equipment Module Diagnosis State . . . . . . . . . . . . . . . . . . 98
Pump Set Pumping Asset Diagnosis State . . . . . . . . . . . . . . . . . . . . . 99
Modifying the Pump Set Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Chapter 9 PUMPSETPATTERN - Pump Set Pattern Logic . . . . . . . . . 101
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
DFB Representation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Outputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Chapter 10 Auxiliary Functions of Pump Set Equipment Module . . . . 109
10.1 PUMPINGASSETSEQ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
DFB Representation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Outputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
4 EIO0000003013 04/2020
Part IV Flow Control Pattern . . . . . . . . . . . . . . . . . . . . . . . . . 117
Chapter 11 Flow Control Equipment Module. . . . . . . . . . . . . . . . . . . 119
Description of Flow Control Equipment Module . . . . . . . . . . . . . . . . . 120
Strategy Selection and Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Disabling the Strategies Based on Equipment Module State . . . . . . . 124
Input and Output Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Input Parameters Applicable For Each Strategy . . . . . . . . . . . . . . . . . 127
Flow Control Equipment Module State Machine . . . . . . . . . . . . . . . . . 128
Setpoint Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Flow Control Equipment Module Diagnosis State . . . . . . . . . . . . . . . . 131
Flow Control Pumping Asset Diagnosis State . . . . . . . . . . . . . . . . . . . 132
Modifying the Flow Control Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Chapter 12 FLOWCTLPATTERN - Flow Control Process Logic. . . . . . 135
Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
DFB Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Chapter 13 Auxiliary Functions of Flow Control Equipment Module . 143
13.1 PUMPINGASSETSEQ1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
DFB Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Inputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Index ......................................... 151
EIO0000003013 04/2020 5
6 EIO0000003013 04/2020
Safety Information
Important Information
NOTICE
Read these instructions carefully, and look at the equipment to become familiar with the device
before trying to install, operate, service, or maintain it. The following special messages may appear
throughout this documentation or on the equipment to warn of potential hazards or to call attention
to information that clarifies or simplifies a procedure.
EIO0000003013 04/2020 7
PLEASE NOTE
Electrical equipment should be installed, operated, serviced, and maintained only by qualified
personnel. No responsibility is assumed by Schneider Electric for any consequences arising out of
the use of this material.
A qualified person is one who has skills and knowledge related to the construction and operation
of electrical equipment and its installation, and has received safety training to recognize and avoid
the hazards involved.
WARNING
UNGUARDED EQUIPMENT
Do not use this software and related automation equipment on equipment which does not have
point-of-operation protection.
Do not reach into machinery during operation.
Failure to follow these instructions can result in death, serious injury, or equipment damage.
This automation equipment and related software is used to control a variety of industrial processes.
The type or model of automation equipment suitable for each application will vary depending on
factors such as the control function required, degree of protection required, production methods,
unusual conditions, government regulations, etc. In some applications, more than one processor
may be required, as when backup redundancy is needed.
Only you, the user, machine builder or system integrator can be aware of all the conditions and
factors present during setup, operation, and maintenance of the machine and, therefore, can
determine the automation equipment and the related safeties and interlocks which can be properly
used. When selecting automation and control equipment and related software for a particular
application, you should refer to the applicable local and national standards and regulations. The
National Safety Council's Accident Prevention Manual (nationally recognized in the United States
of America) also provides much useful information.
In some applications, such as packaging machinery, additional operator protection such as point-
of-operation guarding must be provided. This is necessary if the operator's hands and other parts
of the body are free to enter the pinch points or other hazardous areas and serious injury can occur.
Software products alone cannot protect an operator from injury. For this reason the software
cannot be substituted for or take the place of point-of-operation protection.
Ensure that appropriate safeties and mechanical/electrical interlocks related to point-of-operation
protection have been installed and are operational before placing the equipment into service. All
interlocks and safeties related to point-of-operation protection must be coordinated with the related
automation equipment and software programming.
8 EIO0000003013 04/2020
NOTE: Coordination of safeties and mechanical/electrical interlocks for point-of-operation
protection is outside the scope of the Function Block Library, System User Guide, or other
implementation referenced in this documentation.
WARNING
EQUIPMENT OPERATION HAZARD
Verify that all installation and set up procedures have been completed.
Before operational tests are performed, remove all blocks or other temporary holding means
used for shipment from all component devices.
Remove tools, meters, and debris from equipment.
Failure to follow these instructions can result in death, serious injury, or equipment damage.
Follow all start-up tests recommended in the equipment documentation. Store all equipment
documentation for future references.
Software testing must be done in both simulated and real environments.
Verify that the completed system is free from all short circuits and temporary grounds that are not
installed according to local regulations (according to the National Electrical Code in the U.S.A, for
instance). If high-potential voltage testing is necessary, follow recommendations in equipment
documentation to prevent accidental equipment damage.
Before energizing equipment:
Remove tools, meters, and debris from equipment.
Close the equipment enclosure door.
Remove all temporary grounds from incoming power lines.
Perform all start-up tests recommended by the manufacturer.
EIO0000003013 04/2020 9
OPERATION AND ADJUSTMENTS
The following precautions are from the NEMA Standards Publication ICS 7.1-1995 (English
version prevails):
Regardless of the care exercised in the design and manufacture of equipment or in the selection
and ratings of components, there are hazards that can be encountered if such equipment is
improperly operated.
It is sometimes possible to misadjust the equipment and thus produce unsatisfactory or unsafe
operation. Always use the manufacturer’s instructions as a guide for functional adjustments.
Personnel who have access to these adjustments should be familiar with the equipment
manufacturer’s instructions and the machinery used with the electrical equipment.
Only those operational adjustments actually required by the operator should be accessible to
the operator. Access to other controls should be restricted to prevent unauthorized changes in
operating characteristics.
10 EIO0000003013 04/2020
About the Book
At a Glance
Document Scope
This document provides an operating information of a project developed by using Modicon
Libraries General Purpose.
This document does not cover any development procedures and internal functionality details.
Users of the Control Expert services are supposed to have a working knowledge in the
employment of Control Expert.
Validity Note
This document has been updated with the release of Modicon Libraries General Purpose 2020.
General Purpose Library of Equipment module components support the following software
versions of Control Expert:
Control Expert V14.0 and V14.1
EIO0000003013 04/2020 11
Product Related Information
WARNING
LOSS OF CONTROL
Perform a Failure Mode and Effects Analysis (FMEA) of your application, and apply preventive
and detective controls before implementation.
Provide a fallback state for undesired control events or sequences.
Provide separate or redundant control paths wherever required.
Supply appropriate parameters, particularly for limits.
Review the implications of transmission delays and take actions to mitigate.
Review the implications of communication link interruptions and take actions to mitigate.
Provide independent paths for control functions (for example, emergency stop, over-limit
conditions, and fault conditions) according to the safety analysis and applicable codes, and
regulations.
Apply local accident prevention and safety regulations and guidelines. 1
Test each implementation of this library for proper operation before placing it into service.
Failure to follow these instructions can result in death, serious injury, or equipment damage.
NOTE: For additional information, refer to NEMA ICS 1.1 (latest edition), Safety Guidelines for the
Application, Installation, and Maintenance of Solid State Control and to NEMA ICS 7.1 (latest
edition), Safety Standards for Construction and Guide for Selection, Installation and Operation of
Adjustable-Speed Drive Systems or their equivalent governing your particular location.
The application of this product requires expertise in the design and operation of control systems.
WARNING
UNINTENDED EQUIPMENT OPERATION
Allow only authorized personnel with expertise in the design and operation of control systems
to program, install, alter, and apply this product.
Follow local and national safety codes and standards.
Failure to follow these instructions can result in death, serious injury, or equipment damage.
12 EIO0000003013 04/2020
Examples described in this manual are provided for information only.
WARNING
UNINTENDED EQUIPMENT OPERATION
Adapt examples that are given in this manual to the specific functions and requirements of your
industrial application before you implement them.
Failure to follow these instructions can result in death, serious injury, or equipment damage.
EIO0000003013 04/2020 13
14 EIO0000003013 04/2020
Modicon Libraries General Purpose
General
EIO0000003013 04/2020
Part I
General
General
Overview
This part explains general overview of General Purpose device library and concepts implemented
for controlling devices.
EIO0000003013 04/2020 15
General
16 EIO0000003013 04/2020
Modicon Libraries General Purpose
General Overview of Equipment Module Components
EIO0000003013 04/2020
Chapter 1
General Overview of Equipment Module Components
Introduction
The Modicon Libraries General Purpose software provides the function blocks (DFBs) that are pre-
configured and tested by Schneider Electric and that are designed for automating a large variety
of processes.
The Control Expert components for Equipment Module provide the common required functions,
facilitating the development of control systems.
To automate and simplify the implementation process of control systems, you can use these DFBs
together with tools for code generation and for the synchronization of control and monitoring
subsystems.
This document describes the basic concepts and details behind each one of the function blocks
(DFBs) for implementing the common cross-process and cross-market String: SoftwareName_-
ControlExpert functions.
EIO0000003013 04/2020 17
General Overview of Equipment Module Components
18 EIO0000003013 04/2020
Modicon Libraries General Purpose
Equipment Module Control Expert Components
EIO0000003013 04/2020
Chapter 2
Equipment Module Control Expert Components
List of Families
The function blocks described in this document are grouped by family.
Description
The table lists the function blocks of each family:
EIO0000003013 04/2020 19
Equipment Module Control Expert Components
20 EIO0000003013 04/2020
Modicon Libraries General Purpose
Equipment Module
EIO0000003013 04/2020
Part II
Equipment Module
Equipment Module
Overview
This part provides a detailed description of the functions, pins, pin layout, and variables of the
function blocks of the equipment module.
These function blocks do not reflect any specific installation.
WARNING
LOSS OF CONTROL
Perform a Failure Mode and Effects Analysis (FMEA) of your application, and apply preventive
and detective controls before implementation.
Provide a fallback state for undesired control events or sequences.
Provide separate or redundant control paths wherever required.
Supply appropriate parameters, particularly for limits.
Review the implications of transmission delays and take actions to mitigate.
Review the implications of communication link interruptions and take actions to mitigate.
Provide independent paths for control functions (for example, emergency stop, over-limit
conditions, and fault conditions) according to the safety analysis and applicable codes, and
regulations.
Apply local accident prevention and safety regulations and guidelines. 1
Test each implementation of this library for proper operation before placing it into service.
Failure to follow these instructions can result in death, serious injury, or equipment damage.
1
For additional information, refer to NEMA ICS 1.1 (latest edition), Safety Guidelines for the
Application, Installation, and Maintenance of Solid State Control and to NEMA ICS 7.1 (latest
edition), Safety Standards for Construction and Guide for Selection, Installation and Operation of
Adjustable-Speed Drive Systems or their equivalent governing your particular location.
EIO0000003013 04/2020 21
Equipment Module
22 EIO0000003013 04/2020
Modicon Libraries General Purpose
Equipment Module
EIO0000003013 04/2020
Chapter 3
Equipment Module
Equipment Module
Overview
This chapter describes the equipment module management.
EIO0000003013 04/2020 23
Equipment Module
Overview
The operation of the function block that is available for equipment module is described in this
chapter.
The EMCTL DFB belongs to the General Purpose Library and is used to monitor and manage finite
number of specific minor processing activities (strategies). The module is based on the ISA-S88
Standard, Part 1 (S88.01) and implements the status controller defined in this standard for
controlling procedure model components (phases, operations, and so on).
Function Description
User can use this DFB to change states in the process. In compliance with ISA-S88.01I, you can
use this DFB in continuous processes to initiate start, stop or emergency sequences.
The DFB implements equipment state, strategy, strategy execution state management and
commands received from:
The Supervision system (when sequences are manually controlled by the operator)
Other control sequences
The table compares the functions that are available in the DFB:
Function EMCTL
Management of strategy execution state machine and commands according to x
ISA-S88
Management of messages for the operator integrated with the sequence –
Management of operating modes according to ISA-S88: Manual (enables to x
change from one sequence step to any other sequence step), Semi (step
advance with confirmation from the operator), and Auto
Owner Management: Operator/Program x
Step time automatically calculated by the control block x
Automatic management of transitions through the EMTRANS function block x
Automatic management of sequence detected failure through the EMFAILED x
function block
Automatic management of sequence steady-step marking through the x
EMSTABLESTEP function block
Possibility of displaying the sequence graphically (active step and next level of x
transitions and steps) from the monitoring subsystem
NOTE: ‘x’ indicates that the functions are available in the DFB.
24 EIO0000003013 04/2020
Equipment Module
Program the steps and transitions that the sequences implement (through ST or SFC language)
while the component (EMCTL) allows the programmer to:
Manage the statuses of the strategy execution sequence and
Process the commands received from other levels as described above.
As a minimum, implement the strategy subsequence that implements normal operation (RUNNING)
(see page 74).
Otherwise user can implement subsequences that attend to commands received from other levels
of the control system or that react to detected failures in the process (HOLDING, RESTARTING,
STOPPING, and ABORTING) detected by the strategy sequence itself.
The table describes the main functions of the DFB:
Function Description
Processing strategy execution The DFB processes the commands received and
States and Commands determines the status of the strategy execution sequence
with the objective of determining the subsequences (idle,
hold, continue, abort, stop.) and which step needs to run in
each cycle of the program.
Managing Entry Points in the The DFB enables to retain the step number with which the
strategy execution sequence execution of the normal sequence (Running) needs to be
restarted (Restart) after being restarted from held status
(Held).
Handling of Detected Failures The component manages controller detected failures
(without user intervention from the Supervision system).
The component manages this detected failure and triggers
the execution of the detected failure handling
subsequence.
Strategy management Strategy is any minor processing activity which an
equipment module can perform, a maximum of 16
strategies are supported in equipment module. The DFB
allows to select the strategy which need to be executed for
the Equipment module. For an equipment module, strategy
can be from 1 to 16. The Strategy codes and their
interpretation is EM specific however the supervisory
resources will allow the users to define associated text to
the respected codes.
The supervisory resource will not allow the user from
modifying the Strategy while the status is not IDLE.
Equipment state management The DFB allows to calculate the Equipment module state
based on user defined logic. This DFB allows to configure
up to 32 Equipment module states, where state 0 to 12 is
as per recommendation defined in NS88 standard, 13 to 15
is reserved and 16 to 31 can be used to interpret user
defined equipment state.
EIO0000003013 04/2020 25
Equipment Module
Function Description
Disable strategy The DFB allows to disable the strategy based on user
defined logic so that disabled strategy will not be available
in supervision for selection. Hence, the execution for
disable strategy can be avoided.
Auto reset disable Automatic reset (STOPPED → IDLE, automatically
performs reset operation without consuming any extra
execution cycle) can be disabled by setting the input pin
(AUTORESETDIS) to a logical high.
26 EIO0000003013 04/2020
Equipment Module
Statuses
The table describes the possible strategy execution statuses along with the description of each
status:
Status Description
Idle Inactive operation. Waiting for command to start (Start) running.
Running Normal operation.
Complete Normal operation has finished. Requires an initialization order (Reset) to return to the
Idle status.
Pausing A pause (Pause) command is received for a short period while the normal operation
was being executed (Running). The normal sequence runs until it automatically goes
to paused (Paused) status.
Paused Status reached after the pause sequence is completed and the next steady status is
reached. Upon receiving the command to continue (Resume), the sequence continues
with the next step of the normal operation sequence (Running).
Holding A hold (Hold) command is received and the sequence that allows the process to be
changed to a known status is executed. After this sequence is finished, it automatically
goes to the held (Held) status.
HoldingForError A detected failure is automatically detected in the process (for example, a detected
failure in Equipment Module), and the sequence that allows the process to be to a
known status is executed. After this sequence is finished, it automatically goes to the
held (Heldforerror) status.
Held Status reached after the pause sequence is completed and the next steady status is
reached.
HeldForError Operation put on hold due to detected fail condition. Waiting for command to Restart
(Restart) to get operation to running.
Restarting A restart command (Restart) is received while the sequence is being held (Held). The
sequence runs to return to the normal operation sequence (Running). The normal
operation status (Running) is set automatically after the sequence is complete.
Stopping An order to stop (Stop) has been received. The sequence to finish the sequence in a
controlled way is executed (it is not possible to continue with it). The stopped operation
status (Stopped) is automatically activated after the sequence is complete.
Stopped The stop sequence (Stopping) is completed. Requires an initialization command
(Reset) to go to inactive (Idle) status.
Aborting An order to end (Abort) has been received. A fast stop, which is not necessarily
controlled is executed. The aborted operation status (Aborted) is automatically
activated after the sequence is completed.
Aborted An aborting sequence (Aborting) has been completed. Requires an initialization
command (Reset) to go to inactive (Idle) status.
EIO0000003013 04/2020 27
Equipment Module
The (Held) status can also be reached (without receiving a command) if the equipment module
itself detects a problem situation. The DFB has a signal that allows this situation to be
communicated.
The DFB has the necessary means to be able to restart the Running sequence from the last steady
step in which the initial run was held by a Hold command.
28 EIO0000003013 04/2020
Equipment Module
Commands
The table describes the commands that can be communicated to the equipment module along with
the description of each command:
Command Description
Start Allows the normal operation of the sequence (Running) to be started.
It is only valid if the status is inactive (Idle).
Stop Allows the sequence execution to be stopped (Running, Pausing,
Paused, Holding, Held, or Restarting) and the stopping sequence to
be run (Stopping).
Hold Allows the sequence to be stopped (Running, Pausing, Paused,
Holding, Held, or Restarting) and the stopping sequence to be run
(Stopping).
Restart Allows the sequence for continuing the operation (Restarting) and
resume normal operation (Running).
Abort Allows the sequence to be aborted (in any status except Idle,
Complete, Aborting, and Aborted) and the aborting sequence to be
run (Aborting).
Reset Triggers the transition to idle status (in Complete, Aborted, or Stopped
status).
Pause Allows normal execution (Running) to be paused in the next steady
Sequence status.
Resume Allows normal operation of the sequence (Running) to be resumed
from the paused (Paused) status.
EIO0000003013 04/2020 29
Equipment Module
Description
The following table describes the finite status controller that the DFB implements:
The Held status can also be reached (without receiving a command) if the equipment module itself
encounters a detected error. The block has a signal that allows this situation to be communicated.
The block has the necessary means to be able to restart the Running sequence from the last
steady step in which the initial run was held by a Hold command.
30 EIO0000003013 04/2020
Equipment Module
Description
The following diagram describes the possible strategy execution statuses and commands that the
Control Expert component manages according to the ISA-S88 standard:
Next to the transition arrows, the commands that the component receives (from the Supervision
system or another higher level sequence) are shown in black, and status/commands that sequence
obtains from other blocks (for example, user logic) are shown in parenthesis.
NOTE: This state transition diagram is derived from the first three initial states of the state transition
matrix (see page 30).
EIO0000003013 04/2020 31
Equipment Module
Operating Modes
Mode Table
The following table provides the description of the sequence operating modes of EMCTL DFB:
32 EIO0000003013 04/2020
Modicon Libraries General Purpose
EMCTL
EIO0000003013 04/2020
Chapter 4
EMCTL - Equipment Module Controller
Overview
This chapter provides a detailed description of the functions, pins, pin layout, and variables of the
EMCTL DFB.
EIO0000003013 04/2020 33
EMCTL
Description
Initialization
If the strategy execution status is unknown, it is initialized as Idle regardless of whether a controller
has restarted or not. This initialization is done automatically.
34 EIO0000003013 04/2020
EMCTL
DFB Representation
Representation
The DFB that is used in the program has the following aspect at the section level.You can use it in
any of the programming languages, although it is designed for use with the FBD language.
EIO0000003013 04/2020 35
EMCTL
Inputs
36 EIO0000003013 04/2020
EMCTL
Inputs/Outputs
EMCTL_ST_DDT Type
EIO0000003013 04/2020 37
EMCTL
38 EIO0000003013 04/2020
EMCTL
EIO0000003013 04/2020 39
EMCTL
40 EIO0000003013 04/2020
EMCTL
EIO0000003013 04/2020 41
EMCTL
42 EIO0000003013 04/2020
EMCTL
EMCTL_CFG_DDT Type
EIO0000003013 04/2020 43
EMCTL
Public Variables
EMCTL_SC_DDT Type
44 EIO0000003013 04/2020
EMCTL
EIO0000003013 04/2020 45
EMCTL
46 EIO0000003013 04/2020
EMCTL
EIO0000003013 04/2020 47
EMCTL
48 EIO0000003013 04/2020
EMCTL
The following elements (status) are described in the Status Controller section (see page 31). The
Definition of Statuses, Equipment Module State and Commands (see page 27) shows the
sequence finite state controller.
EIO0000003013 04/2020 49
EMCTL
50 EIO0000003013 04/2020
Modicon Libraries General Purpose
Auxiliary Functions
EIO0000003013 04/2020
Chapter 5
Auxiliary Functions of Equipment Module
Overview
This section describes the function blocks that supplement the EMCTL DFB and that have the
objective of facilitating the programming of the equipment module.
EIO0000003013 04/2020 51
Auxiliary Functions
Section 5.1
EMTRANS
EMTRANS
Overview
This section describes the EMTRANS DFB.
52 EIO0000003013 04/2020
Auxiliary Functions
Description
General
The main objective of EMTRANS DFB is to set up the control strategy sequence transitions based
on the condition to be evaluated and the next step to be executed when this expression is fulfilled.
Additionally, the DFB manages the information necessary to graphically represent the state of the
transitions and steps following the current step (DEST and DESTW fields of the EMCTL_ST_DDT
equipment module state structure).
Include call to this function in the logic of the steps (normally in ST language) to program the
transitions between the sequence steps.
Function Call
The function call is carried out from the steps of the control subsequences (Running, Restarting,
Holding, and so on) normally in ST language to program the transitions between these steps.
If several EMTRANS calls are included in the same step and if more than one of them is fulfilled in
the same step execution cycle, the step corresponding to the transition that is fulfilled and was
programmed first will run. The number of EMTRANS calls from one single step is limited to 6.
TRANS (CONDITION := (*BOOL*),
DESC := (*string[22]*),
NEXTSTEP := (*INT*),
EMCTL_SC := (*EMCTL_SC_DDT*)
EMCTL_ST := (*EMCTL_ST_DDT*),
EMCTL_CFG := (*EMCTL_CFG_DDT*))
A function call example is included below:
4: (Wait for end of reactive dosing)
if SSC.ONENTRY then
BISEN2_REACT.REM:=false;
BISEN2_REACT.LSP:=true;
end_if;
BISEN2_REACT.LSPSEL:=(OP01 < (IP01 - 10.0)); (Speed 1 or 2)
TRANS ((IP01 - COLA_REACT) <= OP01, 'Dosing finished?', SSC.CSTEP+1, SSC,
SST, SCFG);
EIO0000003013 04/2020 53
Auxiliary Functions
In the previous example, the TRANS call included in step 4 of the sequence corresponds to a
EMTRANS block instance to which the following parameters are passed:
(IP01 - COLA_REACT) <= OP01OS: Corresponds to the expression of the condition that
needs to be fulfilled for the transition to be executed. You can include complex expressions that
result in a Boolean value (true or false).
Dosing finished?: Corresponds to the description of the transition.
SSC.CSTEP+1: Corresponds to the next step that needs to be executed when the transition is
fulfilled. In this case, the next step (step 5) is executed after the current step (step 4). You can
include any expression jumping to an existing step in the sequence of the selected strategy.
SSC: Corresponds to the SC public variable of the EMCTL block instance that is controlling the
strategy sequence execution.
SST: Corresponds to the DDT_ST variable of the EMCTL block instance that is controlling the
strategy sequence execution.
SCFG: Corresponds to the DDT_CFG variable of the EMCTL block instance that is controlling the
strategy sequence execution.
54 EIO0000003013 04/2020
Auxiliary Functions
Inputs
EIO0000003013 04/2020 55
Auxiliary Functions
Inputs/Outputs
56 EIO0000003013 04/2020
Auxiliary Functions
Section 5.2
EMFAILED
EMFAILED
Overview
This section describes the EMFAILED DFB.
EIO0000003013 04/2020 57
Auxiliary Functions
Description
General
The main objective of the EMFAILED DFB is to report detected errors to the equipment module
management block (EMCTL) during strategy sequence execution so that the HoldingFE
subsequence is triggered.
Function Call
The function call is made from the Running, Restarting, Pausing, or Paused control subsequence
steps normally in ST language with the purpose of reporting detected errors in the process that is
being controlled. The detected error requires the hold sequence to be executed (HoldingFE).
A function call example is included below:
(Detected failure condition monitoring after initializations)
if EMCTL.CSTEP > 0 and CONDFALLO then
FAILED (EmCtl); (Trigger execution of the Hold sequence)
end_if;
In the previous example, the FAILED call that is included in the logic monitors the detected error
conditions in each execution cycle (in this particular case, but could be associated with a specific
step) corresponds to a EMFAILED DFB block instance to which the following parameters are
passed:
Emctl: Corresponds to the name of the SC public variable of the EMCTL block instance that is
controlling the execution of the sequence.
58 EIO0000003013 04/2020
Auxiliary Functions
Inputs/Outputs
EIO0000003013 04/2020 59
Auxiliary Functions
Section 5.3
EMSTABLESTEP
EMSTABLESTEP
Overview
The section describes the EMSTABLESTEP DFB.
60 EIO0000003013 04/2020
Auxiliary Functions
Description
General
The main objective of the EMSTABLESTEP DFB is to report to the equipment module management
block (EMCTL) that the current running sequence step corresponds to a step, that is, the re-entry
point in the normal execution (Running) sequence executes after restarting execution (Restarting).
Function Call
The function call is performed from the Running control subsequence steps normally in ST
language for the purpose of reporting. The current step is the entry point to which the program
should return when the Running subsequence is resumed after finishing the Restarting
subsequence. Basically, it enables to resume the sequence execution that verifies the appropriate
actions are performed or not.
For example, suppose a valve has to be opened. After the valve is opened, the next step involves
turning on a pump. While waiting for the valve to open, a detected failure that makes the sequence
stop occurs (Holding subsequence execution). You can resume execution by running the restart
(Restarting) subsequence. After this, the program returns to the normal running subsequence
(Running). After the program goes back to this Running subsequence, the intention is to make
another attempt at opening the valve (because most likely, it has been closed during the Holding
subsequence) not to start the pump in proceeding directly. Therefore, in the valve opening step,
the step is marked and does not call the function EMSTABLESTEP in the pump starting step.
The following is an example of a function call:
0: (End Water dosing)
if EmCtl.ONENTRY then
RAMP_AGUA.LSTART:=false;
FIC_AGUA.REM:=false;
FIC_AGUA.MAN:=true;
FIC_AGUA.LOP:=0.0;
VALV_AGUA.LSP:=false;
STABLESTEP (EmCtl1);
end_if;
TRANS (VALV_AGUA.LOWPOS, EMCTL.CSTEP+1, EmCtl);
In the previous example, the STABLESTEP call included in the logic that monitors detected failure
conditions in each execution cycle (in this particular case, but it could be associated with a specific
step) corresponds to a EMSTABLESTEP DFB block instance to which the following parameters are
passed:
Emctl: Corresponds to the name of the SC public variable of the EMCTL block instance that is
controlling the sequence execution.
EIO0000003013 04/2020 61
Auxiliary Functions
Inputs/Outputs
62 EIO0000003013 04/2020
Auxiliary Functions
Section 5.4
EMSTEPDESC
EMSTEPDESC
Overview
This section describes the EMSTEPDESC DFB.
EIO0000003013 04/2020 63
Auxiliary Functions
Description
General
The main objective of the EMSTEPDESC DFB is to assign descriptions to the strategy execution
steps that are defined in the strategy execution sequence to allow you to monitor them from the
Supervision system.
Function Calls
The function call is made from the control subsequence steps (Running, Restarting, Holding, and
so on) at the beginning of the code to provide the description of the subsequence steps for their
representation in the monitoring program. It is normally written in ST language.
Include as many EMSTEPDESC calls as there are steps defined in the subsequence or as there are
steps that need to be represented in the Supervision system.
The syntax of the function is the following:
STEPDESC (STEPNUMBER := (INT),
DESC := (string[18]),
EMCTL_SC := (EMCTL_SC_DDT),
EMCTL_ST := (EMCTL_ST_DDT),
EMCTL_CFG := (EMCTL_CFG_DDT),
The following is an example of a function call:
(Running or Pausing Subsequence (302 / 314))
(Step descriptions)
STEPDESC (1, 'Init', SSC, SST, SCFG);
STEPDESC (2, 'Valves ON', SSC, SST, SCFG);
STEPDESC (3, 'Wait Valves ON', SSC, SST, SCFG);
STEPDESC (4, 'Dosing Reactive', SSC, SST, SCFG);
STEPDESC (5, 'Motor OFF', SSC, SST, SCFG);
STEPDESC (6, 'Waiting for queue', SSC, SST, SCFG);
(Steps and Transitions)
case SSC.CSTEP of
1: (#RunningStep0# Initial Step)
(Check initial conditions)
if IC_FAIL then
FalloCI := true;
64 EIO0000003013 04/2020
Auxiliary Functions
EIO0000003013 04/2020 65
Auxiliary Functions
Inputs
66 EIO0000003013 04/2020
Auxiliary Functions
Inputs/Outputs
EIO0000003013 04/2020 67
Auxiliary Functions
Public Variables
68 EIO0000003013 04/2020
Modicon Libraries General Purpose
EMLOGIC - User Defined Process Logic
EIO0000003013 04/2020
Chapter 6
EMLOGIC - User Defined Process Logic
Overview
This chapter describes the EMLOGIC DFB.
EIO0000003013 04/2020 69
EMLOGIC - User Defined Process Logic
Description
General
It is an unprotected function block in which user can add the logic to manage various equipment
states, strategies and strategy execution states depending upon the process controlled by the
user. Sample code is available in the function block for the user reference.
70 EIO0000003013 04/2020
EMLOGIC - User Defined Process Logic
Inputs
EIO0000003013 04/2020 71
EMLOGIC - User Defined Process Logic
Inputs/Outputs
72 EIO0000003013 04/2020
Modicon Libraries General Purpose
EMCTL - Example of Use
EIO0000003013 04/2020
Chapter 7
EMCTL - Example of Use
Overview
This chapter describes the example use of the EMCTLDFB.
EIO0000003013 04/2020 73
EMCTL - Example of Use
Description
General
This chapter gives an example of an advanced equipment module controlled by the EMCTL,
EMTRANS, EMSTABLESTEP, EMFAILED, and EMSTEPDESC DFBs.
The objective of the sequence is to control the loading of water in a process unit. For this purpose,
a reusable component (DFB) is created so that you can use this sequence in different process units
by only changing the connections of the component pins.
NOTE: Declaration of the auxiliary components manages the transitions (EMTRANS), steady-step
flags (EMSTABLESTEP), and notifications to trigger the holding subsequence (EMFAILED).
74 EIO0000003013 04/2020
EMCTL - Example of Use
DFB Representation
Representation
The following diagrams include the calls to the sequence created by the user as well as to the
control block that will control it (EMCTL).
NOTE: The call to the block controls the execution of the equipment module controller.
NOTE: The call to the functional block implements the control sequence of the user and will reuse
for different process units if needed.
EIO0000003013 04/2020 75
EMCTL - Example of Use
(Running Subsequence)
In the running sequence, different strategies are implemented such as Start distillation, Stop
distillation, Quick Stop.
In the running sequence, Distillation process started step by step in sequence.
Case SSC.Strategy of
1: (Start Distillation Strategy)
STEPDESC (1, 'Initialization', SSC, SST, SCFG);
STEPDESC (10, 'Refrigeration ON', SSC, SST, SCFG);
STEPDESC (20, 'Feeding ON', SSC, SST, SCFG);
STEPDESC (30, 'Distilling', SSC, SST, SCFG);
(* Blocking from restarting of the strategy *)
if SST.EMSTATE = 5 then
SSC.CSTEP := 30;
End_if;
NOTE: Definition of the descriptions for the subsequence steps.
(Steps and Transitions)
case SSC.CSTEP of
76 EIO0000003013 04/2020
EMCTL - Example of Use
1: (Initial Step)
NOTE: First step with a value of 1. The allowed values for steps are 1 to 999.
(Check initial conditions)
If INITCONDFAIL then
FAILED (SSC); (Initial conditions not satisfied)
end_if;
NOTE: Report detected failure to trigger the holding subsequence.
if (SST.EMSTATE = 16) then
TRANS (true, 'Jump to Step 20', 20, SSC, SST, SCFG); (* Transition to Step 20 *)
elsif (SST.EMSTATE = 17) then
TRANS (true, 'Jump to Step 30', 30, SSC, SST, SCFG); (* Transition to Step 30 *)
else
TRANS (true, 'Jump to Step 10', 10, SSC, SST, SCFG); (* Transition to Step 10 *)
end_if;
NOTE: Unconditional transition to the next step.
10: (Refrigeration ON)
if SSC.ONENTRY then
NOTE: Execute the actions only for the first time.
ChilledWaterValve.REM := false;
ChilledWaterValve.LSP := true;
CoolingWaterValve.REM := false;
CoolingWaterValve.LSP := true;
end_if;
TRANS (ChilledWaterValve.HIGHPOS and CoolingWaterValve.HIGHPOS and
SSC.ETIME >= 30, 'Valves open', 20, SSC, SST, SCFG;
NOTE: The evaluation priority for these transitions is the order in which they are shown (up down;
these transitions are not functional, and have only been included as an example in this case). You
can define a maximum of 6 transitions.
20: (Feed ON)
if SSC.ONENTRY then
FeedingRamp.REM := false;
FeedingRamp.LTARGETSP := FeedRampSP;
FeedingRamp.LSTART := true;
EIO0000003013 04/2020 77
EMCTL - Example of Use
FeedingPID.AUTO := true;
FeedingPump.REM := false;
FeedingPump.LSP := true;
BottomLevelPID.REM := false;
BottomLevelPID.LSP := BottomLevelPIDSP;
BottomLevelPID.AUTO := true;
BottomPump.LSP := true;
DistillatePump.REM := true;
end_if;
TRANS (BottomLevelPID.PV >= 50.0, 'Level >= 50%', 30, SSC, SST, SCFG);)
30: (Distilling Started)
if SSC.ONENTRY then
HeadTempPID.REM := false;
HeadTempPID.LSP := HeadTempPIDSP;
HeadTempPID.AUTO := true;
VolatileTempPID.REM := false;
VolatileTempPID.LSP := VolatileTempPIDSP;
VolatileTempPID.AUTO := true;
end_if;
TRANS (True, 'Return to IDLE', -1, SSC, SST, SCFG);
end_case;
2: ( Stop distillation Strategy)
STEPDESC (1, 'Initialization', SSC, SST, SCFG);
STEPDESC (10, 'Heating OFF', SSC, SST, SCFG);
STEPDESC (20, 'Discharge C11', SSC, SST, SCFG);
STEPDESC (30, 'Discharge D11', SSC, SST, SCFG);
STEPDESC (40, 'Close Valves', SSC, SST, SCFG);
(* Blocking from restarting of the strategy *)
if (SST.EMSTATE = 1 or SST.EMSTATE = 3) then
SSC.CSTEP := 40;
end_if;
(Steps and Transitions)
78 EIO0000003013 04/2020
EMCTL - Example of Use
case SSC.CSTEP of
1: (* Initial Step. DO NOT REMOVE *)
(* Check initial conditions *)
IF INITCONDFAIL then (* To check the Initial Conditions *)
FAILED (SSC); (* Execute 'Holding for error' sequence *)
end_if;
TRANS (true, 'Jump to Step 10', 10, SSC, SST, SCFG); (* Transition to Step 10 *)
10: (Heating OFF)
FeedingRamp.REM := false;
FeedingRamp.LTARGETSP := 0.0;
FeedingRamp.LSTART := true;
FeedingPID.MAN := true;
FeedingPID.LOP := 0.0;
FeedingPump.REM := false;
FeedingPump.LSP := false;
HeadTempPID.REM := false;
HeadTempPID.MAN := true;
HeadTempPID.LOP := 0.0;
VolatileTempPID.MAN := true;
VolatileTempPID.LOP := 0.0;
TRANS (SSC.ETIME >= 30, 'Wait 3 sec', 10, SSC, SST, SCFG);
20: (Discharge C11)
if SSC.ONENTRY then (* To be done only the first time the step is executed *)
BottomLevelPID.REM := false;
BottomLevelPID.MAN := true;
BottomLevelPID.LOP := 100.0;
BottomPump.REM := false;
BottomPump.LSP := true;
end_if;
TRANS (BottomLevelPID.PV <= 20.0 and SSC.ETIME >= 30, 'C11 Empty', 20,
SSC, SST, SCFG);
if SSC.ONEXIT then (* To be done only when step exists *)
EIO0000003013 04/2020 79
EMCTL - Example of Use
BottomLevelPID.REM := false;
BottomLevelPID.MAN := true;
BottomLevelPID.LOP := 0.0;
BottomPump.REM := false;
BottomPump.LSP := false;
end_if;
30: (Discharge D11)
IF SSC.ONENTRY THEN (* To be done only the first time the step is executed *
DistillatePump.REM := false;
DistillatePump.LSP := true;
end_if;
TRANS (DistillatePump.ILCKD and SSC.ETIME >= 30, 'D11 Empty', 30, SSC,
SST, SCFG); (End of sequence)
if SSC.ONEXIT then (* To be done only when step exists *)
DistillatePump.REM := false;
DistillatePump.LSP := false;
end_if;
40: (* Close Water Valves *)
ChilledWaterValve.REM := false;
ChilledWaterValve.LSP := false;
CoolingWaterValve.REM := false;
CoolingWaterValve.LSP := false;
TRANS (((ChilledWaterValve.LOWPOS and CoolingWaterValve.LOWPOS and
SSC.ETIME >= 30) or (SST.EMSTATE = 1)), 'Valves Closed', -1, SSC, SST,
SCFG);
end_case;
3: (Quick Stop)
(* Step descriptions *)
(Steps and Transitions)
case SSC.CSTEP of
1: (* Transitions should not be included for emergency situations *)
FeedingRamp.REM := false;
80 EIO0000003013 04/2020
EMCTL - Example of Use
FeedingRamp.LTARGETSP := 0.0;
FeedingRamp.LSTART := true;
FeedingPID.MAN := true;
FeedingPID.LOP := 0.0;
FeedingPump.REM := false;
FeedingPump.LSP := false;
BottomLevelPID.REM := false;
BottomLevelPID.MAN := true;
BottomLevelPID.LOP := 0.0;
BottomPump.REM := false;
BottomPump.LSP := false;
HeadTempPID.REM := false;
HeadTempPID.MAN := true;
HeadTempPID.LOP := 0.0;
VolatileTempPID.MAN := true;
VolatileTempPID.LOP := 0.0;
DistillatePump.REM := true;
DistillatePump.LSP := false;
ChilledWaterValve.REM := false;
ChilledWaterValve.LSP := false;
CoolingWaterValve.REM := false;
CoolingWaterValve.LSP := false;
TRANS (true, 'End', -1, SSC, SST, SCFG); (* To 'Aborted' state *)
(Stopping subsequence)
case SSC.CSTEP of
1:
TRANS (SSC.ETIME >= 10, 'End', -1, SSC, SST, SCFG); (* To 'Stopped' state after 5
seconds *)
End_case;
(Common Sequence)
(* Checks detected fail conditions *)
if FAILCOND then
EIO0000003013 04/2020 81
EMCTL - Example of Use
82 EIO0000003013 04/2020
EMCTL - Example of Use
SST.DISSTRATEGY := 0;
SST.EMSTATE := 3; (* Ready *)
end_if;
1: (* Stopped *)
SST.DISSTRATEGY := 0; (* Stopped state - Stop distillation strategy is disabled *)
SST.DISSTRATEGY02 := TRUE;
If (SSC.Strategy = 1 and not SST.HeldForError) then
SST.EMSTATE := 3; (* Ready *)
end_if;
2: (* Starting *)
SST.DISSTRATEGY := 0; (* Starting state - Start distillation strategy is disabled *)
SST.DISSTRATEGY01 := TRUE;
SST.EMSTATE := 3; (* Ready *)
If (ChilledWaterValve.HIGHPOS and CoolingWaterValve.HIGHPOS and
SSC.ETIME >= 30) then
SST.EMSTATE := 16; (Feeding ON)
end_if;
3: (* Ready *)
If (not SST.HeldForError) then
If ChilledWaterValve.LSP = true and CoolingWaterValve.LSP = true then
SST.EMSTATE := 2; (* Stopping *)
end_if;
SST.DISSTRATEGY02 := TRUE;
else
SST.EMSTATE := 1; (* Stopped *)
end_if;
5: (* Producing *)
If (FeedingRamp.LTARGETSP = 0.0 and (HeadTempPID.MAN = true and
HeadTempPID.LOP = 0.0)) then
SST.EMSTATE := 10; (* Stopping *)
end_if;
SST.DISSTRATEGY := 0; (* Producing state - Start distillation strategy is disabled *)
EIO0000003013 04/2020 83
EMCTL - Example of Use
84 EIO0000003013 04/2020
EMCTL - Example of Use
SST.DISSTRATEGY02 := TRUE;
end_if;
else
If SST.Running then
SST.EMSTATE := 10; (* Stopping *)
end_if;
end_if;
end case;
EIO0000003013 04/2020 85
EMCTL - Example of Use
86 EIO0000003013 04/2020
Modicon Libraries General Purpose
Pump Set Pattern
EIO0000003013 04/2020
Part III
Pump Set Pattern
Overview
This part provides a detailed description of the functions, pins, pin layout, and variables of the
function blocks of the Pump Set Pattern.
These function blocks do not reflect any specific installation.
WARNING
LOSS OF CONTROL
Perform a Failure Mode and Effects Analysis (FMEA) of your application, and apply preventive
and detective controls before implementation.
Provide a fallback state for undesired control events or sequences.
Provide separate or redundant control paths wherever required.
Supply appropriate parameters, particularly for limits.
Review the implications of transmission delays and take actions to mitigate.
Review the implications of communication link interruptions and take actions to mitigate.
Provide independent paths for control functions (for example, emergency stop, over-limit
conditions, and fault conditions) according to the safety analysis and applicable codes, and
regulations.
Apply local accident prevention and safety regulations and guidelines. 1
Test each implementation of this library for proper operation before placing it into service.
Failure to follow these instructions can result in death, serious injury, or equipment damage.
1
For additional information, refer to NEMA ICS 1.1 (latest edition), Safety Guidelines for the
Application, Installation, and Maintenance of Solid State Control and to NEMA ICS 7.1 (latest
edition), Safety Standards for Construction and Guide for Selection, Installation and Operation of
Adjustable-Speed Drive Systems or their equivalent governing your particular location.
EIO0000003013 04/2020 87
Pump Set Pattern
88 EIO0000003013 04/2020
Modicon Libraries General Purpose
Pump Set Equipment Module
EIO0000003013 04/2020
Chapter 8
Pump Set Equipment Module
Overview
This chapter describes the Pump Set Equipment Module management.
EIO0000003013 04/2020 89
Pump Set Equipment Module
Overview
It is an unprotected function block which is derived from EMLOGIC user-defined DFB. The
PUMPSETPATTERN DFB checks the status and controls the operation of control modules
(Motors/Valves/Sensors, etc.) and services (Initial Conditions/Detected Failure Conditions, etc.) to
form a Pump Set equipment module.
A pump, an inlet valve, an outlet valve, and a drain valve are collectively referred to as a pumping
asset. To configure a pumping asset, connecting a pump is mandatory whereas the valves are
optional.
The PUMPSETPATTERN DFB can be used to run common pumping applications like Sump
management, Transfer and Circulation pump, etc. The maximum number of pumping assets
supported for operation is five. The number of pumping assets can be modified according to the
users application requirement.
Function Description
The main functions of the DFB are described in the following table:
Function Description
Incorrect Configuration Determines the total number of pumps connected to the Pump Set from the connections to
the pump input pins of the DFB.
If the pump connections are not in order, it detects an incorrect configuration. For example,
If PUMP01, PUMP02, PUMP04 input pins are connected, the incorrect configuration is
detected since the pumps are not connected sequentially. When there is a incorrect
configuration is detected, PUMPSETPATTERN equipment is not available for operation.
Order Sequence The order sequence arranges the pumping assets in the order of minimum operation time/
highest priority first to maximum operation time/ least priority last based on the type of
strategy run. In case of priority type, lower priority value corresponds to higher priority.
If a balance strategy is selected, the order sequence is arranged by operation time. If there
are multiple pumping assets with same operation time, then the first connected pumping
asset is considered to have a higher preference.
If a priority strategy is selected, the order sequence is arranged by priority. If there are
multiple pumping assets with the same priority, then for each set of same priority pumping
assets, lesser operation time is considered as higher priority. Furthermore, in a set of
pumping assets with same priority, if there are multiple pumping assets with same operation
time, then the first connected pumping asset is considered to have a higher priority.
90 EIO0000003013 04/2020
Pump Set Equipment Module
Function Description
Switchover If an undesirable condition is detected in an active pumping asset in the field, a Stop
command is issued from the Pump Set to the inoperable pumping asset and the next
available pumping asset in the order sequence is started.
When the detected fault status of a pumping asset is reset, it automatically goes to Idle
mode and waits for the command from the next calculation/ switching caused by the
following factors:
Change in the number of requested pumping assets.
Detected failure of an active pump and switch over to an Idle one.
Recalculation is requested or forced.
NOTE: Switchover does not apply if a user has paused/stopped/held a strategy during it's
execution.
Operation The Pump Set can be run in Operator or Program owner. Strategies are used to run and
stop the Pump Set, and once it achieves the target (or target not achieved), the Strategy is
completed and the equipment module state reflects the reality of the field.
Incorrect configuration or a detected failure condition will force the Pump Set to Stopped
state.
If the Pump Set is in Stopped state, and the initial conditions are not satisfied
(INITCONDFAIL is TRUE), then the Pump Set will go to Off state, and no command is
possible, until the initial conditions are satisfied.
In Stopped state, the Pump Set can be started by selecting a strategy. Once a strategy
is completed, if the Pump Set does not achieved the desired set point, it will take
corrective action when a pumping asset becomes available for it to control.
Recalculation Strategy will capture the Priority/ operation time of the pumping assets,
refresh the order sequence and evaluate the assets which need to run and those that
can be stopped.
The pumping assets are started as per the order sequence.
The execution of Stop Strategy, or Abort command during a strategy execution, or a
detected failure condition will stop the pumping assets in parallel.
Recalculation Recalculation of the order sequence can be triggered either by the execution of the
Recalculate strategy, or by the rising edge of the input pin. If the equipment module state
was of Program type prior to recalculation, then the input pin ACTIVEPUMPSSP is
considered for set point. After recalculating the order sequence, the Pump Set will try to
achieve the set point (by starting the higher preference assets or stopping the lower
preference assets). Once set point is achieved, Pump Set evaluates whether switch over is
possible, by checking if an asset with higher preference in the order sequence is available
and is idle, and pumping asset with lesser preference is available and active. This way, the
Pump Set always tries to achieve the set point but does not exceeds it.
Detected Failure If a detected failure occurs then the Pump Set follows the Stop strategy execution matrix
Condition (Stopping to Stopped).
NOTE: For all the DEVCTL instances connected to the Pump Set, the FAILREARMEN,
CONFREARMEN, and FAILEN pins should be TRUE. Also, the TIMEOUT value should be greater
than 0 seconds.
EIO0000003013 04/2020 91
Pump Set Equipment Module
NOTE: PumpSetPattern do not check for interlock conditions of individual asset for availability of
the pumping assets. However, user can still connect interlock of one asset to another asset (e.g -
Inlet valve must be open before starting of the pump) as PumpSetPattern will be starting pumping
assets in sequence. If user wants other process interlocks on pumping assets then he should apply
it as a failure condition of PumpSetPattern or he can modify pattern to cater his requirement.
92 EIO0000003013 04/2020
Pump Set Equipment Module
Description
The given below table explains the selection of Strategy and its functionality.
EIO0000003013 04/2020 93
Pump Set Equipment Module
Description
For each equipment module state, the disabled strategies are shown below:
94 EIO0000003013 04/2020
Pump Set Equipment Module
Description
The Input parameters are as shown below:
EIO0000003013 04/2020 95
Pump Set Equipment Module
Description
The below table provides the information about the input parameters that are applicable for each
strategy.
96 EIO0000003013 04/2020
Pump Set Equipment Module
Description
The below given table provides the list of applicable strategies for each Equipment Module State,
the transient state when the strategy is started, and the final equipment module state once the
strategy is completed:
EIO0000003013 04/2020 97
Pump Set Equipment Module
Description
The Pump Set equipment module diagnosis state is evaluated as given below:
Normal: State is valid if below condition is true:
There are no detected failure and alert conditions.
98 EIO0000003013 04/2020
Pump Set Equipment Module
Description
Each individual pumping asset has its own diagnosis state and each of them are evaluated as
given below:
Normal: The set of Valves and Pump is operating properly.
Warning: The set of Valves and Pump caused a problem during its last operation. The last
time that the algorithm tried to execute the complete sequence for starting/stopping the
Pumping Asset for some reason (for example, the operating mode was not correct, it triggered
an alarm, the confirmations were not reached, etc.). Switching from alert to a detected failure
does not reset the alert condition, the only way that the alert is reset is when the same Pumping
Asset is operated again for starting or stopping it.
Failure: Any one of the Valves or Pump is in inoperable condition (The FAILD, ALARM,
REARMR or OOS value is TRUE).
EIO0000003013 04/2020 99
Pump Set Equipment Module
Description
The PUMPSETPATTERN handles 5 pumping assets, which is the maximum number of assets
supported. If the required number of pumping assets in the application is less than 5, then the
below steps can be followed to optimize the PUMPSETPATTERN DFB.
Remove the input/output pins that are not required. For example, if only 4 pumping assets are
required, then remove PUMP05, INLETVALVE05, OUTLETVALVE05, and DRAINVALVE05.
In the private variables, the size of arrays with the description User modifiable internal
array has to be reduced to reflect the expected number of pumping assets. For example, if
only 3 pumping assets are required, reduce the array size to [0...2].
In the Init section of the DFB, modify the mapping of the input/output pins to the arrays by
removing the references of the deleted pins.
In the equipment module state section, modify the mapping of the array elements to the
input/output pins by removing the references of the deleted pins.
In the equipment module state section, remove the unwanted instances of the PUMPINGAS-
SETSEQ1 DFB. For example, if only 3 pumping assets are required, delete the instances of
PumpingAsset3 and PumpingAsset4 from the EMState section.
Chapter 9
PUMPSETPATTERN - Pump Set Pattern Logic
Overview
This chapter provides a detailed description of the functions, pins, pin layout, and variables of the
PUMPSETPATTERN DFB.
Description
General
The PUMPSETPATTERN DFB can be used to run common pumping applications like Sump
management, Transfer and Circulation pump, etc. The maximum number of pumping assets
supported for operation is five. The number of pumping assets can be modified according to the
users application requirement.
DFB Representation
Representation
The DFB that is used in the program has the following aspect at the section level.You can use it in
any of the programming languages, although it is designed for use with the FBD language.
Inputs
PumpSet_ENGPAR_DDT Type
Outputs
Inputs/Outputs
NOTE: For additional information of those parameters that belong to DEVCTL_SC_DDT type
(see Modicon Libraries General Purpose, Process Components User Guide).
PUMPSET_IOPAR_DDT Type
Chapter 10
Auxiliary Functions of Pump Set Equipment Module
Section 10.1
PUMPINGASSETSEQ
PUMPINGASSETSEQ
Overview
This section describes the PUMPINGASSETSEQ DFB.
Description
General
It is an unprotected function block, that is used to control the start and stop sequence of a pumping
asset. It evaluates the alert condition of the pumping asset diagnosis state.
DFB Representation
Representation
The DFB that is used in the program has the following aspect at the section level.You can use it in
any of the programming languages, although it is designed for use with the FBD language.
Inputs
Outputs
Inputs/Outputs
NOTE: For additional information of those parameters that belong to DEVCTL_SC_DDT type
(see Modicon Libraries General Purpose, Process Components User Guide).
Part IV
Flow Control Pattern
Overview
This part provides a detailed description of the functions, pins, pin layout, and variables of the
function blocks of the Flow Control Pattern.
These function blocks do not reflect any specific installation.
WARNING
LOSS OF CONTROL
Perform a Failure Mode and Effects Analysis (FMEA) of your application, and apply preventive
and detective controls before implementation.
Provide a fallback state for undesired control events or sequences.
Provide separate or redundant control paths wherever required.
Supply appropriate parameters, particularly for limits.
Review the implications of transmission delays and take actions to mitigate.
Review the implications of communication link interruptions and take actions to mitigate.
Provide independent paths for control functions (for example, emergency stop, over-limit
conditions, and fault conditions) according to the safety analysis and applicable codes, and
regulations.
Apply local accident prevention and safety regulations and guidelines. 1
Test each implementation of this library for proper operation before placing it into service.
Failure to follow these instructions can result in death, serious injury, or equipment damage.
1
For additional information, refer to NEMA ICS 1.1 (latest edition), Safety Guidelines for the
Application, Installation, and Maintenance of Solid State Control and to NEMA ICS 7.1 (latest
edition), Safety Standards for Construction and Guide for Selection, Installation and Operation of
Adjustable-Speed Drive Systems or their equivalent governing your particular location.
Chapter 11
Flow Control Equipment Module
Overview
This chapter describes the Flow Control Equipment Module management.
Overview
It is an unprotected function block which is derived from EMLOGIC user-defined DFB. The
FLOWCTLPATTERN DFB checks the status and controls the operation of control modules
(Motors/Valves/Sensors, etc.) and services (Initial Conditions/Detected Failure Conditions, etc.) to
form a Flow Control Equipment Module.
A variable speed pump, an inlet valve, an outlet valve, and a drain valve are collectively referred
to as a pumping asset. To configure a pumping asset, connecting a pump is mandatory whereas
the valves are optional.
Function Description
The main functions of the DFB are described in the following table:
Function Description
Incorrect Configuration Determines the total number of pumps connected to the FLOWCTLPATTERN DFB from the
connections to the pump input pins
If the pump connections are not in order, it detects an incorrect configuration. For example,
If PUMP01, PUMP02, PUMP04 input pins are connected, the incorrect configuration is
detected since the pumps are not connected sequentially. When there is a incorrect
configuration is detected, Flow Control equipment module is not available for operation.
Order Sequence The order sequence arranges the pumping assets in the order of minimum operation time/
highest priority first to maximum operation time/ least priority last based on the type of
strategy run. In case of priority type, lower priority value corresponds to higher priority.
If a balance strategy is selected, the order sequence is arranged by operation time. If there
are multiple pumping assets with same operation time, then the first connected pumping
asset is considered to have a higher preference.
If a priority strategy is selected, the order sequence is arranged by priority. If there are
multiple pumping assets with the same priority, then for each set of same priority pumping
assets, lesser operation time is considered as higher priority. Furthermore, in a set of
pumping assets with same priority, if there are multiple pumping assets with same operation
time, then the first connected pumping asset is considered to have a higher priority.
Switchover If an undesirable condition is detected in an active pumping asset in the field, a Stop
command is issued from the FLOWCTLPATTERN DFB to the inoperable pumping asset and
the next available pumping asset in the order sequence is started.
When the detected fault status of a pumping asset is reset, it automatically goes to Idle
mode and waits for the command from the next calculation/ switching caused by the
following factors:
Change in flow setpoint requires a change in number of pumps.
Detected failure of an active pump and switch over to an Idle one.
Recalculation is requested or forced.
NOTE: Switchover does not apply if a user has paused/stopped/held a strategy during its
execution.
Function Description
Operation The FLOWCTLPATTERN can be run in Operator or Program owner. Strategies are used to
run and stop the pumping asset, and once it achieves the target (or target not achieved),
the Strategy is completed and the equipment module state reflects the reality of the field.
Incorrect configuration or detected failure condition will force the FLOWCTLPATTERN to
Stopped state.
If the FLOWCTLPATTERN is in Stopped state, and the initial conditions are not satisfied
(INITCONDFAIL is TRUE), then the FLOWCTLPATTERN will go to Off state, and no
command is possible, until the initial conditions are satisfied.
When FLOWCTLPATTERN is in STOPPED/ OFF state, if any pumping asset is running
outside the control of Equipment Module, then FLOWCTLPATTERN will be in Running
Externally state.
In Stopped state, the FLOWCTLPATTERN can be started by selecting a strategy. Once a
strategy is completed, if the FLOWCTLPATTERN is not able to achieve the desired flow
based on the required number of pumps, then it will generate a detected failure and then
it will take corrective action when a pumping asset becomes available for it to control.
Recalculation Strategy will capture the Priority/ operation time of the pumping assets,
refresh the order sequence and evaluate the assets which need to run and those that
can be stopped.
Whenever a change in flow setpoint requires a change in number of pumps,
recalculation will be executed.
The pumping assets are started as per the order sequence.
The execution of Stop Strategy, or Abort command during a strategy execution, or
detected failure condition will stop the pumping assets simultaneously.
Pumps running outside the control of Flow Control Equipment Module are not
considered for setpoint management.
Recalculation Recalculation of the order sequence can be triggered either by the execution of the
Recalculate strategy, or by the rising edge of the input pin RECALCULATE or change in the
flow set point. If the equipment module state was of Program type prior to recalculation, then
based on the change of Flow Set Point, required number of pumps changes thus leads to
execution of Recalculation strategy. After recalculating the order sequence, it will try to
achieve the set point (by starting the higher preference assets or stopping the lower
preference assets). Once set point is achieved, it evaluates whether switch over is possible,
by checking if an asset with higher preference in the order sequence is available and is idle,
and pumping asset with lesser preference is available and active.
Detected Failure If a detected failure occurs then the FLOWCTLPATTERN follows the Stop strategy execution
Condition matrix (Stopping to Stopped).
NOTE: For all the DEVCTL and SDDEVCTL instances connected to the Flow Control, the
FAILREARMEN, CONFREARMEN, and FAILEN pins should be TRUE. Also, the TIMEOUT value
should be greater than 0 seconds.
NOTE: PumpSetPattern do not check for interlock conditions of individual asset for availability of
the pumping assets. However, user can still connect interlock of one asset to another asset (e.g -
Inlet valve must be open before starting of the pump) as PumpSetPattern will be starting pumping
assets in sequence. If user wants other process interlocks on pumping assets then he should apply
it as a failure condition of PumpSetPattern or he can modify pattern to cater his requirement.
Description
The given below table explains the selection Strategy and its functionality.
Description
The disable strategies for Flow Control Equipment Module is same as Pump Set Pattern
Equipment Module. For additional information (see page 94).
Description
The Input parameters are as shown below:
Description
The below table provides the information about the input parameters that are applicable for each
strategy.
Description
Flow Control follows the same Equipment Module State Machine as Pump Set Equipment Module.
For additional information (see page 97).
Setpoint Management
Description
Based on the flow setpoint value and the engineering parameters (MINIMUMSP, MAXIMUMSP, and
OPTIMALSP), the Flow Control Equipment Module calculates the number of pumps and the speed
required to achieve the desired flow setpoint.
The applicable range of values for the above mentioned items is given below:
Flow setpoint: 0.0 - 100.0%
Pump speed: 0.0 - 100.0%
Maximum setpoint: 0.0 - 100.0%
Minimum setpoint: 0.0 - Maximum setpoint value
Optimal setpoint: Minimum setpoint to Maximum setpoint value
The calculation for number of pumps and their speed is governed by the following rules:
Pump speed should never go under minimum setpoint, unless it is necessary to achieve flow
setpoint.
Pump speed should never go over maximum setpoint, unless it is necessary to achieve flow
setpoint.
Pumps running in control of flow control equipment module should always operate at same
speed.
Pump speed should go up to maximum setpoint before starting the next pump.
Pump should stop when the remaining can work at optimal setpoint.
NOTE:
This calculation takes place when the equipment module state is either running or configuring.
If the optimal setpoint value is 0.0%, then pumps once started will not be stopped, since the
remaining pumps cannot run at this optimal setpoint and achieve the flow setpoint.
If the flow setpoint is 0.0%, then the calculation will result in one pump running at 0.0% speed.
The below given graphs show the calculation result of increasing and decreasing flow setpoint.
These graphs are based on the below configuration:
Maximum setpoint – 90%
Minimum setpoint – 40%
Optimal setpoint – 80%
Configured pumps – 5
Description
The Flow Control equipment module diagnosis state is evaluated as given below:
Normal: State is valid if all below conditions are true:
When no pumping asset is running in external control mode or interlocked or remote Set
point.
There are no detected failure and alert conditions.
Description
Each individual pumping asset has its own diagnosis state and each of them are evaluated as
given below:
Normal: The set of Valves and Pump is operating properly.
Warning: The set of Valves and Pump caused a problem during its last operation. The last
time that the algorithm tried to execute the complete sequence for starting/stopping the
Pumping Asset caused a problem for some reason (for example, the operating mode was not
correct, it triggered an alarm, the confirmations were not reached, etc...). Switching from alert to
a detected failure does not reset the alert condition, the only way that the alert is reset is when
the same Pumping Asset is operated again for starting or stopping it.
Failure: Any one of the Valves or Pump is in inoperable condition (The FAILD, ALARM,
REARMR or OOS value is TRUE).
Description
The FLOWCTLPATTERN handles 5 pumping assets, which is the maximum number of assets
supported. If the required number of pumping assets in the application is less than 5, then the
below steps can be followed to optimize the FLOWCTLPATTERN DFB.
Remove the input/output pins that are not required. For example, if only 4 pumping assets are
required, then remove PUMP05, INLETVALVE05, OUTLETVALVE05, and DRAINVALVE05.
In the private variables, the size of arrays with the description User modifiable internal
array has to be reduced to reflect the expected number of pumping assets. For example, if
only 3 pumping assets are required, reduce the array size to [0...2].
In the Init section of the DFB, modify the mapping of the input/output pins to the arrays by
removing the references of the deleted pins.
In the equipment module state section, modify the mapping of the array elements to the
input/output pins by removing the references of the deleted pins.
In the equipment module state section, remove the unwanted instances of the PUMPINGAS-
SETSEQ1 DFB. For example, if only 3 pumping assets are required, delete the instances of
PumpingAsset3 and PumpingAsset4 from the EMState section.
Chapter 12
FLOWCTLPATTERN - Flow Control Process Logic
Overview
This chapter provides a detailed description of the functions, pins, pin layout, and variables of the
FLOWCTLPATTERN DFB.
Description
General
The FLOWCTLPATTERN DFB can be used to run common pumping applications like Sump
management, Transfer and Circulation pump, etc. The maximum number of pumping assets
supported for operation is five. The number of pumping assets can be modified according to the
users application requirement.
DFB Representation
Representation
The DFB that is used in the program has the following aspect at the section level.You can use it in
any of the programming languages, although it is designed for use with the FBD language.
Inputs
FLOWCTL_ENGPAR_DDT Type
Outputs
Inputs/Outputs
NOTE: For additional information of those parameters that belong to DEVCTL_SC_DDT type
(see Modicon Libraries General Purpose, Process Components User Guide) and
SDDEVCTL_SC_DDT type (see Modicon Libraries General Purpose, Process Components User
Guide).
FLOWCTL_IOPAR_DDT Type
Chapter 13
Auxiliary Functions of Flow Control Equipment Module
Section 13.1
PUMPINGASSETSEQ1
PUMPINGASSETSEQ1
Overview
This section describes the PUMPINGASSETSEQ1 DFB.
Description
General
It is an unprotected function block, that is used to control the start and stop sequence of a pumping
asset. It evaluates the alert condition of the pumping asset diagnosis state.
DFB Representation
Representation
The DFB that is used in the program has the following aspect at the section level. You can use it
in any of the programming languages, although it is designed for use with the FBD language.
Inputs
Outputs
Inputs/Outputs
NOTE: For additional information of those parameters that belong to DEVCTL_SC_DDT type
(see Modicon Libraries General Purpose, Process Components User Guide) and
SDDEVCTL_SC_DDT type (see Modicon Libraries General Purpose, Process Components User
Guide).
Index
A EMSTEPDESC
description, 64
auxiliary functions of equipment module
function calls, 64
EMFAILED, 57
inputs, 66
EMTRANS, 52
inputs/outputs, 67
auxiliary functions of sequential control
public variables, 68
EMSTABLESTEP, 60
EMTRANS
EMSTEPDESC, 63
function call, 53
general description, 53
inputs, 55
C inputs/outputs, 56
commands equipment module
sequential control, 29 equipment module overview, 23
auxiliary functions of equipment module,
51
E Equipment Module
EMCTL definition of statuses and commands, 27
DFB representation, 35 equipment module
inputs, 36 EMCTL, 33
inputs/outputs, 37 EMCTL - example of use, 73
public variables, 44 Equipment Module
EMCTL - example of use overview, 24
reusable sequence definition, 74 equipment module
EMCTL1 Strategy Execution Status controller, 31
description, 34 Equipment Module
EMCTL1 - example of use Strategy Execution Status Matrix, 30
DFB representation, 75 Equipment Module Control Expert compo-
reusable equipment module logic, 76 nent
EMCTL1-example of use list of function blocks, 19
general description, 74
EMFAILED
function call, 58 F
general description, 58 FlowCtlPattern
inputs/outputs, 59 inputs/outputs, 141
EMLOGIC
inputs, 71
inputs/outputs, 72 P
EMSTABLESTEP
PumpSetPattern
function call, 61
inputs/outputs, 107
general description, 61
inputs/outputs, 62
S
sequential control
function description, 24
operating modes, 32
statuses
equipment module, 27