You are on page 1of 32

PPLib800xA 6.2

Functional Description
PID01 - Closed Loop Controller

PPLib800xA 6.2

Functional Description
PID01 - Closed Loop Controller

Document Number: 3BTG811796-3031


Document Revision: A
Release: May 2019

Notice
This document contains information about one or more ABB products and may include a description of or a
reference to one or more standards that may be generally relevant to the ABB products. The presence of any
such description of a standard or reference to a standard is not a representation that all of the ABB products
referenced in this document support all of the features of the described or referenced standard. In order to
determine the specific features supported by a particular ABB product, the reader should consult the product
specifications for the particular ABB product.
ABB may have one or more patents or pending patent applications protecting the intellectual property in the
ABB products described in this document.
The information in this document is subject to change without notice and should not be construed as a
commitment by ABB. ABB assumes no responsibility for any errors that may appear in this document.
Products described or referenced in this document are designed to be connected, and to communicate
information and data via a secure network. It is the sole responsibility of the system/product owner to provide
and continuously ensure a secure connection between the product and the system network and/or any other
networks that may be connected.
The system/product owners must establish and maintain appropriate measures, including, but not limited to,
the installation of firewalls, application of authentication measures, encryption of data, installation of antivirus
programs, and so on, to protect the system, its products and networks, against security breaches, unauthorized
access, interference, intrusion, leakage, and/or theft of data or information.
ABB verifies the function of released products and updates. However system/product owners are ultimately
responsible to ensure that any system update (including but not limited to code changes, configuration file
changes, third- party software updates or patches, hardware change out, and so on) is compatible with the
security measures implemented. The system/product owners must verify that the system and associated
products function as expected in the environment they are deployed.
In no event shall ABB be liable for direct, indirect, special, incidental or consequential damages of any nature or
kind arising from the use of this document, nor shall ABB be liable for incidental or consequential damages
arising from use of any software or hardware described in this document.
This document and parts thereof must not be reproduced or copied without written permission from ABB, and
the contents thereof must not be imparted to a third party nor used for any unauthorized purpose.
The software or hardware described in this document is furnished under a license and may be used, copied, or
disclosed only in accordance with the terms of such license. This product meets the requirements specified in
EMC Directive 2014/30/EU and in Low Voltage Directive 2014/35/EU.


Trademarks
All rights to copyrights, registered trademarks, and trademarks reside with their respective owners.
Copyright © 2019 by ABB.
All rights reserved.
Table of Contents

INTRODUCTION ............................................................................................................................... 5
General .............................................................................................................................................. 5

FUNCTION BLOCK & DATA TYPES ................................................................................................ 7


Function Block ................................................................................................................................. 7
Data Types........................................................................................................................................ 9
PID01_InPar .................................................................................................................................. 9
PID01_OutPar ............................................................................................................................ 10
PID01_Opr ...................................................................................................................................11
Permission ...................................................................................................................................... 12

FUNCTION ...................................................................................................................................... 13
Control Modes ............................................................................................................................... 13
Balance Mode ............................................................................................................................ 13
Manual Mode ............................................................................................................................. 13
Auto Mode.................................................................................................................................. 13
E1 and E2 Mode ......................................................................................................................... 14
E3 Mode ...................................................................................................................................... 14
Control Algorithm ......................................................................................................................... 14
Control Deviation...................................................................................................................... 14
Transfer Function ..................................................................................................................... 15
Reverse Action........................................................................................................................... 15
Feed Forward ............................................................................................................................ 16
External Feedback .................................................................................................................... 16
Range............................................................................................................................................... 16
Signal Status .................................................................................................................................. 16
Setpoint Limitation ...................................................................................................................... 17
Output Limitation ......................................................................................................................... 17
Ramp Function............................................................................................................................... 17
Tracking .......................................................................................................................................... 17
Alarm Limits ................................................................................................................................... 18
Interlocks ........................................................................................................................................ 19
External Control............................................................................................................................. 19
Gain Scheduling ............................................................................................................................. 19
Simulation ......................................................................................................................................20
Alarm Blocking ...............................................................................................................................20
Interaction Window ......................................................................................................................20
Text Configuration........................................................................................................................ 24
OPERATOR FUNCTION ................................................................................................................. 25
Process Display.............................................................................................................................. 25
Faceplate ........................................................................................................................................ 25
Aspect Link ................................................................................................................................ 25
Faceplate .................................................................................................................................... 26
Extended Tabs .......................................................................................................................... 26
Interlock Display ............................................................................................................................ 29
Object Display................................................................................................................................30
Object Trend Display ....................................................................................................................30
Alarm & Event ................................................................................................................................. 31
Alarm & Event List..................................................................................................................... 31
Alarm & Event Message ........................................................................................................... 31
INTRODUCTION

General
PID01 is a functional unit for closed loop process control analog input in ControlIT, to be
operated from 800xA System. A PID01 normally performs a complete function independently.
PID01 has the following functions and properties:
· Different control modes which can be set by operator or control logic
· Bumpless change between different control modes
· Controllable change rate of setpoint & output
· Setpoint & output limitation
· Setpoint tracking
· High & low limits supervision
· Interlocks function
· P, PI, PD or PID control algorithm
· External control parameters which can be used for gain scheduling
· Feed forward
· Alarm & Event detection and handling
· KPI monitoring

5
INTRODUCTION
General

6
FUNCTION BLOCK & DATA TYPES

Function Block
Name Data Type Direction Initial Value Description
Name string in Object name
Description string in Object description
Enable bool in true Enable object
TrackA dint in 1 Selection of tracking reference
TrackB dint in 1 Selection of how to track
TrackC dint in 0 Selection of tracking reference for external setpoint
TrackIB bool in true Tracking IB Reference in Man Mode
RevAct dint in 1 Reverse control action
Deriv dint in 0 Selection of derivation
FeedFwd real in Added output value for feedforward
MV real in Measured Value
AIErr dword in 16#C0 MV status
AOErr dword in 16#C0 OUT status
Speed1 real in 2.0 Max setpoint change rate in Auto mode (unit/s)
Speed4 real in 20.0 Max output change rate (unit/s)
ManEnbl bool in true Enable Man mode
AutoEnbl bool in true Enable Auto mode
E1Enbl bool in Enable E1 mode
E2Enbl bool in Enable E2 mode
E3Enbl bool in Enable E3 mode
ExtRef1 real in External reference setpoint in E1 mode
ExtRef2 real in External reference setpoint in E2 mode
ExtRef3 real in External reference setpoint in E3 mode
Speed2 real in 2.0 Max setpoint change rate in E1 mode (unit/s)
Speed3 real in 2.0 Max setpoint change rate in E2 mode (unit/s)
SeqE1 bool in Order mode to E1
SeqE2 bool in Order mode to E2
SeqE3 bool in Order mode to E3
Local bool in Order mode to Local
BalIn bool in Order mode to Balance
SeqMan bool in Order mode to Man
SeqAuto bool in Order mode to Auto
BalRef real in 0.0 Balance Reference
Clamp bool in Order mode to Clamp
ClampRef real in 0.0 Clamp Reference
EOLim bool in Enable external output limit
EOLL real in 0.0 External Output Low Limit
EOHL real in 100.0 External Output High Limit
IB1 bool in true Process Interlock 1

7
FUNCTION BLOCK & DATA TYPES
Function Block

Name Data Type Direction Initial Value Description


IB2 bool in true Process Interlock 2
IB3 bool in true Process Interlock 3
IB4 bool in true Process Interlock 4
IB1Ref real in 0.0 Reference for Process Interlock 1
IB2Ref real in 0.0 Reference for Process Interlock 2
IB3Ref real in 0.0 Reference for Process Interlock 3
IB4Ref real in 0.0 Reference for Process Interlock 4
ActPos real in Actuator position
AlcBlk bool in Block alarm
AlarmAck bool in Acknowledge alarm
ExtResetFB real in External reset feedback
ExtResetFBEn bool in Enable external reset feedback
ExtCtrl Ext_Control in External control
MVAlarms Alarm4Limit in MV alarm configuration
DevAlarms Alarm2Limit in Deviation alarm configuration
ActDevAlarms AlarmPar in Actuator deviation alarm configuration
InPar PID01_InPar in In Parameter
AutoSP real out Auto setpoint
WSP real out Working setpoint
Dev real out Deviation
OutP real out Output
Sim bool out Simulation mode
Bal bool out Balance mode
Man bool out Man mode
ManFd bool out Man Forced mode
Auto bool out Auto mode
E1 bool out E1 mode
E2 bool out E2 mode
E3 bool out E3 mode
BalOut bool out Balance Out
OutEqLL bool out Output less than or equal to Low Limit
OutEqHL bool out Output greater than or equal to High Limit
SpEqLL bool out SP less than or equal to Low Limit
SpEqHL bool out SP greater than or equal to High Limit
MV_GT_H2 bool out MV greater than or equal to High High Limit (H2)
MV_GT_H1 bool out MV greater than or equal to High Limit (H1)
MV_LT_L1 bool out MV less than or equal to Low Limit (L1)
MV_LT_L2 bool out MV less than or equal to Low Low Limit (L2)
Dev_GT_H bool out Deviation greater than or equal to High Limit
Dev_LT_L bool out Deviation less than or equal to Low Limit
ActDev_GT_H bool out Difference of output and actual position greater than or
equal than the limit
OLimErr bool out Output Low Limit is greater than Output High Limit
NoInt bool out No Interlocks
Err bool out Error
ExtParOut Ctrl_Data out Control data for supervisory control
OutPar PID01_OutPar out Out Parameter

8
FUNCTION BLOCK & DATA TYPES
Data Types

Name Data Type Direction Initial Value Description


Opr PID01_Opr out Operator order

Data Types

PID01_InPar
PID01_InPar data type contains all configuration parameter available in PID01. Configuration
can be entered by writing value to this structured data type and connecting it to input InPar
of PID01 function block.
Name Data Type Initial Value Description
Class dint cPPInit.Class AE class
Severity dint cPPInit.Severity AE severity
MVRange RangeReal MV Range
OUTRange RangeReal OUT Range
SPLimit RangeLimit SP limit
OUTLimit RangeLimit OUT limit
InitMode dint 5 Init mode (5 = Man ; 6 = Auto ; 7 = E1 ; 8 = E2 ; 9 = E3)
BalNorm bool false Bal mode is normal mode
ManNorm bool false Man mode is normal mode
AutoNorm bool true Auto mode is normal mode
E1Norm bool true E1 mode is normal mode
E2Norm bool true E2 mode is normal mode
E3Norm bool true E3 mode is normal mode
ManFdEnbl bool false Enable operator order Man Forced mode
SimEnbl bool false Enable operator order simulation command
AlcBlkEvEnbl bool cPPInit.AlcBlkEvEnbl Enable event for AlcBlk
ExtModeEvEnbl bool cPPInit.ExtModeEvEnbl Enable event for mode change by logic
OprModeEvEnbl bool cPPInit.OprModeEvEnbl Enable event for mode change by operator
EOLimEvEnbl bool cPPInit.EOLimEvEnbl Enable event for EOLim
IB1 IBInParType3 Configuration for IB1
IB2 IBInParType3 Configuration for IB2
IB3 IBInParType3 Configuration for IB3
IB4 IBInParType3 Configuration for IB4
ErrCtrl bool false No error at overflow
AEConfigAIErr dint 1 AE configuration for AI Error
AEConfigAOErr dint 1 AE configuration for AO Error
AlarmDelay time 0s Alarm Delay
ShowActPos bool false Show actuator position
OUTIncDec real 2.0 Increase/Decrease step of output (In percentage of range)
SPIncDec real 1.0 Increase/Decrease step of setpoint (In percentage of range)
ControllerType dint 2 Controller Type
Gain real 0.5 Gain
TI real 15 Integration Time
TD real 0.0 Derivative Time

9
FUNCTION BLOCK & DATA TYPES
Data Types

Name Data Type Initial Value Description


TF real 0.0 Filter Time
Beta real 1.0 Beta Factor
TIDeadB real 0.0 Integration Deadband
HystType bool cPPInit.MVHystType Hysterisis type (0 = Unit, 1 = Percent)
EnKPI bool false Enable KPI monitoring
EnBalRefOutLim bool false Enable BalRef limited by Output limit
EnClampRefOutLim bool true Enable ClampRef limited by Output limit
EnIBRefOutLim bool false Enable IBRef limited by Output limit
EnSPInit bool false Enable AutoSP init value
AutoSPInit real 0.0 Auto SP init value
EnOUTInit bool false Enable Man OUT init value
ManOUTInit real 0.0 Man OUT init value
NOTE: Connecting a variable to InPar parameter which has been configured previously via
Interaction Window, will reset the values in PID01_InPar to default value.

PID01_OutPar
PID01_OutPar data type contains all information on the object which not available on the
output parameter of the function block.
Name Data Type Initial Value Description
AlarmBlk bool Alarm blocked
OprBlockAlarm bool Alarm blocked by operator
IntlkBlk bool Interlock blocked
IntlkBlkActive bool Interlock blocked active
EnOverrideAll bool Override All button enabled
Mode dint Active mode
NormalMode bool Normal mode (Active mode = Init mode)
AIErr bool MV error
AOErr bool AO error
Forced bool MV forced
IB1Ind bool IB1 interlocked
IB2Ind bool IB2 interlocked
IB3Ind bool IB3 interlocked
IB4Ind bool IB4 interlocked
MVH2 real Active High High MV alarm limit
MVH1 real Active High MV alarm limit
MVL1 real Active Low MV alarm limit
MVL2 real Active Low Low MV alarm limit
DevH real Active High Deviation alarm limit
DevL real Active Low Deviation alarm limit
ActDev real Active Actuator Deviation alarm limit
ALB_H2 bool High High MV alarm blocked
ALB_H1 bool High MV alarm blocked
ALB_L1 bool Low MV alarm blocked
ALB_L2 bool Low Low MV alarm blocked
ALB_DevH bool High Deviation alarm blocked

10
FUNCTION BLOCK & DATA TYPES
Data Types

Name Data Type Initial Value Description


ALB_DevL bool Low Deviation alarm blocked
ALB_ActDev bool Actuator Deviation alarm blocked
AU_MVH2 bool UnAcknowledge alarm for MV > H2
AU_MVH1 bool UnAcknowledge alarm for MV > H1
AU_MVL1 bool UnAcknowledge alarm for MV < L1
AU_MVL2 bool UnAcknowledge alarm for MV < L2
AU_DevH bool UnAcknowledge alarm for Dev > H
AU_DevL bool UnAcknowledge alarm for Dev < L
AU_ActDev bool UnAcknowledge alarm for ActDev
AU_AIErr bool UnAcknowledge alarm for AI Error
AU_AOErr bool UnAcknowledge alarm for AO Error
Direction bool Direction (0 = direct ; 1 = reverse)
MV real MV indication
OHL real Active output high limit
OLL real Active output low limit
SPH real Active setpoint high limit
SPL real Active setpoint low limit
HWStatus HwStatus MV Hardware status
SubStatus dint MV Hardware substatus
IOStatus dint MV Hardware I/O status quality
OutHWStatus HwStatus OUT Hardware status
OutSubStatus dint OUT Hardware substatus
OutIOStatus dint OUT Hardware I/O status quality
LastManOutRef real Last ManOut before interlock
KPINormalMode dint Percentage of object in Normal Mode
KPIAlarmActive dint Percentage of object in Alarm Active state
KPIrmsEPrev real Root Mean Square Error for previous
KPIrmsENow real Root Mean Square Error for now
LastReset date_and_time Last reset time for counter and KPI
LimitInd dint Limit active
AlarmCode dint Alarm code

PID01_Opr
PID01_Opr data type contains all operator order.
Name Data Type Initial Value Description
BlockAlarm bool Operator block alarms
ALB_H2 bool Operator block alarm limit H2
ALB_H1 bool Operator block alarm limit H1
ALB_L1 bool Operator block alarm limit L1
ALB_L2 bool Operator block alarm limit L2
ALB_DevH bool Operator block alarm deviation H
ALB_DevL bool Operator block alarm deviation L
ALB_ActDev bool Operator block alarm actuator deviation
ManFd bool Operator order Manual Forced mode

11
FUNCTION BLOCK & DATA TYPES
Permission

Name Data Type Initial Value Description


Man bool Operator order Manual mode
Auto bool Operator order Auto mode
E1 bool Operator order E1 mode
E2 bool Operator order E2 mode
E3 bool Operator order E3 mode
Incr real Operator order Increase SP command
Decr real Operator order Decrease SP command
OverrideAll bool Operator override all interlocks
IB1Override bool Operator override IB1 interlock
IB2Override bool Operator override IB2 interlock
IB3Override bool Operator override IB3 interlock
IB4Override bool Operator override IB4 interlock
AutoSP real 0.0 Operator enter Auto Setpoint
ManOUT real 0.0 Operator enter Man OUT
EnableSim bool Enable simulated running feedback
ResetCounter bool Order reset KPI

Permission
All variables in PID01_InPar data type are set with Configure permission in 800xA system. All
variables in PID01_Opr data type are set with Operate permission, except for Reset Counter
and EnableSim which has Configure permission.
The variable permission can be configured according to the plant requirement. This can be
done by adding Property Attribute Override aspect for the object in Control Structure or for
the object type in Object Type Structure.

12
FUNCTION

Control Modes
There are six different control modes are available in priority order: Balance, Man, Auto, E1, E2
and E3. Active mode is indicated on the faceplate and object display. These modes can also be
blocked individually from operator access. When in one mode, control from other location is
blocked.

Balance Mode
In Balance mode, the control output follows the input parameter BalRef.
Balance mode can be activated by setting the input parameter Local or BalIn of the function
block. When activated by input parameter Local, an indication BaLo is presented in graphic
elements and faceplate. When activated by input parameter BalIn, an indication Bal is
presented instead.

Manual Mode
Manual mode is the default init mode of the PID01. Manual mode can be activated if Local and
BalIn is not active.
In Manual mode, operator directly sets the control output from the faceplate’s dialog entry
window. Manual mode can be activated from the Man button on the faceplate or with a rising
edge pulse to the input SeqMan of the function block. An indication M or Man is presented on
the graphic elements and faceplate. To enable Man button on the faceplate, the input
parameter ManEnbl must set to True.
When an AI error occurs in input parameter AIErr, control mode will be switch to Manual mode.
If the AI error exist, it’s not possible to switch to other control mode with lower priority such
as Auto, E1, E2 or E3 mode.
Another condition in Manual mode is called Manual Forced. In this condition, the interlock is
overridden. Operator can set the control output from the faceplate’s dialog entry window even
if an interlock is active. Manual Forced is activated from the MFd button on the faceplate. An
indication MFd is presented on the graphic elements and faceplate.
Manual mode can also be activated by the setting the input parameter Clamp of the function
block. The output will follow the input parameter ClampRef. An indication MCp is presented
on the graphic elements and faceplate. During this condition, the output value set by operator
is ignored.

Auto Mode
In Auto mode, operator directly sets the setpoint from the faceplate’s dialog entry window.

13
FUNCTION
Control Algorithm

If Local, BalIn and Clamp is not active, Auto can be activated from the Auto button on the
faceplate or with a rising edge pulse to the input SeqAuto of the function block. An indication
of A or Auto is presented on the graphic elements and faceplate. To enable Auto button on
the faceplate, the input parameter AutoEnbl must set to True.

E1 and E2 Mode
The setpoint is controlled by the input parameter ExtRef1 in E1 mode and ExtRef2 in E2 mode.
If Local, BalIn and Clamp is not active, E1 or E2 mode can be activated from the E1 or E2 button
on the faceplate or with a rising edge pulse to the input SeqE1 or SeqE2 of the function block.
An indication of E1 or E2 is presented on the graphic elements and faceplate. To enable E1 or
E2 button on the faceplate, the input parameter E1Enbl or E2Enbl must set to True.

E3 Mode
In E3 mode, the output is controlled by the input parameter ExtRef3.
If Local, BalIn and Clamp is not active, E3 mode can be activated from the E3 button on the
faceplate or with a rising edge pulse to the input SeqE3 of the function block. An indication of
E3 is presented on the graphic elements and faceplate. To enable E3 button on the faceplate,
the input parameter E3Enbl must set to True.
The table below describes the control mode activation and priority of PID01.
Balance Manual Auto E1 E2 E3
Input Local (1) BaLo - - - - -
Input BalIn (1) Bal - - - - -
Input Clamp (1) - MCp - - - -
Operator ManForced (2) - MFd - - - -
Input AIErr - M - - - -
Operator Man - M - - - -
Input SeqMan ­ (3) - M - - -
Operator Auto - - A - - -
Input SeqAuto ­ (3) - - A - - -
Operator E1 - - - E1 - -
Input SeqE1 ­ (3) - - - E1 - -
Operator E2 - - - - E2 -
Input SeqE2 ­ (3) - - - - E2 -
Operator E3 - - - - - E3
Input SeqE3 ­ (3) - - - - - E3
1. On leaving Balance or Manual Clamped, Manual mode is always obtained, unless other signal commands another mode.
2. The mode MFd is temporarily left while a command signal with higher priority is active. The mode is not left finally, until the operator
gives a command for another mode. All other commands of lower priority are blocked.
3. The arrow ­ indicates that only a rising edge signal will trigger the mode change.

Control Algorithm
The algorithm consists of a controller with optional P, PI, PD or PID characteristics. The
different parameters can be set from the faceplate or by control logic.

Control Deviation
14
FUNCTION
Control Algorithm

Control deviation is the difference between the working setpoint and measured value from
the process. Control deviation is calculated with the following equation:
Dev = (MV - WSP) * 100 / (MVmax - MVmin)
where: Dev = control deviation
MV = measured value (internally limited to the range of the MV signal)
WSP = working setpoint

Transfer Function
The transfer function for a PID controller consists of the sum of the different transfer
functions for PI-controller and derivation.

æ 1 s × TD ö
G ( s ) = Gain ç b * WSP - MV + + ÷
è s ×T 1 1 + s × TF ø
where: Gain = gain constant * (OUTmax - OUTmin) / (MVmax - MVmin)
TI = integration time constant
TD = derivation time constant
TF = filter time constant
b = beta factor (setpoint factor)
The PID algorithm in the function block performs the following tests:
· If TI < Ts, then TI = Ts
· If abs(Dev) < IntegralDeadband, then no integration change.
· If TD and TF ≤ 2 x Ts, then TD and TF = 2 x Ts
where: Ts = the sampling time for the controller.
The beta factor appearing in the P part makes the formula differs from the most common
form of a PID controller (in which case the beta factor has the fixed value = 1, the P part thus
operating on the deviation Dev). The inclusion of beta factor allows the loop to be made faster
without causing big overshoots at setpoint changes. To get an ordinary P or PD controller
without a reduced beta factor, then beta factor should be set to 1.
The beta factor allows two-degree-of-freedom control in the PID controller. This means that
the response to a setpoint step of a certain size differs from a disturbance step in the
measured value of the same size. Using a value of beta factor less than one can be used to
avoid excessive overshoot in the setpoint step response (controller is slower for setpoint
changes compared to measurement disturbances). But this factor can also be used to
increase the setpoint gain (thereby speeding up the setpoint step response) in cases where
the controller proportional gain has to be kept low due to a high disturbance level (i.e.
measurement noise).

Reverse Action
The input RevAct defines the selection of function in term of PI and D control.
· 0 = Direct action in PI and D
· 1 = Reverse action in PI and D
15
FUNCTION
Range

· 2 = Direct action in PI and Reverse action in D


· 3 = Reverse action in PI and Direct action in D

Feed Forward
In automatic modes, the output of the controller is generated by the control algorithm and
added with the value of the input parameter FeedFwd. The result is checked against high and
low limits and rate limit.

External Feedback
The purpose of external feedback is to set up an
arrangement of 2 or more PID controllers which share a
common output but have different process values and
setpoints. As there’s only one output which has effect
over the process, some selection logic must be added to
decide which PID controller acts the output. Normally this
will be a minimum selector, although any other selector or
more complicated logic may be used. For this logic to
work the actual output must be informed to all PID
controllers so that the output of the PID controllers that
don’t have control over the process don’t saturate. This
control scheme is called overrun control.

Range
Range parameter can be set from interaction window. Measured value and control output
have their own parameter. It includes Min, Max, Decimal / Fraction and Unit. The setpoint
range is always the same as measured value range.

Signal Status
PID01 monitor the MV and OUT status which connected to IO module using input parameter
AIErr and AOErr respectively. Error occurs if the IO module function is deemed nonfunctional.
Typical caused of errors are missing or faulty hardware and out of range values.
Errors generated from IO module are passed to PID01. The output parameter OutPar.AIErr or
OutPar.AOErr is set to True when there is error. Faceplate element Status gives detail
information about the error code.
Overflow or underflow will occur if the A/D converter is given value out of its range. In
interaction window, it’s possible to select no error when overflow to prevent AI Error alarm
from being generated.

16
FUNCTION
Setpoint Limitation

Setpoint Limitation
The value from ExtRef1 / ExtRef2 when in E1 / E2 mode or operator input when in Auto mode
is limited to upper limit H and lower limit L before passed to the output WSP.
Setpoint limit can be entered from interaction window or extended faceplate. When limitation
is not necessary, the Max and Min of MV shall be used as the upper and lower limit.
For upper limit, the value of SpEqHL will be set when WSP ≥ H. It will be reset when the WSP is
lower than the setpoint limit. For lower limit, the value of SpEqLL will be set when WSP ≤ L. It
will be reset when the WSP is greater than the setpoint limit.

Output Limitation
The control output value is normally limited to the Max and Min of the output signal, but it’s
possible to define upper limit H and lower limit L within the signal range.
Internal output limit can be entered from interaction window or extended faceplate. It can
also be set externally in logic via input parameter EOHL and EOLL. The activation of input
parameter EOLim determines whether external limit or internal limit is applied to the output
limitation.
The upper limit can be set equal to the lower limit, but lower limit cannot be set greater than
the upper limit. Otherwise, limitation error will be activated in output parameter OLimErr.
For upper limit, the value of OutEqHL will be set when OutP ≥ H. It will be reset when the OutP
is lower than the output limit. For lower limit, the value of OutEqLL will be set when OutP ≤ L.
It will be reset when the OutP is greater than the output limit.

Ramp Function
Ramp function is introduced into the signal path to determine the maximum permitted rate
of change of certain signal. The maximum permitted rate of changed is determine by the input
parameter Speed(x) and is specified in unit per second.
Speed1 determines the maximum setpoint change rate in Auto mode. Speed2 and Speed3
determine the maximum change rate for ExtRef1 in E1 mode and ExtRef2 in E2 mode
respectively. Speed4 determines the maximum output change rate in Manual, Clamp or E3
mode.

Tracking
The tracking functions are intended to eliminate abrupt changes of the setpoint on return to
the different control modes. Tracking functions are available for both Auto mode and external
mode and are activated during mode transfers.
Tracking selection for Auto mode is configured using input parameter Track_A and Track_B.

17
FUNCTION
Alarm Limits

Track_A Track_B Description


X 0 No tracking
The working setpoint is tracking MV when not in Auto mode. The working setpoint is ramped to
1 1
AutoSP on return to Auto mode
The working setpoint is tracking ExtRef1 when in E1 mode or ExtRef2 when in E2 mode. The working
2 1
setpoint is ramped to AutoSP on return to Auto mode
The working setpoint and AutoSP is tracking MV when not in Auto mode. The AutoSP will stay at
1 2
current value on return to Auto mode
The working setpoint and AutoSP is tracking ExtRef1 when in E1 mode or ExtRef2 when in E2 mode.
2 2
The AutoSP will stay at current value on return to Auto mode

Tracking selection for external mode is configured using input parameter Track_C.
Track_C Description
0 No tracking (default value)
The external setpoint ExtRef1 and ExtRef2 is tracking MV when not in E1 and E2 mode. The internal setpoint is
1
ramped to ExtRef1 or ExtRef2 on return to E1 or E2 mode
The external setpoint ExtRef1 and ExtRef2 is tracking WSP when not in E1 and E2 mode. The internal setpoint is
2
ramped to ExtRef1 or ExtRef2 on return to E1 or E2 mode

Alarm Limits
PID01 monitor the measured value MV and compared it with two upper (H1 and H2) and two
lower (L1 and L2) alarm limits. When determining the MV alarm limits, it is recommended to
follow the rule: H2 > H1 > L1 > L2. Alarm limit can be entered from interaction window or
extended faceplate.
It’s possible to select whether the hysteresis is in unit or in percentage. If percentage is
selected, then actual hysteresis used internally is calculated by multiplying the percentage
against the signal range.
For upper alarm limit, the value of MV_GT_H1 and MV_GT_H2 will be set when MV > H1 and
MV > H2 respectively. It will be reset when the MV is lower than the alarm limit minus the
respective hysteresis. For lower alarm limit, the value of MV_LT_L1 and MV_LT_L2 will be set
when MV < L1 and MV < L2 respectively. It will be reset when the MV is greater than the alarm
limit plus the respective hysteresis.
PID01 also monitor the deviation value Dev and compared it with upper H and lower L alarm
limits. Alarm limit can be entered from interaction window or extended faceplate.
For upper alarm limit, the value of Dev_GT_H will be set when Dev > H. It will be reset when the
Dev is lower than the alarm limit minus the hysteresis. For lower alarm limit, the value of
Dev_LT_L will be set when Dev < L. It will be reset when the Dev is greater than the alarm limit
plus the hysteresis.
Another limit can be monitored by PID01 is the actuator deviation. This can be used to monitor
how well the actuator/valve response to the output command. The value of ActDev_GT_H will
be set when the difference between OutP and ActPos is greater than the alarm limit. It will be
reset when the difference is lower than the alarm limit minus the hysteresis.

18
FUNCTION
Interlocks

The value of MV_GT_H2, MV_GT_H1, MV_LT_L1, MV_LT_L2, Dev_GT_H, Dev_LT_L and


ActDev_GT_H will always be monitored even if the alarm and event is not activated (AEConfig
set to 0).
All alarm limits can be blocked altogether or individually. Alarm blocking can be done from
faceplate or from function block using AlcBlk or MVAlarms or DevAlarms or ActDevAlarms.
Repetitive alarms can be prevented by enabling the Repeat Control parameter.

Interlocks
The PID01 control can be interlocked by signals from the process or control logic. Interlocks
are active when the value is False. There are 4 process interlocks available: IB1 - IB4. All can be
configured to accept blocking by the operator.
When interlock is active, the control output will be set to a value defined in the IB1Ref - IB4Ref.
If the active interlock is at the IB1, the output will be set based on value in IB1Ref. The same
condition applies to IB2, IB3 and IB4. Interlock supervision is performed in the priority order
IB1, IB2, IB3 and IB4.
These interlocks do not change the current control mode, but can be overridden by Manual
Forced, when selected by the operator. If the control mode is Manual when the interlock is
released, the behavior of the output will depend on the value of TrackIB parameter.
The output will stay at the interlock-value if TrackIB is set to True (default value). If interlock-
value is outside of the output limitation, the output will go to the limit value. If TrackIB is set
to False, the output will return to the last manual entered output value when interlock is
activated. This value is shown in Control 2 faceplate tab.

External Control
Alarm limit parameter and alarm blocking can be controlled externally by logic using the input
parameter ExtCtrl. When external control is enabled, both alarm limit and blocking will take
the value from the external control. When it is released, the alarm limit will take value set in
the interaction windows / faceplate while alarm blocking will take the value from operator
blocking.
Internal data of PID01 can be accessed for other purposes using output parameter ExtParOut.

Gain Scheduling
Gain scheduling can be accomplished by using GainSched function block. The output
parameter ExtCtrl in GainSched function block shall be connected to input parameter ExtCtrl
in PID01.

19
FUNCTION
Simulation

Simulation
The function block support internal simulation. Simulation can be activated by enabling the
simulation button in Interaction Window or by setting the Opr.EnableSim to True using the
bulk tool. The simulation will be reset when cold download is performed.
Object in simulation mode will be indicated with a frame on the graphic elements. The default
color is flashing yellow as defined by ppSimulation in Pulp & Paper Library Colors aspect. It
also indicates Sim next to the mode indication in faceplate.
Measured value will be filtered by 2s from the output OutP. The measured value will be
simulated based on the MV range defined in the PID01 and the control direction.

Alarm Blocking
Alarm can be blocked using input parameter AlcBlk or MVAlarms or DevAlarms or
ActDevAlarms.
Project constant cPPCustom.AlcBlkBlockAll determines the behavior of alarm blocking. If
cPPCustom.AlcBlkBlockAll is set to True, it will automatically acknowledge existing alarms
and prevent new alarm. If set to False, it will only block new alarm. Existing active alarm will
remain in the alarm list and need to be acknowledged manually.
If blocking is released while object is in alarm condition, alarm will then be generated.

Interaction Window
Interaction Window is used to configure the object’s parameter
in the Control Builder. It is only accessible when Control Builder is
in Online mode by right clicking the function block.
The main Interaction Window shows the name and description of
the function block. The buttons are links to open the sub-window.

General Par
Name and Description can be entered from interaction window
or from the function block parameters directly. After performing
Name Uploader, these values will be used as Object Name and
Description and shown in faceplate.

20
FUNCTION
Interaction Window

Class defines the process section or area in which alarms are grouped. By utilizing Class, the
alarms can be filtered. Valid values are 1 - 9999. Severity defines the alarm priority for general
alarms. Valid values are 1 - 1000 where 1000 is the highest priority.

Control Mode & Event


Enable Order is used to allow operator to give an order of certain
activity. The faceplate button will be enabled if it is activated (set
to 1).
Normal Mode defines the mode(s) where object shall be operated
normally. More than 1 mode can be assigned as normal mode
depending on how the object is used. By default, the normal
mode for PID01 is Auto, E1, E2 and E3.
Init Mode defines the initial mode of the object when cold
download is performed. Default init mode for PID01 is Manual.
Initial Position defines the initial values of AutoSP (for Auto init
mode) or ManOUT (for Man init mode) when cold download is
performed. If not enabled, initial position will be based on the
cold retain value.
Enable Event is used to allow the event message generated due to changes in status. External
Mode refers to mode changes by application while Operator Mode refers to mode changes by
operator from faceplate button. To enable event for selected message, press the button to
set the value to 1.

Interlock Setting
When Enable Event is activated (set to 1), changes in value of the
interlock will generate an event message.
Enabling the Opr Block (set to 1) will give operator the possibility to
override the interlock(s) from faceplate.
Interlock Setting can also be configured from Interlocks Display.

Unit & Range


Unit & Range covers minimum and maximum range, unit and
decimal number for MV/SP and Output.
Limit Control defines the High and Low Limit of SP and Output
operator can enter from faceplate when in Auto and Manual mode
respectively. It also defines the percentage value of changes for
SP (in Auto mode) and Output (in Man mode) when faceplate
button Dec or Inc is pressed.
Output limit can be selected to limit the input value of BalRef,
ClampRef and IBRef individually. By default, ClampRef is limited
by the output limit while BalRef and IBRef is limited by the output
range only.
Enabling Show Actuator Position will show the actuator value in the faceplate.

21
FUNCTION
Interaction Window

Alarm Setting
Four MV alarm limits can be configured, two
high limits and two low limits. Each alarm limit
has its own configuration and can be defined
individually.
AE Config can be set in 3 different ways:
0 = No Alarm or Event
1 = Alarm and Event
2 = Event only
If AE Config is set to 1, alarm will be generated
if the limit stays active longer than alarm delay
time. Otherwise, alarm will not be generated.
If Repeat Control is enabled (set to 1) and
AEConfig = 1, the number alarm on and off
repetitions without acknowledge is limited to 3.
The max limit can be adjusted from project
constant cRPCtrl. Note that changing this value will affect Repeat Control limit for all objects
in the project.
When MV Alarm Hysteresis in Percentage (%) is activated (set to 1), the hysteresis will be in
percentage and calculated against the range.
Similarly, there are two Control Deviation alarm limits, high limit and low limit. Note that the
control deviation value is in percentage as mentioned earlier. The other alarm limit is for
Actuator Deviation to monitor actuator/valve response.

Parameters
It covers the tuning parameter when external control is not used.

KPI
KPI measures PID’s performance, such normal mode ratio, alarm
ratio and rmsE value. Enable KPI Monitoring must be activated to
measure these performances.
Normal Mode ratio indicates the percentage of PID is in normal
control mode. Selection of normal mode is available from
interaction windows Control Mode & Order Block. The ratio is
calculated by comparing the duration of PID in normal mode to
the total duration since KPI is enabled or last reset. Higher normal mode ratio means PID was
frequently operated in the desired mode.

22
FUNCTION
Interaction Window

Alarm Active ratio indicates the percentage of PID is in alarm state. The ratio is calculated by
comparing the duration of PID in alarm state to the total duration since KPI is enabled or last
reset. Higher alarm active ratio means PID was frequently operated in the alarm state.
Root Means Square Error (rmsE) is used to indicate the performance of PID. Value is
accumulated for about an hour before stored as previous data and start to count again. rmsE
is only measured when PID is in Auto, E1 or E2 mode. The value will be reset when PID is not in
those mode and current value will be transferred as previous value. Lower rmsE value means
PID had perform better.
The formula below is used to calculate the rmsE:

∑ ( − )
=

These values can be reset to zero by pressing the Reset Counters button. Last Reset indicates
the date and time when the last reset is performed. If Reset has not been performed before,
the Last Reset will show 1979-12-31-00:00:00.000.

23
FUNCTION
Text Configuration

Text Configuration
Text Configuration aspect is used to define the text properties of the object, such as modes,
interlocks and info texts. It is accessible in the Control Structure. The length of each text
should not exceed more than 50 characters, except for modes name which is limited to 10
characters only.

24
OPERATOR FUNCTION

Process Display
PID01 has the following graphic elements which can be inserted into graphic displays.

Faceplate

Aspect Link
Icon Aspect View
Faceplate Documentation
Operator Note
Interlocks Display
Object Display
Object Trend Display

25
OPERATOR FUNCTION
Faceplate

Faceplate
Reduced Faceplate and Faceplate give basic information about the object. Extended
Faceplate gives more detailed information in tabs. Reduced Faceplate is the default view.

Reduced Faceplate Faceplate Extended Faceplate

Extended Tabs
Control 2
This tab shows the remote SP which will be used if control mode is
changed to E1, E2 or E3 mode. It also shows the last Manual Output
before an interlock occurred.

T Curve
Trim Curve is used to present value in the last 4 minutes period. It
contains 3 traces: MV (for Measured Value), WSP (for SP) and Out (for
Output).

26
OPERATOR FUNCTION
Faceplate

Limits 1
MV and Deviation alarm limit, hysteresis and alarm delay can be
defined in this tab. Alarm limit will be visible if configured as alarm &
event (indicated with AE) or event only (indicated with E). If alarm is
blocked, then it will be indicated with B.
When alarm limit is active, a red square indication is shown in front of
the limit. Alarm will be generated if the limit stays active for more than
the alarm delay time. It will be indicated with the blinking red square
indication if not acknowledged.
User with Tune permission can change the alarm limits, while repeat control, hysteresis and
alarm delay can be adjusted by user with Configure permission. Input field for alarm limit will
be disabled if the external control for the respective limit is active. If MV Alarm Hyst in
Percentage (%) is checked, then hysteresis entered is calculated as percentage of the range.

Limits 2
Setpoint and output limit can be defined in this tab. When limit is
active, a yellow square indication is shown in front of the limit. User
with Tune permission can change the output limits. Input field for limit
will be disabled if the external limitation is active.
Similar to MV alarm limits, the actuator deviation limit can be
configured here.

Parameters
Tuning parameter for PID01 can be configured here. User with Tune
permission can adjust these values. Direction can only be set from
function block. Input field will be enabled or disabled depending on the
controller type. Input field for limit will be disabled if the external
limitation is active.

Block
Checkbox Override Interlock will override all blockable interlocks. It is
enabled when at least one interlock is configured blockable.
Operator can block each MV/Dev/ActDev alarm limit individually or all
alarms by ticking on the checkbox. Checkbox Block All Alarms is
enabled when at least one of MV/Dev/ActDev limits or signal fault is
configured as alarm. Checkbox for blocking individual MV/Dev/ActDev
alarm limit is enabled when the respective MV/Dev/ActDev limit is
configured as alarm. It will be disabled when external control for the
respective MV/Dev/ActDev limit is activated.
Un-ticking checkbox Enable Object will bring the object to Out of Service mode.

27
OPERATOR FUNCTION
Faceplate

KPI
When KPI is enabled, Normal Mode ratio and Alarm Active ratio will be
shown. Otherwise, nothing will be visible.
Normal Mode ratio indicates the percentage of loop is in normal
control mode. Alarm Active ratio indicates the percentage of loop is in
alarm state. Current rmsE indicate the performance of PID now. Value
is accumulated for about an hour before stored as previous data and
start to count again.
These values can be reset by pressing the Reset Counter button. Last
Reset indicates the date and time when the last reset is performed. If Reset has not been
performed before, the Last Reset will not show any value.

Status
Status of the IO Signal of MV is shown in this tab. It also shows the
type of the device where the IO Signal is connected to.

Tracking
Tracking configuration for the setpoint is shown in this tab.

Info
Relevant information about the object can be entered here.

28
OPERATOR FUNCTION
Interlock Display

Interlock Display
Interlock Display shows the actual status of all interlocks. Operator can override individual
interlock or all interlocks which is blockable. Blockable, Start Interlock, Enable Event and
Interlock Texts are set with Configure permission.
Use Shift + Left click to enter the interlock text from this display. During normal operation, if
the first word in the interlock text contains object that can be found in the Control Structure,
the text will be indicated as button. Left click will call up the faceplate of the interlocking
object. If interlock text doesn’t contain any object, no button style will be indicated.

By default, it will call Reduced Faceplate. To change it, go to NLS Resource Manager for
Customization aspect from Library Structure > Preferences & Customizations > Pulp and
Paper Library Customization. Set the value of NLSID_FaceplateViewInterlockLink to
Faceplate or Extended as preferred.
When interlock is active, a yellow square indication will be shown in front of the interlock. When
operator blocks an interlock, a BX text indication will be shown. If the interlock is active, it will
be in red color. Otherwise it will be in yellow color.

29
OPERATOR FUNCTION
Object Display

Object Display
Object Display can be used to get the complete overview of the object. It has detailed
information of the MV value and range, setpoint value and range, output value and range,
alarm limit, ratio and output limitation, parameters and available control modes.

Object Trend Display


Values stored can be presented graphically in the form of curves in Object Trend Display
aspect. By default, PID01 presents 3 traces: MV, WSP and OutP. It uses the trend template PP
Library Control Object Trend in Library Structure.

30
OPERATOR FUNCTION
Alarm & Event

Alarm & Event

Alarm & Event List


All alarm & event list aspect is configured to follow the templates defined in PP Library Alarm
& Event List Configurations in Library Structure.

Alarm & Event Message


The Condition and Message Description text is stored in PPLib800xA AE aspect which has
NLS support. It can be found in Library Structure > Preferences & Customizations > Pulp and
Paper Library.
For interlock related alarm and event, it is possible for the Message Description to display the
actual interlock text. A unique AE Translator for PPLib aspect can be automatically populated
in each instance and contain the information of interlock text from Text Configuration aspect
by using PPLib800xA AE Uploader tool. If interlock text is changed, the uploader needs to be
run again.

31

You might also like